 
        
        Лабы по МПО / Sissy_Metr / 1refait
.docМетрические характеристики
Операторы
| № | Оператор | f1j | 
| 1 | If then | 1 | 
| 2 | := | 20 | 
| 3 | for to do | 10 | 
| 4 | Writeln | 5 | 
| 5 | get_data(x, y, nrow , ncol); | 1 | 
| 6 | square(x ,y ,a ,g ,nrow ,ncol); | 1 | 
| 7 | write_data(); | 1 | 
Операнды
| № | Операнд | f1i | 
| 1 | rmax | 3 | 
| 2 | cmax | 5 | 
| 3 | ncol | 12 | 
| 4 | nrow | 11 | 
| 5 | y | 8 | 
| 6 | g | 5 | 
| 7 | a | 3 | 
| 8 | x | 9 | 
| 9 | i | 21 | 
| 10 | j | 9 | 
| 11 | k | 14 | 
| 12 | 0 | 1 | 
| 13 | l | 9 | 
| 14 | 5 | 2 | 
| 15 | 2 | 4 | 
- 
Число простых операторов ŋ1= 7 
- 
Общее число всех операторов N1= 39 
- 
Число простых операндов ŋ 2= 15 
- 
Общее число всех операторов N2=116 
- 
Словарь ŋ=ŋ1+ŋ2=7+15=22 
- 
Опытная (экспериментальная) длина Nэ=N1+N2=39+116=155 
- 
Теоретическая длина программы NТ = ŋ1log2 ŋ1+ŋ2 log2 ŋ2= 7log27+15log215= 
= 7 * 2.8 + 15 * 3.9= 78.25
| Nэ - NТ|/ Nэ *100% =49.51%
- 
Объем V=Nэlog2ŋ = 155log222=155*5.24=691.21 
- 
Потенциальный объем V*=Nlog2ŋ =(ŋ 1* +ŋ 2*)log2 (ŋ 1* + ŋ 2*)=(3 + 10) log2(3 +10)=13* log213=13*3.7=48.1 
- 
Граничный объем Vгр=(ŋ 1*log2ŋ 1*+ŋ 2*log2ŋ 2* ) log2(ŋ 2* + ŋ 1*)= (3*log23+10*log210) log2(3 + 10) = 140.5040 
- 
Уровень программы L=V*/V=48.1/1826.55 = 0.05764 
- 
Сложность программы S=1/L=1/0,0043=17.34 
- 
Оценка уровня программы L^=2/ ŋ1 * ŋ2/N2=2/7*15/116=0.03694 
- 
Информационное (интеллектуальное) содержание программы 
I=2ŋ2 /ŋ1N2 *(N1 +N2) log2 (ŋ 1+ ŋ2) = 2 * 15 / (7 * 116 ) * ( 39+116)log222
= 119.91
- 
Работа по программированию E=Nlog2 ŋ/L = V2 /V*=9932.87 
- 
Время программирования Tпр =E/S =9932.87/17.34=572.82 
- 
Уровень языка программирования λ= V**L=48.1* 0.05764=2.77 
- 
Ожидаемое число ошибок B=E/E0*k= 
Метрические характеристики
Операторы
| № | Оператор | f1j | 
| 1 | {}() | 11 | 
| 2 | = | 22 | 
| 3 | if else | 1 | 
| 4 | ++ | 10 | 
| 5 | != | 1 | 
| 6 | for | 10 | 
| 7 | get_data(x,y,nrow,ncol); | 1 | 
| 8 | square(x,y,a,g,nrow,ncol); | 1 | 
| 9 | write_data(); | 1 | 
Операнды
| № | Операнд | f1i | 
| 1 | rmax | 3 | 
| 2 | cmax | 5 | 
| 3 | ncol | 11 | 
| 4 | nrow | 10 | 
| 5 | y | 7 | 
| 6 | g | 6 | 
| 7 | a | 8 | 
| 8 | x | 11 | 
| 9 | i | 29 | 
| 10 | j | 13 | 
| 11 | s | 3 | 
| 12 | k | 16 | 
| 13 | l | 11 | 
| 14 | 0 | 12 | 
| 15 | l | 4 | 
| 16 | 5 | 2 | 
| 17 | 2 | 3 | 
1.Число простых операторов ŋ1= 9
2.Общее число всех операторов N1= 58
3.Число простых операндов ŋ 2= 17
4.Общее число всех операторов N2=124
5.Словарь ŋ=ŋ1+ŋ2=9+17=26
6.Опытная (экспериментальная) длина Nэ=N1+N2=58+124=182
7.Теоретическая длина программы NТ = ŋ1log2 ŋ1+ŋ2 log2 ŋ2= 9log29+17log217= 98.009
| Nэ - NТ|/ Nэ *100% =46.14%
8.Объем V=Nэlog2ŋ =182log226=855.48
- 
9.Потенциальный объем V*=Nlog2ŋ =(ŋ 1* +ŋ 2*)log2 (ŋ 1* + ŋ 2*)= (3 + 10) log2(3 +10)=13* log213=13*3.7=48.1 
10.Граничный объем
Vгр= (ŋ 1*log2ŋ 1*+ŋ 2*log2ŋ 2* ) log2(ŋ 2* + ŋ 1*)= (3*log23+10*log210) log2(3+10) = 140.5040
11.Уровень программы L=V*/V=48.1/2151.15=0,3423
12.Сложность программы S=1/L=1/0,0043=2.921
13.Оценка уровня программы L^=2/ ŋ1 * ŋ2/N2=2/9*17/124=0.05920
14.Информационное (интеллектуальное) содержание программы
I=2ŋ2 /ŋ1N2 *(N1 +N2) log2 (ŋ 1+ ŋ2) = 2 * 17 / (9 * 124 ) * ( 39+124)log226= 26.063
15.Работа по программированию E=N log2 ŋ/L = V2 /V*=15215.09
16. Время программирования Tпр=E/S = 15215.09/2.921=5208.86
- 
17.Уровень языка программирования λ= V**L=48.1*0,3423 =16.480 
17. Ожидаемое число ошибок B=E/E0*k=
Метрические характеристики
Операторы
| № | Оператор | f1j | 
| 1 | shl | 20 | 
| 2 | cl | 39 | 
| 3 | dup | 6 | 
| 4 | call | 5 | 
| 5 | word ptr | 3 | 
| 6 | Fstp | 10 | 
| 7 | Push | 50 | 
| 8 | Pop | 32 | 
| 9 | Mov | 136 | 
| 10 | Fmul | 3 | 
| 11 | jg@1@142 | 1 | 
| 12 | jle@1@226 | 1 | 
| 13 | jl@2@366 | 1 | 
| 14 | jl@2@142 | 1 | 
| 15 | jl@3@366 | 1 | 
| 16 | jge@2@226 | 1 | 
| 17 | jge@3@198 | 1 | 
| 18 | jge@3@254 | 1 | 
| 19 | jge@3@422 | 1 | 
| 20 | jge@2@450 | 5 | 
| 21 | fadd | 2 | 
| 22 | Jmp @1@226 | 3 | 
| 23 | Jmp @1@58 | 1 | 
| 24 | Jmp @2@58 | 1 | 
| 25 | Jmp @@7 | 1 | 
| 26 | Jmp @2@282 | 1 | 
| 27 | Jmp @2@450 | 1 | 
| 28 | Jmp @@8 | 1 | 
| 29 | Jmp @3@58 | 1 | 
| 30 | Jmp @3@86 | 1 | 
| 31 | Jmp @3@198 | 1 | 
| 32 | Jmp @3@254 | 1 | 
| 33 | Jmp @@10 | 1 | 
| 34 | Jmp @3@422 | 1 | 
| 35 | Sub | 3 | 
| 36 | Xor | 9 | 
| 37 | Fwait | 10 | 
| 38 | Proc | 6 | 
| 39 | Add | 38 | 
| 40 | Fadd | 2 | 
| 41 | Fld | 8 | 
| 42 | Ret | 6 | 
| 43 | Cmp | 11 | 
| 44 | Inc | 11 | 
| 45 | Fild | 2 | 
| 46 | Short | 13 | 
| 47 | Offset | 24 | 
| 48 | Imul | 13 | 
| 49 | Dec | 1 | 
Операнды
| № | Операнд | f1i | 
| 1 | ax | 138 | 
| 2 | Sp | 23 | 
| 3 | word ptr [bp+8] | 7 | 
| 4 | word ptr [bp-10] | 4 | 
| 5 | word ptr [bp+4] | 8 | 
| 6 | word ptr [bp-4] | 4 | 
| 7 | word ptr [bp-2] | 12 | 
| 8 | word ptr [bp+12] | 2 | 
| 9 | word ptr [bx] | 24 | 
| 10 | word ptr [bx+2] | 3 | 
| 11 | word ptr [bp+6] | 1 | 
| 12 | word ptr [bp+10] | 5 | 
| 13 | si | 53 | 
| 14 | di | 33 | 
| 15 | _nrow | 5 | 
| 16 | _ncol | 7 | 
| 17 | bx | 52 | 
| 18 | dx | 32 | 
| 19 | _x | 2 | 
| 20 | _y | 2 | 
| 21 | _a | 2 | 
| 22 | _g | 2 | 
| 23 | _main | 3 | 
| 24 | 0 | 12 | 
| 25 | 6 | 5 | 
| 26 | 10 | 17 | 
| 27 | 20 | 15 | 
| 28 | 16256 | 1 | 
| 29 | 100 | 2 | 
| 30 | 1 | 2 | 
| 31 | 2 | 107 | 
| 32 | 4 | 30 | 
1.Число простых операторов ŋ1= 49
2.Общее число всех операторов N1= 412
3.Число простых операндов ŋ 2= 32
4.Общее число всех операторов N2=582
5.Словарь ŋ=ŋ1+ŋ2=49+32=81
6.Опытная (экспериментальная) длина Nэ=N1+N2=492+615=994
7.Теоретическая длина программы
NТ = ŋ1log2 ŋ1+ŋ2 log2 ŋ2= 49log249+32log232 =435.38
| Nэ - NТ|/ Nэ *100% =56.19%
8.Объем V=Nэlog2ŋ =1750log2117= 6301.81
9.Потенциальный объем
V*=Nlog2ŋ =(ŋ 1* +ŋ 2*)log2 (ŋ 1* + ŋ 2*)= (6 + 7) log2(6 +7)=13* log25=13*3.7=48.10
10.Граничный объем
Vгр= (ŋ 1*log2ŋ 1*+ŋ 2*log2ŋ 2* ) log2(ŋ 2* + ŋ 1*)= (3*log23+10*log210) log2(3+10) = 140.5040
11.Уровень программы L=V*/V=48.1/6301.81= 0.0076
12.Сложность программы S=1/L=1/0,0043=131.0147
13.Оценка уровня программы L^=2/ ŋ1 * ŋ2/N2 = 2/49*32/582=6.5437
14.Информационное (интеллектуальное) содержание программы
I=2ŋ2 /ŋ1N2 *(N1 +N2) log2 (ŋ 1+ ŋ2) = 2 * 32 / (49 * 582 ) * ( 412 + 582)log281=33956.144
15.Работа по программированию E=Nlog2 ŋ/L = V2 /V*=6301.812 /48.1= 825630.130
16. Время программирования Tпр=E/S =48.10
17.Уровень языка программирования λ= V**L=48.1*6.5437=314.75
18. Ожидаемое число ошибок B=E/E0*k=
Выводы: программа автоматизации расчета работает неверно: ошибки при подсчете операторов и неправильно происходит выбор операторов: const, и типы данных не являются операторами.
