Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
RGZ Mein.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
915.38 Кб
Скачать

4.2. Программа: main

Входные параметры: регистр А (выбранное действие)

Выходные параметры: ячейка памяти 0B0A

Используемые подпрограммы: VIBOR, Monitor, VVOD, ERROR.

Адрес

Код команды

Метка

Мнемокод

Комментарий

0810

CD 40 08

CALL VIBOR

п/п выбора действия из предложенных

0813

CD 50 08

CALL Monitor

п/п определения выбранного действия

0816

32 0A 0B

STA 0B0A

Сохранение выбранного действия в 0В0А

0819

3A A0 0B

CALL VVOD

п/п ввода однобайтного числа

081С

32 3A 0B

LDA 0B0A

Загрузка в A номера действия

0820

FE F7

CPI F7

Если клавиша не функциональная,

0822

CA 56 08

JZ H1

то к H1

081F

FE 02

CPI A-02

Если выбрано 2-е действие

0821

CA ED 08

JZ Razn

то переход на п/п выполнения действия_2

0824

FE 01

CPI A-01

Если выбрано 1-е действие

0826

CA 30 09

JZ SUM

то переход на п/п выполнения действия_1

0856

CD 80 08

H1:

CALL ERROR

Ошибка

0859

C9

RET

4.3. Подпрограмма: vibor

Входные параметры: отсутствуют

Выходные параметры: регистр А

Используемые подпрограммы: BLNK, CPU, KIND

Адрес

Код команды

Метка

Мнемокод

Комментарий

0830

CD 97 02

VIBOR:

CALL BLNK

Очистка экрана

0833

CD 85 01

M1:

CALL CPU

Нажата ли клавиша

0836

21 F5 0B

LXI H,0BF5

Указатель на HL5

0839

3E 01

MVI A,01

Вывести “1” на HL5

083B

77

MOV M,A

083C

2B

DCX H

Декрементировать

регистровую пару HL(0BF3)

083D

2B

DCX H

083E

3E 02

MVI A,02

Вывести “2” на HL3

0840

77

MOV M,A

0841

2B

DCX H

Декрементировать

регистровую пару HL(0BF1)

0842

2B

DCX H

0843

3E 03

MVI A,03

Вывести “3” на HL1

0845

77

MOV M,A

0846

CA 33 08

JZ M1

Переход к М1

0849

CD 4B 01

CALL KIND

Определение кода клавиши

084C

C9

RET

Возврат из подпрограммы

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