|
КубГТУ, Дубенко, ассемблер 3 лаба. ЛР_3. Отчёт по лабораторной работе 3 по дисциплине Языки ассемблера исследование работы команд сложения и вычитания микропроцессора
В конце работы программы, получено число 1450
| ax
| bx
| cx
| dx
| si
| di
| bp
| sp
| ds
| es
| ss
| cs
| ip
| До команды
| 0000
| 0000
| 0000
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 0000
| mov ax,087C
| 0000
|
|
|
|
|
|
|
0100
|
0869
|
0869
|
087D
|
0879
| 0000
| Mov ds,ax
| 087C
|
|
|
|
|
|
| 0003
| Xor bx,bx
| 087C
|
|
|
|
|
|
| 0005
| Mov cx,0003
| 087C
|
|
|
|
|
|
| 0007
| Mov al,[bx]
| 087C
|
| 0003
|
|
|
|
| 000A
| Adc al,[bx+0003]
| 0808
|
| 0003
|
|
|
|
| 000E
| aaa
| 080A
|
| 0003
|
|
|
|
| 0012
| Mov [bx+0006],al
| 0900
|
| 0003
|
|
|
|
| 0013
| Inc bx
| 0900
|
| 0003
|
|
|
|
| 0017
| Loop 000A
| 0900
| 0001
| 0003
|
|
|
|
| 0018
| Mov al,[bx]
| 0900
| 0001
| 0002
|
|
|
|
| 000A
| Adc al,[bx+0003]
| 0908
| 0001
| 0002
|
|
|
|
| 000E
| aaa
| 090F
| 0001
| 0002
|
|
|
|
| 0012
| Mov [bx+0006],al
| 0A05
| 0001
| 0002
|
|
|
|
| 0013
| Inc bx
| 0A05
| 0001
| 0002
|
|
|
|
| 0017
| Loop 000A
| 0A05
| 0002
| 0002
|
|
|
|
| 0018
| Mov al,[bx]
| 0A05
| 0002
| 0001
|
|
|
|
| 000A
| Adc al,[bx+0003]
| 0A07
| 0002
| 0001
|
|
|
|
| 000E
| aaa
| 0A0E
| 0002
| 0001
|
|
|
|
| 0012
| Mov [bx+0006],al
| 0B04
| 0002
| 0001
|
|
|
|
| 0013
| Inc bx
| 0B04
| 0002
| 0001
|
|
|
|
| 0017
| Loop 000A
| 0B04
| 0003
| 0001
|
|
|
|
| 0018
| Adc sum[bx],0
| 0B04
| 0003
| 0000
|
|
|
|
| 001A
| Mov ax,400C
| 0B04
| 0003
| 0000
|
|
|
|
| 001F
| Int 21
| 400C
| 0003
| 0000
|
|
|
|
| 0022
| В программе l39_2 производится вычитание неупакованных bcd-чисел 164 - 988. В итоге будет получен модуль разности.
Листинг l39_2
В конце работы программы, получено число 824
| ax
| bx
| cx
| dx
| si
| di
| bp
| sp
| ds
| es
| ss
| cs
| ip
| До команды
| 0000
| 0000
| 0000
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 0
| 0000
| mov ax, 087C
|
|
|
|
|
|
|
|
0100
|
0869
|
0869
|
087D
|
0879
| 0000
| Mov ds,ax
| 087C
|
|
|
|
|
|
| 0003
| Xor ax,ax
| 087C
|
|
|
|
|
|
| 0005
| Xor bx,bx
| 0000
|
|
|
|
|
|
| 0007
| Mov cx,0003
| 0000
|
|
|
|
|
|
| 0009
| Mov al,[bx]
| 0000
|
| 0003
|
|
|
|
| 000C
| Sbb al,[bx+0003]
| 0008
|
| 0003
|
|
|
|
| 0010
| aas
| 0004
|
| 0003
|
|
|
|
| 0014
| Mov [bx+0006],al
| 0004
|
| 0003
|
|
|
|
| 0015
| Inc bx
| 0004
|
| 0003
|
|
|
|
| 0019
| Loop 000C
| 0004
| 0001
| 0003
|
|
|
|
| 001A
| Mov al,[bx]
| 0004
| 0001
| 0002
|
|
|
|
| 000C
| Sbb al,[bx+0003]
| 0008
| 0001
| 0002
|
|
|
|
| 0010
| aas
| 0002
| 0001
| 0002
|
|
|
|
| 0014
| Mov [bx+0006],al
| 0002
| 0001
| 0002
|
|
|
|
| 0015
| Inc bx
| 0002
| 0001
| 0002
|
|
|
|
| 0019
| Loop 000C
| 0002
| 0002
| 0002
|
|
|
|
| 001A
| Mov al,[bx]
| 0002
| 0002
| 0001
|
|
|
|
| 000C
| Sbb al,[bx+0003]
| 0009
| 0002
| 0001
|
|
|
|
| 0010
| aas
| 0008
| 0002
| 0001
|
|
|
|
| 0014
| Mov [bx+0006],al
| 0008
| 0002
| 0001
|
|
|
|
| 0015
| Inc bx
| 0008
| 0002
| 0001
|
|
|
|
| 0019
| Loop 000C
| 0008
| 0003
| 0001
|
|
|
|
| 001A
| Mov ax,400C
| 0008
| 0003
| 0000
|
|
|
|
| 001C
| Int 21
| 400C
| 0003
| 0000
|
|
|
|
| 001F
| В программе l39_3 производится сложение упакованных bcd-чисел 3910 + 3165. В итоге будет получен модуль разности.
Листинг l39_3
|
|
|