Дослідження виконання окремих команд і простих програм мікропроцесора КР580ИК80

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2003
Тип роботи:
Лабораторна робота
Предмет:
Мікропроцесорні засоби та системи
Група:
ЕКТ-41

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти України Національний університет „Львівська політехніка” кафедра електроприводу Лабораторна робота №4 на тему: „Дослідження виконання окремих команд і простих програм мікропроцесора КР580ИК80 ” з дисципліни „Мікропроцесорні засоби та ситеми ” Львів 2003 Мета роботи: ознайомитися з командами МП КР580ИК80А , дослідити виконання окремих команд Асемблера, вивчити способи адресації , складання , написання та реалізації програм. Програма роботи: 1. Перевірити виконання команд переміщення даних. Для цього задану послідовність команд записати за формою, наведеною в табл..30 для конкретних реєстрів і адрес. Приклад запису програми поданий для перших двох команд. Як видно з прикладу, команди необхідно розмістити в оперативній пам’яті, починаючи з адреси 8200Н, записати їх війкові і шістнадцяткові коди і дати потрібні пояснення. Виконати програму в кроковому режимі (натискаючи клавішу STEP), перевіряючи результати виконання перших трьох команд перевірити вміст реєстрів R1, R2, і R3: MVI R1,D8 MOV R2,R1 MOV R3,R2 LHLD ADR1 SHLD ADR2 LXI D,ADR3 XCHG MOV R,M HLT Адреса 16-й Мнемокод Пояснення  8200 3Е MVI A, 40 A40H (A=40, REG A - перевірка).  8201 40    8202 47 MOV B, A BA (B=40, REG B - перевірка).  8204 8205 8206 2A 54 01 LHLD 0154 L(0154) ,H(0155) (за адресою 0154 чи-сло B2, а за 0155 – C2, відповідно L=B2, a H=C2).  8207 22 SHLD 8405 (8405) L (8406) H  8208 05    8209 84    820A 11 LXI D,8506 D85, E06 (D=85, E=02).  820B 06    820C 85    820D EB XCHG HD, LE  820E 7E MOV A, M A(HL)  820F E7 RST ЗУПИНКА             2. Перевірити виконання команд керування стеком. Налагодити стек, для чого в реєстр-покажчик стека командою LXI SP B2 B3 занести адресу вершини стека 83ЕОН. Попередньо з клавіатури, користуючись МОНІТОРОМ, занести в реєстрові пари ВС і DЕ будь-які двобаштові операнди. Після цього записати програму, яка складається з команд запису в стек вмісту реєстрових пар ВС і DЕ і читання зі стека, виконати її, контролюючи проміжні результати:LXI SP B2 B3 PUSH B PUSH D (контроль вмісту SР і стека) РОР Н РОР В (контроль вмісту НL, ВС і SР). Адреса 16-й Мнемокод Пояснення  8200 31 LXI SP 83E0 SP=83E0  8201 E0    8202 83    8203 21 PUSH B (SP-1)B, (SP-2)C (83DF)=11, (83DE)=22  8204 AB PUSH D (SP-3)D, (SP-4)E (83DD)=33, (83DC)=44  8205 2C POP H L(SP-4), H(SP-3) L=44, H=33  8206 E5 POP D E(SP-2), D(SP-1) E=22, D=11  8207 8208 39 E7  RST  Зупинка   3. Скласти і дослідити таку програму: налагодити стек 83ЕОН, завантажити в НL двобайтовий операнд, після цього переслати його в стек, додати вміст SP і HL, проконтролювати результати в HL і стека. Адреса 16-й Мнемокод Пояснення  8200 31 LXI SP 83E0 SP=83E0  8201 E0    8202 83    8203 21 LXI HL 01A0 HL=01A0  8204 A0    8205 01    8206 E5 PUSH H (SP-1)H, (SP-2)L  8207 39 DAD SP HLHL+SP  8208 76 RST Зупинка   4. Дослідити програму (табл..31) додавання без перенесення і віднімання без позичання однобайтових операндів (ADR 4), (ADR5), (ADR 6), тобто (ADR4) + (ADR5) – (ADR6), а результат записати за адресою ADR7. Перед виконанням програми з операнди записати в пам’ять з клавіатури. Проконтролювати окремо: результат додавання і вмісту реєстру ознак, віднімання і вмісту реєстру ознак. Програму виконати в кроковому режимі (“ОТЛАДКА”) і автоматичному (“ПРОГОН”). Під час виконання програми в автоматичному режимі замість команди зупинки HLT – код 76Н користуватися командою RST – код Е7Н. Адреса 16-й Мнемокод Пояснення  8200 3A LDA 0009 A(0009),A=2A  8201 09    8202 00    8203 21 LXIH 0119 HL0119, (0119)=1E  8204 19    8205 01    8206 86 ADD M AA+(HL), A=48  8207 21 LXIH 00F5 HL00F5, (01F5)=C1  8208 F5    8209 00    820A 96 SUB M AA-(HL), A=57  820B 92 STA 8413 (8413) A , (8413)=57  820C 13    820D 84    820E E7 HLT Зупинка     5. Дослідити програму (табл.32) додавання двох N – значних десяткових чисел NA і NB, виразивши їх у двійково – десятковому коді, а результат додавання записати за адресою числа NA. Нагадуємо, що для зображення десяткових чисел двійково – десятковим кодом кожну десяткову цифру необхідно замінити тетрадою (тетра – чотири) війкових чисел, наприклад : 27D 0010 0111. Значення доданків NA і NB наведено в табл.34. Доданки (операнди) розмістити в пам’яті побайтно: NA – починаючи з молодших розрядів з адреси 8400Н і вище, тобто 8400 – А0 , 8401 – А1 і т.п. NB – аналогічно, починаючи з адреси 8408. Програма додавання закінчується командою десяткової корекції результату (див. табл..32). Цю програму дослідити в кроковому і неперервному режимах, пам’ятаючи, що в неперервному режимі ННП працює без МОНІТОРа. Щоб після виконання програми в цьому режимі відбулося переривання і звернення до МОНІТОРа, який вмикає індикатор, замість команди HLT (код 76) треба використати команду RST (код Е7). Інакше під час зупинки за командою HLT МОНІТОР не буде викликаний і відповідна закінченню виконання програми інформація на індикацію не буде виведена. Щоб виконати програму в неперервному режимі, необхідно встановити перемикач режиму в стан “ПРОГОН” задати початкову адресу програми – ADDR NNNN запустити програму на виконання клавішею RUN. Адреса 16-й M Мнемокод Пояснення Адреса Число  8200 11  LXI D,8400 DE8400  NA       8400 01  8201 00    8401 61  8202 84    8402 12  8203 21  LXI H,8408 HL8408 8403 44  8204 08    8404 16  8205 84    8405 00  8206 0E  MVI C,08 C08 8406 00  8207 08    8407 00  8208 AF  XRA A AAA (Cбіт=0)  NB       8408 31  8209 1A M1 LDAX D A(DE) 8409 40  820A 8E  ADC M AA+(HL)+ Cбіт 840A 99  820B 27  DAA Десяткова корекція 840B 96  820C 12  STAX D (DE)A 840C 00  820D 13  INX D DEDE+1 840D 00  820E 23  INX H HLHL+1 840E 00  820F 15  DCR C CC-1 840F 00  8210 C2  INZ M1 Якщо Zбіт=0, то на M1  8211 09     8212 82     8213 E7  RST Зупинка   Результати: 8400 32 8404 16  8401 01 8405 00  8402 12 8406 00  8403 40 8407 00   00000000 00000000 00000000 00010110 01000100 00010011 01100001 00000010 + 00000000 +00000000 +00000000 +00000000 +10010110 +10011001 +01000001 +00110000 00000000 00000000 00000000 00010110 11011010 10101100 10100010 00110010 +01100110 +01100110 +0110 1 01000000 1 00010010 1 00000010 6. Дослідити програму (табл.33) множення двох однобайтових чисел МА і МВ (варіанти значень чисел наведені в табл.34). Початкова адреса програми 8200 множник МА завантажити в реєстр D, а МВ – в Е. Результат множення записується в реєстрову пару ВС, тобто результат двобайтовий. У програмі використовується стек, але налагоджувати його не потрібно, бо він налагоджується МОНІТОРОМ на адресу 83ЕО. Програму дослідити в кроковому та автоматичному режимах. Навести у звіті перевірку отриманого добутку множенням співмножників у десятковій системі числення та множенням цих співмножників згідно з алгоритмом, який реалізований у програмі (табл.33). Адреса 16-й M Мнемокод Пояснення  8200 01  LXI B, 0000 BС0000  8201 00     8202 00     8203 3E  MVI A, 01 A01  8204 01     8205 A7  ANA A AAA  8206 F5 M1 PUSH PSN (SP-2) F, (SP-1)A, SPSP-2  8207 A3  ANA E AAE  8208 78  MOV A,B A B  8209 CA  JZ M2 If Z=1 go to M2  820A 0D     820B 82     820C 82  ADD D AA+D  820D 1F M2 RAR Зсув А праворуч  820E 47  MOV B, A BA  820F 79  MOV A, C AC  8210 1F  RAR Зсув А праворуч  8211 4F  MOV C, A  C A  8212 F1  POP PSW F(SP),A(SP+1), SPSP+1  8213 17  RAL Зсув А ліворуч  8214 D2  JNC M1 Якщо C=0 то на M1  8215 06     8216 82     8217 E7  RST Зупинка   Перевірка: 1010 REG C (C=90), REG B (B=00) 1001 1010 1010 1011010 = 90H
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!