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