Написание программы, реализующей определенный алгоритм. Программа, генерирующая на выводе РС0 ППА меандр с периодом 0,0356сек

Страницы работы

Содержание работы

Написать программу, реализующую следующий алгоритм:

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

Похожие материалы

Информация о работе