лаба 2(1)
.docxМинистерство образования и науки РФ
ФГБОУ ВО “Магнитогорский государственный технический университет имени Г.И.Носова”
Институт Энергетики и Автоматизированных Систем
Кафедра электроники и микроэлектроники
Лабораторная работа по дисциплине “Основы микропроцессорной техники”
«Исследование простейших команд, запуск и выполнение простых программ»
Выполнил: студент гр. АНб-14/1
Сагалаева Л.А.
Проверил: кандидат тех. наук Швидченко Н.В.
Магнитогорск 2016
Цель работы
Исследование выполнения отдельных команд и простых программ микропроцессора КР580ВМ80А.
Результаты выполнения заданий
1.Следовал указаниям задания для выполнения лабораторной работы №2 с пункта 1 по пункт 11.3
2.В таблице 1 приведены результаты выполнения программы 2.1 при записи по адресу 0803 команд, приведенных в п.3 задания для лабораторной работы с числом 3А записанным по адресу 0B00
Таблица 1
Число, записанное по адресу 0B00 |
Команда, записанная по адресу 0803 |
Число, записанное по адресу 0B01 |
3А |
CMA |
С5 |
3А |
INR A |
3b |
3А |
DCR A |
39 |
3А |
ADD A |
74 |
3А |
ANA A |
3А |
3А |
ORA A |
3А |
3А |
CMP A |
3А |
3А |
DAA |
40 |
В таблице 2 приведена измененная программа 2.2 по заданию п.5 позволяющая первоначально записывать число в ячейку памяти с адресом 0B00 число 3С
Таблица 2
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 000B |
LXI H, |
0B00 |
Записать в регистровую пару (HL) число 0B00 |
0803 |
36 3С |
MVI M, |
3С |
Записать число 3С в ячейку адрес, который указан в регистровой паре (HL) |
0805 |
7E |
MOV A, M |
|
Получить число из адреса, указанного в регистровой паре (HL) |
0806 |
2F |
CMA |
|
Инвертировать число в аккумуляторе |
0807 |
23 |
INX M |
|
Увеличить на 1 число в регистровой паре (HL) |
0808 |
77 |
MOV M, A |
|
Записать число по адресу, указанному в регистровой паре (HL) |
0809 |
FF |
RST 7 |
|
Прервать выполнение программы |
Следуя указаниям задания п.6 разработал программы по:
-
увеличением на 5 числа, записанного по адресу 0B00, и записи результата по адресу 0B01 (программа 2.3) таблица 3 с записью результатов выполнения программы с разными числами в ячейки памяти 0B00 таблица 4
-
сложения чисел, записанных по адресам 0B00 и 0BA0, и записи результата по адресу 0B01 (программа 2.4) таблица 5 с записью результатов выполнения программы с разными числами в ячейках памяти 0B00 и 0B0A таблица 6
-
сравнения чисел, записанных по адресам 0B00 и 0B01, и записи большего из них в регистр B (программа 2.5) таблица 7
Таблица 3
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 000B |
LXI H, |
0B00 |
Записать в регистровую пару (HL) число 0B00 |
0803 |
7E |
MOV A, M |
|
Получить число из адреса, указанного в регистровой паре (HL) |
0804 |
3C |
INR A |
|
Увеличение числа на 1 находящегося в аккумуляторе |
0805 |
3C |
INR A |
|
Увеличение числа на 1 находящегося в аккумуляторе |
0806 |
3C |
INR A |
|
Увеличение числа на 1 находящегося в аккумуляторе |
0807 |
3C |
INR A |
|
Увеличение числа на 1 находящегося в аккумуляторе |
0808 |
3C |
INR A |
|
Увеличение числа на 1 находящегося в аккумуляторе |
080B |
23 |
INX M |
|
Увеличить на 1 число в регистровой паре (HL) |
080C |
77 |
MOV M, A |
|
Записать число по адресу, указанному в регистровой паре (HL) |
080D |
FF |
RST 7 |
|
Прервать выполнение программы |
Таблица 4
Число, записанное по адресу 0B00 |
Число, записанное по адресу 0B01 |
00 |
05 |
35 |
3A |
64 |
69 |
72 |
77 |
Таблица 5
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 A00B |
LXI H, |
0B0A |
Записать в регистровую пару (HL) число 0B00 |
0803 |
7E |
MOV A, M |
|
Получить число из адреса, указанного в регистровой паре (HL) |
0804 |
21 000B |
LXI H, |
0B00 |
Записать в регистровую пару (HL) число 0B00 |
0807 |
86 |
ADD M |
|
Сложение числа из аккумулятора с число в памяти |
0808 |
23 |
INX M |
|
Увеличить на 1 число в регистровой паре (HL) |
0809 |
77 |
MOV M, A |
|
Записать число по адресу, указанному в регистровой паре (HL) |
080A |
FF |
RST 7 |
|
Прервать выполнение программы |
Таблица 6
Число, записанное по адресу 0B00 |
Число, записанное по адресу 0B0A |
Число, записанное по адресу 0B01 |
21 |
23 |
44 |
12 |
37 |
49 |
56 |
0A |
60 |
А3 |
5И |
FЕ |
Таблица 7
Адрес |
Машинный код |
Мнемоника команды |
Операнд |
Комментарий |
0800 |
21 000B |
LXI H, |
0B00 |
Записать в регистровую пару (HL) число 0B00 |
0803 |
7E |
MOV A, M |
|
Получить число из адреса, указанного в регистровой паре (HL) |
0804 |
23 |
INX M |
|
Увеличить на 1 число в регистровой паре (HL) |
0805 |
BE |
CMP M |
|
Сравнения числа в аккумуляторе и числа в ячейке памяти |
0808 |
D2 0D08 |
JNC |
080D |
Переход на ячейку если регистр Z не 0. |
080B |
46 |
MOV B, M |
|
Записать число в регистр B, из памяти |
080C |
FF |
RST 7 |
|
Прервать выполнение программы |
080D |
47 |
MOV B, A |
|
Записать число в регистр B, из аккумулятора |
080E |
FF |
RST 7 |
|
Прервать программу |