Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МИУС методичка.doc
Скачиваний:
53
Добавлен:
30.03.2016
Размер:
527.36 Кб
Скачать

К

Признак «Чт» MEM R на ШУ

Признак «Чт» MEM R на ШУ

Прием в RI кода операции 3А Н

Дешифрация кода операции

РС: = РС + 1

Передача адреса 0900Н из РС на ША

Передача ст. байта адреса в RG W

РС: = РС + 1

Признак «Чт» MEM R на ШУ

Передача адреса 0901Н из РС на ША

Передача мл.байта адреса в RG Z

(RGA) := (W,Z)

Передача адреса из RGA на ША

Передача адреса 0902Н из РС на ША

Признак «Зп» mem w наШу

((0750Н)) := (А)

РС: = РС + 1

омандаLDA addr.КонкретноLDA0750Н. Переслать содержимое аккумулятора в ячейку с адресом 0750Н. Команда занимает в памяти три байта. Начальный адрес команды 0900Н. Машинный код – 3АН.

Библиографический список

  1. Коренев В.В., Киселев А.В. Современные микропроцессоры. М., «Нолидж». 1998.

  2. Токхайм Р. Микропроцессоры. Курс и упражнения. М., Энегроатомиздат, 1988.

  3. Юров В.А. Assembler. CПб, Питер, 2002.

Задание на контрольную работу

В контрольной работе необходимо по заданному варианту составить программу на языке Assembler для выполнения операции сложения двух чисел. Вариант задания определяется по последней цифре учебного шифра. Варианты заданий представлены в таблице 4.

В контрольной работе необходимо:

1.Заданные в десятичной системе счисления операнды перевести в 16-ричную систему счисления.

2. Составить машинно-ориентированный алгоритм выполнения операции сложения двух чисел.

3. Составить программу выполнения операции сложения двух чисел на языке Assembler с комментариями и указать способы адресации каждой команды

4. Сделать контрольный пример и определить содержимое регистра признаков.

Таблица 4

Вари-ант

1

Значения

операндов

2

Как заданы

операнды

3

С помощью каких команд происходит обмен

4

Куда и как записываются результаты

5

1

29

-52

Data

0800 Н

MVI B, data

MOV D,M

0A00 H

STAX rp

2

-34

-19

0750 H

data

LDAX BC

MVI M, data

0950 H

STA addr

3

-27

41

Data

Data

MVI B, data

MVI C, data

0800 H

MOV M, A

4

37

-52

0800 H

0900 H

MOV B, M

MOV C, M

0950 H

STAX rp

5

46

-19

Data

0900 H

MVI C, data

LDAX DE

0850 H

STA addr

6

54

27

0800 H

0900H

MOV C, M

LDAX DE

0850 H

STAX rp

7

36

-48

Data

Data

MVI B, data

MVI C, data

0840 H

MOV M, A

8

52

-17

0950H

0900 H

LDAX DE

MOV C, M

0980 H

STA addr

9

-23

18

0900H

data

MVI M,data

MVI C,data

0950H

STAX rp

10

43

-76

0920 H

0930 H

MOV R, M

LDAX DE

0980 H

MOV M, R

Пример. Написать программу сложения двух операндов, заданных следующим образом.

1

№/№

2

71

-47

3

0920 Н

Data

4

MOV C, M

MVI B, data

5

0970 H

STA addr

Операнд 71D задан в ячейке памяти с адресом 0920Н; операнд ( -47D) задается вторым байтом в коде команды. Для организации информационного обмена внутри процессора необходимо использовать команды из столбца 4. Результат необходимо отправить в ячейку памяти с адресом 0970Н, используя команду STA addr.

  1. 71D = 47Н; -47D = E1H.

  2. Алгоритм выполнения операции выглядит следующим образом.

(H,L):= 0920H

((H,L)):= 47H

(B):= E1H

(C):= ((H,L))

(A):= (B)

(A):= (A) + (C)

((0970H)):= (A)

Пусть программа расположена в памяти с начального адреса 0800Н. Программа на языке Assembler имеет вид:

Адрес

мнемоника

комментарий

0800H

0801H

0802Н

LXI H 0920H

Записать в регистровую пару H,L

адрес 0920Н. Команда с непосредственной адресацией по приемнику информации, с регистровой адресацией по приемнику информации.

0803Н

0804Н

MVI M,47H

Записать в ячейку памяти с адресом 0920Н число 47Н. Команда с непосредственной адресацией по источнику информации, с косвенной адресацией по приемнику информации.

0805Н

0806Н

MVI B, E1H

Записать в регистр В число Е3Н. Команда с непосредственной адресацией по источнику информации, с косвенной адресацией по приемнику информации.

0807Н

MOV C, M

Переслать в регистр С число из ячейки с адресом 0920Н. Команда с косвенной адресацией.

0808Н

MOV A,B

Переслать в аккумулятор содержимое регистра В. Команда с регистровой адресацией.

0809Н

ADD C

Сложить содержимое аккумулятора с содержимым регистра С. Результат оставить в аккумуляторе. Команда с регистровой адресацией по источнику информации, с неявной адресацией по приемнику.

080АН

080ВН

080СН

STA 0970H

Переслать результат в ячейку памяти с адресом 0970Н. Команда с прямой адресацией.

080DH

NOP

Пустая команда. Конец программы.

Контрольный пример.

+71D = 01000111В

-47D = 11010001В

  • = 00011000B = +24D

Содержимое регистра признаков:

0

0

0

0

0

1

1

1

(RS) = 07. Сравнить со значением в Приложении 2.