Лабораторна робота № 1. b> p>
b> p>
Тема: b> Навчання роботі на УМК. b> p>
Мета: b> Навчитися працювати на УМК. b> p>
Прилади: b> Навчальний мікропроцесорний комплекс (УМК). b> p>
Хід роботи. b> p>
Панель приладу: b> p>
У лівій частині розташовані функціональні клавіші. За кожною клавішею закріплена певна функція системної програми МОНІТОР. На них
вигравірувані відповідні ідентифікатори функції: p>
П b> - перегляд і модифікація вмісту комірки пам'яті; p>
РГ b> - перегляд і модифікація вмісту комірки регістрів; p>
СТ b> - старт програми; p>
КС b> - підрахунок контролю суми; p>
ЗК b> - заповнення масиву пам'яті константою; p>
ПМ b> - переміщення масиву пам'яті; p>
- роздільник; p>
ВП b> - виконати.
Перша частина клавіш призначена для введення параметрів у шістнадцятковій формі. У
Надалі передбачено, що всі вводяться і виводяться дані мають шістнадцятковий формат. На них викарбувані символи: 0, 1, 2, 3, 4, 5, 6, 7,
8, 9, А, В, С, D, Е, F. Крім цього на клавішах 4, 5, 6, 7, 8, 9, під
цифрами вигравірувані ідентифікатори регістрів мікропроцесора. p>
РН b> - ст. байт лічильника команд; p>
Р b> L b> - мол. байт лічильника команд; p>
SH b> - ст. байт покажчика стека; p>
SL b> - мол. байт покажчика стека; p>
Н b> - регістр Н; p>
L b> - регістр L; p>
Для ідентифікації інших регістрів мікропроцесора використовуються клавіші: p>
А b> - регістр А; p>
В b> - регістр В; p>
С b> - регістр С; p>
D b> - регістр D; p>
E b> - регістр Е; p>
F b> - регістр ознак; p>
Кнопка включення (виключення) УМК МЕРЕЖА розташована в лівій нижній частині лицьового
панелі. На самій кнопці вигравіруваний символ «~». Ця кнопка служить для включення (натискання стан
кнопки) або вимкнути (віджатою стан кнопки) УМК. p>
Кнопка скидання розташована в правій середній частині лицьовій панелі УМК. На кнопці вигравірувано
Сб Ця кнопка служить для ініціалізації системної програми МОНІТОР, і в лівій позиції шестісігментного дисплея з'являється символ «-«. УМК готовий до прийому
команд. p>
Управління покроковим режимом роботи УМК проводиться за допомогою кнопок, на яких викарбувані написи: РБ/ШГ, КМ/ЦК і ШГ. За допомогою цих кнопок може бути встановлений
один з двох режимів роботи УМК по кроках. Перший режим - командний. Для встановлення цього режиму натиснути кнопку РБ/ШГ (вона залишиться в натиснутому стані). P>
Для виконання команд необхідно натиснути кнопку ШГ. Кожне натискання кнопки ШГ викличе виконання поточної команди. При цьому на
світлодіодах індикації стану шин даних, адреси і керуючих сигналів, розташованих в центрі лицьовій панелі УМК, будуть висвітлюватися двійковому коді,
(кожен світлодіод відображає відповідний розряд), відповідно адресу та код виконаної команди, а також керуючі сигнали мікропроцесора. p>
p>
b> p>
Лабораторна робота № 2. b> p>
b> p>
Тема: Вивчення роботи УМК в покроковому режимі. b> p>
Мета: Навчитися працювати на УМК в покроковому режимі. b> p>
Хід роботи: b> p>
Завдання: b> p>
Для послідовності команд запишіть машинні коди. b> p>
b> p>
Команда b>
ША b>
ШД b>
№ кроку b>
LXI B, 940H b>
800 b>
801 b>
802 b>
01 b>
40 b>
09 b>
0 b>
1 b>
2 b>
LXI D, 960H b>
803 b>
804 b>
805 b>
11 b>
60 b>
09 b>
3 b>
4 b>
5 b>
MYI L, 10H b>
806 b>
807 b>
2E b>
10 b>
6 b>
7 b>
LDAX B b>
808 b>
940 b>
0A b>
3D b>
8 b>
9 b>
STAX D b>
809 b>
960 b>
12 b>
3D b>
10 b>
11 b>
INX B b>
80A b>
03 b>
12 b>
INX D b>
80B b>
13 b>
13 b>
DCR L b>
80C b>
2D b>
14 b>
JMP 800H b>
80D b>
80E b>
80F b>
C3 b>
00 b>
08 b>
15 b>
16 b>
17 b>
b> p>
Завдання: b> p>
Записати наступні команди коди для послідовності
команд: b> p>
Команда b>
ША b>
ШД b>
№ кроку b>
LXI H, 900H b>
800 b>
21 b>
0 b>
LXI B, 920H b>
803 b>
01 b>
1 b>
LXI D, 940H b>
806 b>
11 b>
2 b>
LDAX B b>
809 b>
0A b>
3 b>
SUB M b>
80A b>
96 b>
4 b>
STA 950H b>
80B b>
32 b>
5 b>
LDAX D b>
80E b>
1A b>
6 b>
ANA M b>
80F b>
A6 b>
7 b>
RAL b>
810 b>
17 b>
8 b>
STA 951H b>
811 b>
32 b>
9 b>
LDA 950H b>
814 b>
3A b>
10 b>
MOV L, A b>
817 b>
6F b>
11 b>
LDA 951H b>
818 b>
3A b>
12 b>
MOY H, A b>
81B b>
67 b>
13 b>
SHCH 952H b>
81C b>
22 b>
14 b>
JMP 800H b>
81F b>
C3 b>
15 b>
b> p>
Лабораторна робота № 3. b> p>
b> p>
Тема: b> b> Регістри мікропроцесора. Команди завантаження регістрів. P>
Команди пересилання. p>
Мета: b> Вивчити регістри мікропроцесора, команди завантаження
і команди пересилання. p>
Хід роботи
MOV рег1, рег2 b> - команда пересилання, ця команда здійснює пересилання з рег2 b> у регістр рег1. b> p>
MVI рег, знач b> - команда завантаження регістра, ця команда завантажує значення знач b> у регістр рег b>. p>
800 MVI A, 00H 2E00 p>
802 MVI B, 01H 0601 p>
804 MVI C, 02H 0E02 p>
806 MVI D, 03H 1603 p>
808 MVI E, 04H 1E04 p>
80A MVI H, 05H 2605 p>
80C MVI C, 06H 2E06 p>
800 MOV A, FFH 3EFF p>
802 MOV B, A 47 p>
804 MOV C, B 48 p>
806 MOV D, C 51 p>
808 MOV E, D 5A p>
80A MOV H, E 63 p>
80C MOV L, H 6C p>
B) p>
800 MVI B, BBH 06BB p>
801 MVI C, CCH 0ECC
802 MVI D, DDH 16DD p>
803 MVI E, EEH 1EEE p>
804 MVI H, 12H 2612 p>
805 MVI L, 34H 2E34 p>
806 MVI A, AAH 3EAA p>
800 LXI B, BBCCH 01CCBB p>
803 LXI D, DDEEH 11EEDD p>
806 LXI H, 1234H 213412 p>
800 LXI B, 3132H
0132H
803 LXI D, 3334H
113433
806 LXI H, 3636H 213635 p>
b> p>
Лабораторна робота № b> 4 b> . b> p>
b> p>
Тема: b> b> Методи адресації пам'яті. Команди роботи з пам'яттю. P>
Мета: b> Вивчити методи адресації пам'яті та команди роботи з
ними. p>
Хід роботи
800 MVI A, 00 p>
801 STA 900 p>
802 MVI A, 01 p>
803 STA 905 p>
804 MVI A, 02 p>
805 STA 90C p>
800 MVI A, 00 p>
801 STA 900 p>
802 LDA 900 p>
803 MOV B, S p>
800 LXI H, 3231 p>
802 SHLD 920 p>
804 LHLD 920 p>
806 MOV H, B p>
808 MOV L, C p>
800 LXI H 32,31 p>
802 SHLD 920 p>
800 LXI H, 0100 p>
803 SHLD 940 p>
805 MVI A, 03 p>
807 STA 943 p>
800 MVI A, 00 p>
801 STA 900 p>
802 LDA 900 p>
803 MOV B, A p>
b> p>
Лабораторна робота № 5. b> p>
b> p>
Тема: b> Арифметичні команди. p>
Хід роботи. b> p>
Записати в пам'ять, починаючи з адреси 800Н, коди програми реалізації: p>
A = A + B + M +1
800 MVI A,
00 3E00
802 MVI B,
02 06 02 A = 56
804 ADD B 80 F = 0,6 p>
805 LXI H, 900 210009 p>
808 MVI M, 03 3603 p>
80A ADD M 86 p>
80B ADI 1 C601 p>
p>
p>
p>
p>
p>
C = 0 - не виникає переповнення p>
Р = 1 - кількість одиниць у байті, парне p>
Ас = 0 - не виникає перенесення p>
Z = 0 - результат виконання операції не дорівнює нулю p>
S = 0 - результат операції позитивний p>
НL = DE + BC p>
Записати в пам'ять, починаючи з адреси 800Н, коди програми складання шестнадцатіразрядних
чисел, використовуючи команди восьмирозрядного складання: p>
НL
= DE + BC p>
800 MVI C, 01
802 MOV A, C p>
803 MVI E, 02 p>
805 ADD E p>
806 MOV L, A p>
807 MVI B, 02 p>
808 MOV A, B p>
80A MVI D, 04 p>
80C ADD D p>
80D MOV H, A p>
Написати і виконати програму реалізовує: C = D + E. p>
MVI D, FF
MVI E, 01 p>
MOV A, D p>
ADD E p>
MOV C, A p>
Написати і виконати програму складання двох елементів пам'яті: M1 = M2 + M3. p>
LXI M, 901H
MVI M2, 01 p>
MOV A, M2
LXI H, 902H p>
MVI M3, 02
ADD M3
LXI H, 900H p>
MVI M1, A p>
Написати і виконати програму складання: HL = BC + E 4000 H p>
MVI C, 01
MOV A, C p>
MVI E, 02 p>
ADD E p>
ADI 00 p>
MOV L, A p>
MVI B, 03 p>
MOV A, 0
ADI 40 p>
MOV H, A
Команди віднімання восьмирозрядних чисел b>. p>
Записати в пам'ять, починаючи з адреси 800Н, коди програми реалізує: p>
A = A - B - M - I
MVI A, 01
MVI B, 01 p>
SUB B p>
LXI 900H p>
MVI M, 00 p>
SUB M
SBI 01
Записати в пам'ять, починаючи з адреси 800Н, коди програми 16 - ти розрядних чисел: HL = DE - BC. p>
MVI E, FC
MOV A, E p>
MVI C, F0 p>
SUB C p>
MOV L, A p>
MVI B, 0F p>
MVI D, FF p>
MOV A, D p>
SUB B p>
MOV A, H p>
Написати і виконати програму віднімання двох комірок пам'яті: M1 = M2 - M3. p>
LXI H, 901H
MVI M2, 01
MOV A, M2 p>
LXI H, 902H
MVI M3, 02 p>
SUB M3 p>
LXI H, 900
MVI M1, A p>
Написати і виконати програму віднімання: HL = BC - I - 0FFFH p>
MVI C, 01
MOV A, C p>
MVI I, 02 p>
SUB I p>
SVI FF p>
MOV L, A p>
MVI B, 03 p>
MOV A, B p>
SVI 0F p>
MOV H, A p>
Команди констремента. b> p>
Записати в пам'ять, починаючи з адреси 800Н код команди: p>
MVI E, 00
INR E p>
Записати в пам'ять, починаючи з адреси 800Н коди команд: p>
LXI H, 900H
MVI M, 00
INR M p>
Записати в пам'ять за адресою 800Н код команди: p>
LXI D, 00 01
INX D
Виконати команду для наступних вихідних значень пари регістрів DE. p>
MVI E, 00
MVI D, 01 p>
INX D
Написати і виконати програму заповнення масиву пам'яті (900Н = 904Н), відповідності даними (00 - 04), використовуючи команди
інскремента пари регістрів і регістра. p>
LXI H, 900H
MVI M, 00
INX, H
MVI M, 01 p>
INX, H
MVI, 03 p>
INX H
MVI, 04 p>
Команди діскрента. b> p>
Записати в пам'ять за адресою 800Н код команди: p>
MVI C, 00
DCR, C p>
Записати в пам'ять, починаючи з адреси 800Н коди команд: p>
LXI H, 900H
MVI M, 00
DCR, M p>
Записати в пам'ять за адресою 800Н код команди: p>
MVI H, 00
MVI L, 01
DCR, H p>
b> p>
Лабораторна робота № b> 8 b> . b> p>
b> p>
Тема: b> b> Команди порівняння. p>
Хід роботи
Порівняємо вміст В і С: p>
MVI C, 01 p>
MOV A, C p>
MVI B, 01 p>
CMP B p>
MVI C, 01 p>
MOV A, C p>
MVI B, 09 p>
CMP B p>
MVI C, FF p>
MOV A, C p>
MVI B, 00 p>
CMP B p>
b> p>