После записи программы в память микроЭВМ следует дать команду на ее выполнение с помощью команды МОНИТОРА G. #, G, 2100, CR, а с помощьюкоманды S определить содержимое ячейки по адресу 2222, то есть считать результат вычислении.
3. Порядок выполнения работы
1. Составить и реализовать на микроЭВМ К1-20 программу обмена чисел, записанных по адресам: адр. 2202 – ОЗН и адр. 220Е – 05Н.
В ассемблере имеется специальная команда XCHG, по которой производится обмен содержимым регистровых пар DE и HL. После обычной записи чисел по адресам по команде МОНИТОРА S необходимо первое число как непосредственный операнд переслать в регистр D по команде MVI D, 03, а второе число – в регистр Н по команде MVI Н, 05.
После операции обмена необходимо обнулить аккумулятор (peг. А) по команде XRA А – операция ИСКЛЮЧАЮЩЕЕ ИЛИ и переслать в аккумулятор содержимое регистра D: MOV A, D. Затем следует уже знакомая операция запоминания данных в аккумуляторе по требуемому первому адресу STA 2202. Аналогичные действия производятся при запоминании данных в регистре Н. Здесь можно воспользоваться командой SHLD 220E: «Запомнить содержимое регистровой пары HL по адресу 220Е».
Перед написанием программы рекомендуется составить подробный алгоритм решения задачи.
Машинные и ассемблерные коды операций для задачи по п. 1 приведены в табл. 2.
Таблица 2
Машинный код |
Мнемоника |
Комментарий |
16 |
MVI D, число |
; Пересылка числа в регистр D |
26 |
MVI H, число |
; Пересылка числа в регистр Н |
ЕВ |
XCHG |
; Обмен содержимым регистров H↔D |
AF |
XRA A |
; Обнуление аккумулятора |
7А |
MOV A, D |
; Пересылка из регистра D в аккумулятор (per. A) |
32 |
STA Адр. |
; Запомнить содержимое аккумулятора по адресу |
Окончание табл. 2 |
||
22 |
SHLD Адр. |
; Запомнить содержимое регистр. пары Н, L по адресу |
7С |
MOV А, Н |
; Пересылка из регистра Н в аккумулятор |
76 |
HLT |
; Останов |
2. Составить и реализовать программу установки в «1» третьего разряда числа, записанного по адресу 2210 (число заведомо неизвестно).
Центральным в решении этой задачи является нахождение слова-маски такого вида, чтобы при поразрядной дизъюнкции с неизвестным числом третий разряд устанавливался в «1». Начинать следует с обнуления аккумулятора. Затем загрузить в аккумулятор адрес, указанный в условии задачи.
Следующим шагом должно быть нахождение слова-маски (числа) и засылка его в регистр общего назначения (peг. В). Далее следует поразрядная дизъюнкция содержимого регистров В и А. Затем должна следовать команда на запоминание числа в аккумуляторе в ячейке по адресу 2210.
После выполнения программы по команде МОНИТОРА G необходимо проверить результат: с помощью команды МОНИТОРА S найти число, записанное по адресу 2210. Полученное число в Н-коде записать в В-коде и убедиться, что третий разряд – «1».
Машинные и ассемблерные коды операций (мнемоника) для задачи по п. 2 приведены в табл. 3. Недостающие коды операций взять из табл. 2.
Таблица 3
Маш. код |
Мнемоника |
Комментарий |
ОА 1А |
LDAX В |
; Загрузка в peг. А числа из адреса, который содержится в регистровой паре В, С |
1А |
LDAX D |
; Загрузка в peг, А числа из ячейки, адрес которой содержится в регистровой паре D, Е |
02 |
STAX В |
; Запомнить число из аккумулятора по Adr., который содержится в регистровой паре В, С |
12 |
STAX D |
; Запомнить число из аккумулятора в ячейке, адрес которой содержится в регистровой паре Н, L |
3А |
LDA Adr. |
; Загрузка в peг. А числа из Adr. |
06 |
MVI В, число |
; Пересылка в peг. В слова-маски (числа) |
ВО |
ORA В, А |
; Поразрядная дизъюнкция peг. А и В |
Окончание табл. 3 |
||
С2 |
JNZ Adr. |
; Переход на адрес, если результат не нулевой |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.