Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metoda.doc
Скачиваний:
1
Добавлен:
22.08.2019
Размер:
728.06 Кб
Скачать

Програма 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

повторити програму

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]