Задание
Реализовать данную программу с помощью Turbo Prolog.
Инициализировать
устройство ввода\вывода
Принять PARIN во входной
порт PRT 5
Выбрать значение PAROU из
ячейки ADRE
Передать PAROU в выходной
порт PRT 4
PAROU= PARIN*4
PAROU= PARIN*0.5
КОНЕЦ
МЕНЬШЕ БОЛЬШЕ
РАВНО
Преобразование заданной схемы
Выбрать значение PAROU из
ячейки ADRE
Передать PAROU в выходной
порт PRT 4
Вывести PAROU в вых. PRT4
Принять PARIN во входной
порт PRT 5
Ввести PARIN в вх. PRT5
PAROU= PARIN*0.5
КОНЕЦ
PAROU= PARIN*4
Текст данной программы
Адрес |
КОП |
Команда |
Комментарии |
Метка |
|
||||
0500 |
DB |
In PRT 18 |
Ввод в аккумулятор PARIN1 |
0 |
0501 |
18 |
|
|
|
0502 |
78 |
MOV B,A |
Пересылка содержимого аккумулятора в регистр B |
|
0503 |
DB |
IN PRT 1A |
Ввод в аккумулятор PARIN2 |
|
0504 |
1A |
|
|
|
0505 |
85 |
ADD B |
Сложение значение аккумулятора с содержимым B |
|
0506 |
21 |
LXI H, DOP |
Загрузка DOP в ячейку ПЗУ |
|
0507 |
1A |
Мл. байт |
|
|
0508 |
08 |
Ст. байт |
|
|
0509 |
BE |
CMP M |
Сравнение содержимого аккумулятора с H |
|
050a |
FA |
Jm мет 1 |
Безусловный переход, если больше > |
|
050b |
10 |
Мл. байт |
|
|
050c |
08 |
Ст. байт |
|
|
050d |
C3 |
JMP мет 0 |
Безусловный переход в метку 1 |
|
050e |
00 |
Мл. байт |
|
|
050f |
08 |
Ст. байт |
|
|
0510 |
3A |
LDA ADR |
Загрузка в аккумулятор содержимое ячейки памяти по адресу ADCB |
1 |
0511 |
CB |
Мл. байт |
|
|
0512 |
AD |
Ст. байт |
|
|
0513 |
56 |
AMI |
Умножить содержимое аккумулятора на 4 |
|
0514 |
4 |
Data |
|
|
0515 |
D3 |
OUT PRT 19 |
Вывод PAROU через порт PRT 19 |
|
0516 |
19 |
|
|
|
0517 |
C3 |
JMP мет 0 |
Безусловный переход в метку 0 |
|
0518 |
00 |
Мл. байт |
|
|
0519 |
08 |
Ст. байт |
|
|
051a |
35 |
DOP |
|
|
Адрес |
|
|
|
|
|
0500 |
3A |
LDA |
Загрузка в аккумулятор содержимое ячейки памяти по адресу ADRE |
|
|
0501 |
RE |
Мл. байт |
|
||
0502 |
AD |
Ст. байт |
|
||
0503 |
D3 |
OUT PRT 4 |
Вывод PAROU через порт PRT 4 |
|
|
0504 |
4 |
|
|
||
0505 |
DB |
IN PRT 5 |
Ввод в аккумулятор PARIN порт PRT 5 |
|
|
0506 |
5 |
|
|
||
0507 |
21 |
LXI H, DOP |
Загрузка DOP в ячейку ПЗУ |
|
|
0508 |
## |
Мл. байт |
|
||
0509 |
## |
Ст. байт |
|
||
050a |
BE |
CMP H |
Сравнение содержимого аккумулятора с H |
|
|
050b |
|
JG |
Переход, если больше > |
|
|
050c |
## |
Мл. байт |
|
||
050d |
## |
Ст. байт |
|
||
050e |
|
JL |
Переход, если меньше < |
|
|
050f |
## |
Мл. байт |
|
||
0510 |
## |
Ст. байт |
|
||
0511 |
CA |
JZ |
Переход, если равно |
|
|
0512 |
## |
Мл. байт |
|
||
0513 |
## |
Ст. байт |
|
||
0514 |
|
|
|
|
|
0515 |
|
|
|
|
|
0516 |
|
|
|
|
|
0517 |
|
|
|
|
|
0518 |
|
|
|
|
|
0519 |
|
|
|
|
|
051a |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Текст данной программы
Схема