; масиву
JNCMS5 ; Повернення на початок циклу, якщо Аi< Amax
MOVA, M ; Запис в акумулятор поточного максимального
; значення масиву
JCMS5 ; Повернення на початок циклу, якщо Аi>Amax
MS6: MVIB, 02 ;Ділення вмісту акумулятора на 4
ORAA ;
MS7: RAR ;
DCRB ;
JNZMS7 ;
MOVE, A ; Запис результату в Е Amax/4
LXIB, 0000 ; Очищення В і С
MVIL, 08 ; Завантаження лічильника біт (регістр L)
ORAA ;Логічне додавання вмісту акумулятора для
; обнулення TC
MS8: MOVA, E ; Завантаження множника в акумулятор з Е
RAR ; Зсув аналізуємого біта множника
MOVE, A ; Повернення зсунутого множника в Е
JNCMS9 ; Перехід на мітку MS9, якщо біт множника = 0
MOVA,B ; пересилання старшого байта суми часткових добутків
; в акумулятор
ADDD ; Додавання множеного до суми часткових добутків
JMPMS10 ; Перехід до зсуву суми часткових добутків
MS9: MOVA, B ; Пересилання старшого байта суми часткових добутків
; в акумулятор
MS10:RAR ; Зсув суми часткових добутків
MOVB, A ; Пересилання старшого байта суми часткових добутків
; в регістр В
MOVA, C ;Пересилання молодшого байта суми часткових
; добутків в акумулятор
RAR ; Зсув суми часткових добутків
MOVC, A ; Пересилання молодшого байта суми часткових
; добутків в регістр С
DCRL ; Зменшення лічильника на 1
JNZMS8 ; Організація циклу
MOVA, С ; Пересилання молодшого байта результату в
;акумулятор
STAAddr(Rez1)16; Пересилання молодшого байта результату
; в комірку Addr(Rez1) 16
MOVA, В ; Пересилання старшого байта результату
; в акумулятор
STAAddr(Rez2) 16; Пересилання старшого байта результату
; в комірку Addr(Rez2) 16
RST 1 ; Припинити виконання програми
Блок-схема до даної програми зображена на рис.4 в додатку 2.
Задача № 5. Розробіть драйвер для виведення інформації на зовнішній пристрій у мікропроцесорній системі на базі мікропроцесорної серії К580.
Наведіть структурну схему організації виведення інформації, алгоритм виведення, програму драйвера на мові Асемблера.
Виконати завдання за допомогою паралельного інтерфейсу К580ВВ55, який програмується, з розрядністю даних рівній 11.
Алгоритм програми:
1. Видати сигнал пуску;
2. Чекання сигналу готовності;
3. Зчитування інформації з портів А та В.
8000Н-8024Н – машинні коди програми.
PUSHB ; Збереження стану пар регістрів
PUSH D ;
PUSH H ;
PUSH PSW ;
MVIA, 81H ; Настройка периферійного пристрою
OUT RU ;
LXIH, 8100H ; Запис в пару HL адреси регістра А
MOVA, M ; Пересилання даних в акумулятор
OUTPORTA ; Пересилання даних на регістр порта А
INXH ; Визначення адреси регістра В
MOVA,M ; Пересилання даних в акумулятор
OUTPORTB ; Пересилання даних на регістр порта В
MVI A, 00000001 ; Запуск стробуючого сигналу
OUT PORT C ;
MVI A, 00000000 ;
OUT PORT C ;
M1: INPORTC ; Перевірка готовності
RAL ;
JNC M1 ;
POPPSW ; Відновлення стану пар регістрів
POP H ;
POP D ;
POP B ;
RST 1 ; Припинення виконання програми
Блок-схема до даної програми зображена на рис.5 в додатку 3.
Структура програми зображена на рис.6 в додатку 3.