Написать программу, реализующую следующий алгоритм:
A = (A xor M[0480]) – 1
Если А != 10, то остановить программу, иначе – продолжить выполнение
ПРОГРАММА
LXI H,0480 h
Metka:
XRA M
DCR A
CPI A h(10 h)
JZ Metka
HLT
Написать программу, генерирующую на выводе РС0 ППА меандр с периодом 0,0356сек.
MVI A,01 h
OUT PORT C
LXI B,1614 h
DELAY:
DCX B const=180000-10/35=1416 h
NOP
NOP
NOP
NOP
NOP
JNZ DELAY
MVI A,00 h
HLT
Написать программу, реализующую следующий алгоритм:
C = M[0A51] and A
Если С четно - перейти к метке @A, иначе – к метке @B
LXI H,0A51 h
ANA M
ANI 01 h
JZ @A
JMP @B
Написать программу, выталкивающую себя в стек.
MVI H, 00 h
MVI D, ЧИСЛО СТРОК
LXI B, 0080 h
STACK:
LDAX B
MVI L, A
PUSH H
INX B
INR H
DCR D
JNZ STACK
JMP END
Написать программу, вычисляющую значение по следующей формуле:
C = (M[0A51] and D) or (M[1234] + 1)
LDAX 0A51 h
ANA D
MOV B, A
LDAX 1234 h
INR A
ORA B
MOV C, A
Написать программу, вычисляющую значение по следующей формуле:
M[0A51] = (C xor D) and (M[1234] -1)
MOV A, C
XRA D
MOV B, A
LDAX 1234
DCR A
ANA B
STA 0A51 h
HLT
Написать программу пересылки произвольного кол-ва байт между двумя непересекающимися областями памяти. Количество байт к пересылке (0..255) и адреса областей памяти задаются константами и не требуют внесения изменений в алгоритм.
LXI B, 0080
LXI H, 0090
MVI D, 5A h
22222:
LDAX B
MVI M, A
INX B
INX H
DCR D
JNZ 22222
HLT
Написать программу, увеличивающую значение аккумулятора на единицу, если в нем было четное число и уменьшающую его на единицу, если не четное.
CMA
CPI 01 h
JZ ne chet
CMA
DCR A
ne chet:
CMA
INR A
HLT
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.