- •Шина керування (Control bus)
- •1.Організація однокристальних еом
- •1.3 Організація вводу/виводу інформації
- •1.4. Блок керування
- •1.5. Логічна схема умовних переходів
- •1.6.Режим преривання
- •1.7.Таймер/лічильник
- •2.Повноекраний налагоджувач ассемблерних програм для однокристальних еом кр1816ве48
- •2.2.Команди налагоджувача.
- •2.3.Повноекранне редагування.
- •2.4.Режим Ассемблера.
- •2.5. Робота з точками преривання.
- •3.Система команд оеом кр1816
- •3.1.Група команд пересилки данних
- •Рпзп Програм і
- •Порт р1
- •Порт р2
- •3.2.Група команд арифметичних та логічних операцій
- •3.3.Група команд вводу-виводу інформації.
- •3.4.Група команд передачі керування.
- •3.5.Група команд операцій з таймером
- •3.6.Група команд керування режимом роботи оеом
- •4.Приклади написання програм для оеом кр1816 ве48
- •4.1. Приклади використання команд передачі данних
- •4.2. Приклади використання команд арифметичних операцій.
- •4.3. Приклади використання команд логічних операцій
- •4.4. Приклади використання команд передачі керування і команд керування режимом оеом
2.3.Повноекранне редагування.
Перехід в режим повноекранного редагування забезпечується нажаттям клавіші [Enter] без вводу команди. Тепер можливо переміщувати курсор по екрану з допомогою клавіш керування курсором та змінювати складову регістрів, пам’яті та признаків з допомогою набору чисел на клавіатурі. Можливо змінювати також початкову адресу дизассембльованого тексту та початкові адреси вікон пам’яті ( в пер-ших строчках вікон) . Повноекранне редагування можна використовувати і при десятичному та при двійковому представленні інформації на екрані. Під час редагування залишаються доступними всі команди, які вводяться функціональними клавішами.
Щоб повернутись в командну строчку необхідно нажати [Enter] знову. Для швидкого переміщення курсора по екрану можна використовувати клавіші [Tab],
[Shift]-[Tab].
2.4.Режим Ассемблера.
Для переходу в режим Ассемблера (вводу команд налагоджуємої програми в мнемонічних позначеннях) необхідно в режимі повноекраного редагування помістити курсор в поле поточної команди, завантаженої програми. Тепер набирається мнемоніка (наприклад, “MOV A,PSW”) й нажимається [Enter]. Якщо мнемоніка правильна, товідповідні їй коди заносяться в память програм, а вікно встановлюється на слідуючу адресу. Для виходу з режиму Ассемблера нажимається клавіша Q або виводиться курсор з поля поточної команди.
2.5. Робота з точками преривання.
Меню точок преривання визивається клавішою F5. Можна встановити одночас-но 8 точок преривання. Преривання (останов) виконуємої програми проходить при досягненні вказаної в колонці “РC” адреси при виконанні умови “Counter” = “Occur”. “Counter”- це лічильник, значення якого визначає , скільки раз про-грама повинна пройти через вказану адресу, щоб появився останов. “Occur” показує, скільки раз програма проходила через вказану адресу.
Закінчив редагування, поточні значення точок преривання можна зберегти на диску ( клавіша F2). В користувача запиcується номер набору точок преривання ( 0-9). Інформація записується в файл з імям FD48.BRK Відновити картину мо-жна клавішою F1, також вказавши її номер. Для повернення в основне меню на-жимається F5.
Визначивши точки преривання, можна запустити прогрaму командою G без параметрів. При останові програми по прериванню видається повідомлення з указанням точки преривання.
DEL=<число>
Команда встановлює крок затримки для виконавчої програми (спочатку DEL=0)
Якщо <число> не рівняється нулю після вводу G команди програма буде вико-нана з затримкою після кожної команди. Нажаття любої клавіші зупиняє вико-нання. DEL може бути дінамічно змінена під час виконання. Клавіша [вліво] зменшує затримку, [вправо] підвищує. Для відміни затримки використовується DEL=0
3.Система команд оеом кр1816
Система команд орієнтована на еффективну реалізацію процедур керуван-ня: маскуємий ввод-вивод, логічні операції, операції з бітами, сканування таб-лиць з передачею керування та інше. Кроме того в МК1816 виконуються коман-ди арифметичних операцій над двійковими і десятичними двійково-кодованими числами.
Всі команди мають формат в 1 або 2 байти і виконуються за один або два машинних цикла (2.5-5 мкс відповідно при тактовій частоті 6 мГц. ). За два машинних цикла виконуються всі команди з безпосереднім операндом, коман-ди вводу-виводу, команди передачі керування, визова підпрограмм та деякі команди пересилок. Решта команд виконується за один машинний цикл.
В командах ОЕОМ 1816 використовіється пряма, безпосередня та побічна адресація.
Команди ОЕОМ по функціональному признаку можуть бути розбиті на шість груп- команди пересилок та обміну, команди арифметичних та логічних операцій (в тому числі й операцій над признаками), команди вводу-виводу, ко-манди передачі керування ( в тому числі й операцій з підпрограмами), команди операцій з таймером, команди керування режимом роботи ОЕОМ.
При описанні системи команд використовуються слідуючі символи й скорочення.
А-аккумулятор.
АС-ознака допоміжного переносу.
А-12 бітна адреса пам’яті програм (11-й біт – вибір блоку пам’яті, біти 0-10-адреса в діапазоні 2К)
Вb-номер біта в байті.
BS-перемикач банку регістрів.
BUS-порт вводу-виводу.
С-ознака переносу.
CLC-синхросигнал.
CNT-лічильник подій.
D-мнемокод 4-бітного числа.
d-8-и бітне число.
DBF-триггер вибору блока пам’ятi.
F0,F1-ознаки.
I-преривання.
P-мнемокод операцій.
PC-лічильник команд.
Рр-порт вводу-виводу.
PSW-слово стану програми.
Rr-робочий регістр.
SP-регістр-показник стеку.
Т-таймер.
TF-ознака таймера.
T0,T1- тестуючі входи T0,T1
X-мнемокод зовнішнього ОЗП.
#-префікс безпосереднього операнда.
@-префікс побічної адресації.
$-поточний вміст лічильника команд.
(X)-вміст регістра або елемента з іменем Х.
((X))-вміст елемента, адресуємого вмістом Х.
- оператор присвоєння.
- операторвзаємного обміну.
[XX]- шіснадцятирічний код операції.
[X*]- посилання на табл.1
[X%]- посилання на табл.2
[!X]- посилання на табл.3