Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторный практикум ч3 А4 09.10.2012.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.07 Mб
Скачать
  1. Команды двойного сложения

DAD H – сложение HL ← (HL) + (HL);

DAD B – сложение HL ← (HL) + (BC);

DAD D – сложение HL ← (HL) + (DE).

  1. Записать в память, начиная с адреса 0820H, коды программы

(таблица 28), реализующей операцию:

HL ← (BC) + (DE).

Таблица 28 – Контрольная программа сложения 16 - разрядных чисел

Адрес

Команда

Операнд

Машинный код

Комментарий

0820

MOV

H, B

60

; Пересылка H ← (B)

0821

MOV

L, C

69

; Пересылка L ← (C)

0822

DAD

D

19

; HL ← (HL) + (DE)

0823

HLT

76

;останов

  1. Выполнить программу, предварительно задавая исходные значения в соответствии с таблицей 29, и проверить результаты (результат операции в паре рег. HL, биты условий в рег. F):

СТ0820 0823ВП.

Таблица 29 – Исходные данные для контрольной программы суммирования 16 - разрядных чисел

Вариант

1

2

3

4

5

(BC) исх.

0000

7FFF

8000

55AA

ECB9

(DE) исх.

7FFF

8000

8000

AA55

1347

(HL) рез.

7FFF

FFFF

0000

FFFF

FFFF

(F)

46

46

47

46

47

  1. Команды инкремента

INR ri – увеличение на 1 содержимого регистра: A, B, C, D, E, H или L;

INR M – увеличение на 1 содержимого ячейки памяти, адрес М в HL;

INX ri – увеличение на 1 содержимого пары регистров: BC, DE, HL или SP (указателя стека). В команде указывается идентификатор старшего регистра пары, например, INX B.

  1. Записать в память, начиная с адреса 0830H, код команды, которая указана в таблице 30.

Таблица 30 – Контрольная команда инкремента содержимого регистра E

Адрес

Команда

Операнд

Машинный код

Комментарий

0830

INR

E

1C

; E ← (E) + 1

0831

HLT

76

;останов

  1. Выполнить данную команду для следующих исходных значений регистра E (таблица 31) и проверить полученные результаты:

СТ0830 0831ВП.

Таблица 31 – Исходные данные для контрольной команды инкремента содержимого

регистра E

Вариант

1

2

3

4

5

(E) – исх.

00

0F

F0

FF

FE

(E) – рез.

01

10

F1

00

FF

(F)

02

12

82

56

86

  1. Записать в память, начиная с адреса 0840H, коды команд, которые указаны в таблице 32.

Таблица 32 – Контрольная программа инкремента содержимого ячейки памяти

Адрес

Команда

Операнд

Машинный код

Комментарий

0840

LXI

H, 0900H

21 00 09

; Загр. HL=0900H, адр. M

0843

INR

M

34

; M = (M) + 1

0844

HLT

76

;останов

  1. Выполнить данную последовательность команд для следующих исходных значений содержимого ячейки памяти (таблица 33) и проверить полученные результаты:

СТ0840 0844ВП.

Таблица 33 – Исходные данные для контрольной программы инкремента содержимого ячейки памяти

Вариант

1

2

3

4

5

(M) – по адр. 0900H, исх. Данные

00

0F

F0

FF

FE

(M) – по адр. 0900H, результаты

01

10

F1

00

FF

(F)

02

12

82

56

86

  1. Записать в память по адресу 0850H код команды, которая указана в таблице 34.

Таблица 34 – Контрольная команда инкремента пары регистров

Адрес

Команда

Операнд

Машинный код

Комментарий

0850

INX

D

13

; DE ← (DE) + 1

0851

HLT

76

;останов

  1. Выполнить команду для следующих исходных значений пары регистров DE (таблица 35) и проверить полученные результаты:

СТ0850 0851ВП.

Так как команда «инкремент пары регистров» не затрагивает биты признаков, значение регистра признаков остается равным значению регистра признаков в последнем задании.

Таблица 35 – Исходные данные для контрольной команды инкремента пары регистров

Вариант

1

2

3

4

5

(DE) – исх.

0000

0F0F

00FF

FFFF

FFFE

(DE) – рез.

0001

0F10

0100

0000

FFFF

(F)

02

12

82

56

86

Задание 3:

Написать с адреса 0A20H и выполнить программу заполнения массива памяти (0900H…0904H) данными соответственно (00…04), используя команды загрузки и инкремента пары регистров и регистра, а также пересылки. Программу (с учетом загрузки исходных данных) записать в таблицу, аналогичную по форме таблице 34. Проверить и записать в отчет полученные результаты.. Сделать выводы.