лабораторные работы / Цель работы 1
.docЦель работы: изучение способов организации и исследования программ сложения и вычитания.
Выполнение работы
Задание 1: Заполнить таблицу команд. Проверить правильность заполнения на учебном микропроцессорном комплекте.
Программа 1:
Адрес |
Машинный код |
Мнемокод |
Комментарий |
0800 |
21 |
LXI H |
Запись в регистры H, L адреса младшего байта первого слагаемого |
0801 |
30 |
||
0802 |
0B |
||
0803 |
0E |
MVI C, 05 |
Загрузить в регистр C количество слагаемых |
0804 |
05 |
||
0805 |
A7 |
ANA A |
Сброс флага C |
0806 |
11 |
LXI D,0B00 |
Запись в регистры D,E адреса младшего байта слагаемого |
0807 |
00 |
||
0808 |
0B |
||
0809 |
7E |
MOV A,M |
Косвенная загрузка аккумулятора по регистровой паре HL |
080A |
47 |
MOV B,A |
Пересылка значения аккумулятора в регистр B |
080B |
1A |
LDAX D |
Косвенная загрузка аккумулятора по регистровой паре DE |
080C |
88 |
ADC B |
Сложение с учетом флага переноса |
080D |
77 |
MOV M,A |
Запись в память |
080E |
23 |
INX H |
Инкремент адреса байта первого слагаемого |
080F |
13 |
INX D |
Инкремент адреса байта второго слагаемого |
0810 |
0D |
DCR C |
Уменьшение числа слагаемых |
0811 |
C2 |
JNZ SUM |
|
0812 |
09 |
||
0813 |
08 |
||
0814 |
C9 |
RET |
|
Программа нахождения разности чисел, имеющих одинаковую длину.
Программа 2:
Адрес |
Машинный код |
Мнемокод |
Комментарий |
0800 |
21 |
LXI H, 0B00 |
Запись в регистры H, L адреса младшего байта вычитаемого |
0801 |
00 |
||
0802 |
0B |
||
0803 |
11 |
LXI D,0B30 |
Запись в регистры D, E адреса младшего байта уменьшаемого |
0804 |
30 |
||
0805 |
0B |
||
0806 |
0E |
MVI C,05 |
Загрузить в регистр C количество байт |
0807 |
05 |
|
|
0808 |
CD |
CALL SUBB |
Вызов подпрограммы вычитания |
0809 |
0C |
|
|
080A |
08 |
|
|
080B |
CF |
RST1 |
|
080C |
A7 |
ANA A |
Сброс флага C |
080D |
7E |
MOV A,M |
Косвенная загрузка аккумулятора по регистровой паре HL |
080E |
47 |
MOV B,A |
Пересылка значения аккумулятора в регистр B |
080F |
1A |
LDAX D |
Косвенная загрузка аккумулятора по регистровой паре DE |
0810 |
98 |
SBB B |
Вычитание с переносом |
0811 |
77 |
MOV M,A |
Запись в память |
0812 |
23 |
INX H |
Следующий байт вычитаемого |
0813 |
13 |
INXD |
Следующий байт уменьшаемого |
0814 |
0D |
DCR D |
|
0815 |
C2 |
JNZ LABEL |
|
0816 |
0D |
|
|
0817 |
08 |
|
|
0818 |
C9 |
RET |
|
Вывод: в ходе выполнения данной лабораторной работы были изучены способы сложения и вычитания двух чисел.