- •Лабораторна робота № 1
- •Короткі відомості з теорії
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Завдання для самоперевірки
- •Література
- •Лабораторна робота № 2
- •Короткі відомості з теорії
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Порядок виконання завдання
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Література
- •Короткі відомості з теорії
- •Програма 8.6
- •Програма 8.7
- •Програма 8.8
- •Програма 8.9
- •Завдання до домашньої підготовки
- •Завдання до лабораторної роботи
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Література
- •Лабораторна робота 4 підпрограма і стек
- •Короткі відомості з теорії
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Завдання для домашньої підготовки
- •Завдання до лабораторної роботи
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Завдання для домашньої підготовки
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Література
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Література
- •Завдання для домашньої підготовки
- •Робота на навчальній еом
- •Завдання для самоперевірки
- •Література
Програма 8.7
Адреса |
Машинний код |
Мітка |
Мнемокод |
Коментар |
8000 |
DB 20 |
CNT |
IN 20 |
Отримати число з вхідного пристрою |
8002 |
Е6 20 |
|
AN1 20 |
Виконати логічну операцію |
8004 |
D3 30 |
|
OUT 30 |
записати результат у вихідний пристрій |
8007 |
С3 0008 |
|
JMP CNT |
продовжувати |
Умовні переходи організують в програмах за допомогою команд умовних переходів. При виконанні цих команд МП БІС перевіряє стан відповідного розряду регістру стану. Якщо при перевірці стану розряду регістра стану умова не підтверджується, то виконується наступна по порядку команда програми. Всі команди умовних переходів – трьохбайтні: перший байт містить код команди, другий і третій байти – адресу передачі керування. Таким чином, команди умовних переходів дозволяють будувати алгоритми, що розгалужуються, і в залежності від поточного значення результату виконання програми переходить на різні ділянки програми.
Нижче наведена програма (програма 8.8) для визначення 1 в п'ятому розряді числа, записаного у вхідному пристрої. Програма використовує маскування числа і умовний перехід.
Програма 8.8
Адреса |
Машинний код |
Мітка |
Мнемокод |
Коментар |
8000 |
DB 20 |
WAIT |
IN 20 |
отримати число з вхідного пристрою |
8002 |
Е6 20 |
|
AN1 20 |
перевірити стан п'ятого розряду числа |
8004 |
СА 0008 |
|
JZ WAIT |
йти на WAIT, якщо в п'я-тому розряді був 0 (z = 0) |
8007 |
СF |
|
RST 1 |
закінчити виконання програми |
В поданих раніше програмах мав місце лише один цикл, в якому працювала мікро-ЕОМ. Програма очікування появи 1 у другому і п'ятому розрядах числа, записаного у вхідному пристрої (програма 8.9), містить два цикла.
Програма 8.9
Адреса |
Машинний код |
Мітка |
Мнемокод |
Коментар |
8000 |
DB 20 |
WAITІ |
IN 20 |
отримати число з вхідного пристрою |
8002 |
Е6 04 |
|
AN1 0000010 |
чи виконаний другий перемикач? |
8004 |
СА 0008 |
|
JZ WAIT 1 |
якщо ні, продовжити WAIT 1 |
8007 |
3Е FF |
|
MVI A, FF |
якщо так, увімкнути світлодіоди |
8009 |
D3 30 |
|
OUT 30 |
вихідного регістру |
800B |
DB 20 |
WAIT2 |
IN 20 |
отримати число з вхідного пристрою |
800D |
E6 20 |
|
ANI 00100000 |
чи вимкнений п'ятий перемикач? |
800F |
CA 0B08 |
|
JZ WAIT 2 |
якщо ні, продовжувати WAIT 2 |
8012 |
3E 00 |
|
MVI A, 00 |
якщо так, вимкнути світлодіоди |
8014 |
D3 30 |
|
OUT 30 |
вихідного регістру |
8016 |
C3 0008 |
JMP WAIT 1 |
|
повторити програму |