Составление программ на ассемблере, блок-схема и алгоритм, страница 4

Результат выполнения программы находится в ОЗУ, с 0200 по 0210 адрес.

Задание 4.

Составить программу для пересылки массива данных размерностью n из одной области ОЗУ в другую. После пересылки массив должен расположиться в обратном порядке.

n=17.

 

 


Адрес ОЗУ

Команда

Параметры команды

HEX

Описание

0000

0001

MVI

C,00

3F

00

;в регистр C заносится шестнадцатеричное значение 00

0002

0003

MVI

A,11

3E

11

;в регистр A заносится шестнадцатеричное значение 11

0004

MOV

B,A

47

;поместить в регистр B значение регистра A

0005

0006

MVI

H,02

26

02

;в регистр H заносится шестнадцатеричное значение 02

0007

DCR

B

05

;уменьшить значение регистра B на единицу

0008

DCR

H

25

;уменьшить значение регистра H на единицу

0009

MOV

L,C

69

;поместить в регистр L значение регистра C

000A

MOV

D,M

56

;поместить в регистр D значение регистра M

000B

MOV

L,B

68

;поместить в регистр L значение регистра B

000C

INR

H

24

;увеличить значение регистра H на единицу

000D

MOV

M,D

72

;поместить в регистр M значение регистра D

000E

INR

C

0C

;увеличить значение регистра C на единицу

000F

CMP

С

B9

;сравнение значений регистров A и C

0010

0011

0012

JNZ

adr

C2

07

00

;в результате сравнения, если (A)-(C)>0, то программа ;перенаправляется на следующую команду (указанную во ;втором и третьем байтах команды). Если разница равна нулю, ;то программа продолжается со следующей команды

0013

HLT

76

;завершение работы программы

0100

01

;адрес ячейки ОЗУ, в котором находится 1-е слагаемое

;адрес ячейки ОЗУ, в котором находится 2-е слагаемое

;адрес ячейки ОЗУ, в котором находится 3-е слагаемое

;адрес ячейки ОЗУ, в котором находится 4-е слагаемое

;адрес ячейки ОЗУ, в котором находится 5-е слагаемое

;адрес ячейки ОЗУ, в котором находится 6-е слагаемое

;адрес ячейки ОЗУ, в котором находится 7-е слагаемое

;адрес ячейки ОЗУ, в котором находится 8-е слагаемое

;адрес ячейки ОЗУ, в котором находится 9-е слагаемое

;адрес ячейки ОЗУ, в котором находится 10-е слагаемое

;адрес ячейки ОЗУ, в котором находится 11-е слагаемое

;адрес ячейки ОЗУ, в котором находится 12-е слагаемое

;адрес ячейки ОЗУ, в котором находится 13-е слагаемое

;адрес ячейки ОЗУ, в котором находится 14-е слагаемое

;адрес ячейки ОЗУ, в котором находится 15-е слагаемое

;адрес ячейки ОЗУ, в котором находится 16-е слагаемое

;адрес ячейки ОЗУ, в котором находится 17-е слагаемое

0101

02

0102

03

0103

04

0104

05

0105

06

0106

07

0107

08

0108

09

0109

0A

010A

0B

010B

0C

010C

0D

010D

0E

010E

0F

010F

10

0110

11