- •Тема 1.Системи відліку
- •Тема 2.Пеpевод чисел із однієї системи відліку в іншу
- •Тема 3.Представлення чисел в еом
- •Тема 4.Двійкова арифметика
- •Тема 5.Арифметичні дії над числами з плаваючою комою
- •Тема 6.Аpхітектуpа мікpопpоцесоpа кр580вм80
- •Мультиплексор
- •Тема 7.Пpогpамна модель мп кр580вм80а
- •Тема 8. Методи адpесацiї
- •Тема 9. Машина мова та асемблер
- •Тема 10. Загальна архітектура еом
- •Центральний процесор
- •Запам’ятовуючі пристрої
- •Пристрій введення-виведення
- •Регістри
- •Тема 11. Система команд
- •Групи команд
- •Алгоритм виконання команд
- •Тема 12.Склад команд мп кр580вм80 Склад команд аpифметичних дій мп кр580вм80
- •Додавання з подвійною точністю
- •Операції віднімання
- •Віднімання з позикою
- •Команди інкрементування і декрементування
- •Склад команд передачі даних
- •Команди прямої адресації
- •Додаткові команди
- •E 0101 0111 e не змінюється
- •Склад команд логічних операцій
- •18. Cmc Cy Діє лише на біт Cy.
- •Команди розгалуження і переходів
- •Команда виклику підпрограми
- •Склад команд управління
- •Така задача виникає при аналізі станів сукупності тумблерів, пускачів, перемикачів або індикаторів.
- •Тема 13. Псевдокоманди мп кр580вм80
- •Програма
- •Програма
- •Програма
- •Приклад 10. Додавання десяткових чисел
- •П рограма Алгоритм
- •Тема 14. Директиви умовного асемблювання
- •Тема 15. Макрокоманди
- •Тема 16. Одно та двохпрохідний асемблери
- •Тема 17. Представлення інформації в полях назв, операцій, операндів та коментарів
- •Використання в адресних виразах арифметичних або логічних операціях для всіх типів даних.
- •Приклад 11. Таблиця квадратів
- •Програма Алгоритм
- •Тема 18. Літерно-цифровий код
- •Обробка символьної інформації
- •Приклад 12. Довжина рядка символів в коді ascii
- •Програма Алгоритм
- •Тема 19. Структура управління мп Intel 8080
- •Тема 20. Конструювання програм
- •Структурне програмування
Тема 14. Директиви умовного асемблювання
Асемблер МП Intel 8080 дозволяє застосовувати умовне асемблювання за допомогою псевдооперацій IF та ENDIF .
Синтаксис
< ім’я >: IF < вираз >
…
< ім’я >: ELSE
< ім’я >: ENDIF
Якщо значення виразу в операторі IF на етапі асемблювання не дорівнює нулю, то асемблер включає в програму оператори, що знаходяться між псевдокомандами IF та ENDIF . Якщо вираз дорівнює нулю, то відповідні оператори в програму не включаються.
Приклади:
а. CMA; AĀ IF TWOS
INR A; додати 1 для отримання доповненого коду
ENDIF
Якщо змінна TWOS=0, то асемблер включає також команду CMA, що формує обернений код. Якщо TWOS#0, асемблер включає також команду INR A, виконання якої перетворює обернений код в доповнений. За допомогою однієї й тієї ж
асемблерної програми можна виконати арифметичні операції в оберненому або доповненому коді. Вибір режиму здійснюється за допомогою змінної , значення якої встановлюється перед асемблюванням.
б. 8 або 16 – бітне додавання
IF L8; 8 – бітне додавання
LDA OP1
MOV B,A
LDA OP2
ADD B
STA RES
ENDIF
IF L16; 16 – бітне додавання
LHLD OP1
XCHG
LHLD OP2
DAD D
SHLD RES
ENDIF
Дана програма дозволяє вибрати 8 або 16 – бітний варіант додавання в залежності від значення змінних L8 і L16. Якщо L8#0 і L16=0, асемблер транслює команди, що реалізують 8 - бітне додавання. Якщо L8=0 і L16#0, то будуть транслюватися команди, що забезпечують додавання 16 - бітних чисел.
Програмістам не рекомендується зловживати засобами умовного асемблювання. Їх використання робить програми більш заплутаними та ускладнює їх відлагодження. Краще написати дві окремі програми для двох різних випадків, ніж використовувати складні засоби умовного асемблювання. Засоби умовного асемблювання доцільно використовувати для полегшення відлагодження в початкових варіантах програми.
Тема 15. Макрокоманди
В МП Intel 8080 є макрозасоби. Макрокоманди можна використовувати для того, щоб ввести зручне позначення для команд, що існують, розширити систему команд, позначити одним оператором цілу сукупність команд. Для кожної макрокоманди необхідно скласти визначення й присвоїти йому унікальне ім’я. Макрокоманди не можуть включати в себе ні визначення інших макрокоманд, ні посилання на самих себе. Разом з тим вони можуть мати посилання на інші макрокоманди. Для опису макрокоманд в МП Intel 8080 використовують псевдооперації MACRO, ENDM.
Синтаксис
< ім’я > MACRO < список формальних параметрів>
Приклади
в. CLR MACRO Обнулення А і встановлення Сy=0
SUB A
END M
Введення за допомогою макрозасобів мнемоніки CLR робить використання цієї команди (SUB A) більш наглядним.
г. Операція NOR (АБО-НІ)
NOR MACRO REG
ORA REG
CMA
ENDM
В макрокоманді NOR використовується операнд REG.
При використанні макрозасобів програміст повинен враховувати наступні правила:
кожна макрокоманда повинна мати унікальне ім’я;
макровизначення повинно починатися з псевдооперації MACRO і закінчуватися псевдооперацією ENDM;
імена, що визначенні в макрокоманді, локалізовані в ній і не визначені в головній програмі;
макровизначення не повинні включати інших макровизначень.
