Порівняльний аналіз кодів та данних програм, що створюються системами програмування різних рівнів Паскаль і Асемблер (Звіт з лабораторної роботи № 1), страница 2

Аналіз коду транслятора Pascal

0B96:001F 9A0000110C    CALL      0C11:0000                                    ; clrscr ();           

0B96:0024 9A0D00AE0B    CALL    0BAE:000D                         

0B96:0029 55            PUSH               BP                                

0B96:002A 89E5          MOV             BP,SP                             

0B96:002C B80200        MOV           AX,0002                           

0B96:002F 9ACD02110C    CALL    0C11:02CD                         

0B96:0034 83EC02        SUB             SP,+02                            

0B96:0037 9AD701AE0B    CALL    0BAE:01D7                         

0B96:003C 31C0          XOR              AX,AX                             

0B96:003E A37C00        MOV          [007C],AX                         

0B96:0041 BF9601        MOV           DI,0196                           

0B96:0044 1E            PUSH               DS                                

0B96:0045 57            PUSH               DI                                

0B96:0046 BF0000        MOV           DI,0000                                

0B96:0049 0E            PUSH               CS                                

0B96:004A 57            PUSH              DI                                

0B96:004B 31C0          XOR              AX,AX                             

0B96:004D 50            PUSH              AX                                 

0B96:004E 9A0107110C    CALL     0C11:0701                                 writeln (Введіть масив);   

0B96:0053 9ADD05110C    CALL    0C11:05DD                         

0B96:0058 9A9102110C    CALL      0C11:0291                         

0B96:005D C7067E001111  MOV   WORD PTR [007E],1111              

0B96:0063 31C0          XOR              AX,AX                             

0B96:0065 A37A00        MOV          [007A],AX                           for i:=0                    

0B96:0068 EB04          JMP               006E                               

0B96:006A FF067A00      INC           WORD PTR [007A]                

0B96:006E BF9600        MOV           DI,0096                           

0B96:0071 1E            PUSH               DS                                

0B96:0072 57            PUSH               DI                                 

0B96:0073 9A2D07110C    CALL     0C11:072D                          readln (a[i]);               

0B96:0078 8B3E7A00      MOV        DI,[007A]                         

0B96:007C D1E7          SHL              DI,1                              

0B96:007E 89855200      MOV          [DI+0052],AX                      

0B96:0082 9A9D05110C    CALL     0C11:059D                         

0B96:0087 9A9102110C    CALL      0C11:0291                         

0B96:008C 833E7A0009    CMP       WORD PTR [007A],+09          i<10     

0B96:0091 75D7          JNZ 006A                              

0B96:0093 C7067E002222  MOV    WORD PTR [007E],2222              

0B96:0099 31C0          XOR              AX,AX                             

0B96:009B A37A00        MOV          [007A],AX                                for i:=0            

0B96:009E EB04          JMP               00A4                              

0B96:00A0 FF067A00      INC           WORD PTR [007A]                   

0B96:00A4 A17A00        MOV          AX,[007A]                                                    

0B96:0099 31C0          XOR              AX,AX                             

0B96:009B A37A00        MOV          [007A],AX                         

0B96:009E EB04          JMP               00A4                              

0B96:00A0 FF067A00      INC           WORD PTR [007A]                   

0B96:00A4 A17A00        MOV          AX,[007A]                         

0B96:00A7 D1E0          SHL              AX,1                              

0B96:00A9 40            INC   AX                                

0B96:00AA 8BF8          MOV            DI,AX                             

0B96:00AC D1E7          SHL             DI,1                              

0B96:00AE 8B955200      MOV        DX,[DI+0052]                      

0B96:00B2 A17A00        MOV          AX,[007A]                         

0B96:00B5 D1E0          SHL              AX,1                              

0B96:00B7 8BF8          MOV             DI,AX                             

0B96:00B9 D1E7          SHL              DI,1                              

0B96:00BB 8B855200      MOV        AX,[DI+0052]                      

0B96:00BF 3BC2          CMP             AX,DX                             

0B96:00C1 7515          JNZ 00D8                                   if (a[i]=a[i+1])      

0B96:00C3 A17A00        MOV          AX,[007A]