Изучение структуры и функций блока микропрограммного управления, микропрограммирование обработки данных, записанных в ОП, с использованием циклов и подпрограмм

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

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

Министерство образования РФ

РГРТА

Кафедра ЭВМ

Лабораторная работа №2.

Работа с памятью.

 Подпрограммы и циклы.

                                                                                Выполнили:

                                                                                Студенты группы 041

                                                                                Козлов Е.П., Хамидулин А.Р.

                                                                                (бригада №4)

                                                                                Проверил:

                                                                                Волковыский В.Л.

Рязань 2001

Цель работы:     изучение структуры и функций блока микропрограммного

управления, микропрограммирование обработки данных, записанных в ОП, с использованием циклов и подпрограмм.

Задание:               определить номера H1 и H2 первых элементов двух массивов, равных M и N соответственно, и найти сумму этих элементов. Определение номера элемента оформить как подпрограмму.

Исходные данные и результаты:

         Основная микропрограмма начинается с адреса 0, подпрограмма с адреса 19.

Массив A из четырех элементов [A = (1 2 3 4)] записан по адресу 32.

Массив B из четырех элементов [B = (5 6 7 8)] записан по адресу 64.

Число M (2) в регистре SI, число N (7) в регистре DI.

         Назначение регистров, используемых в подпрограмме:

BX – хранит сначала первый, а затем последующие элементы массива.

DX – хранит копию счетчика циклов.

CX – хранит сравниваемое число.

AX – формирование адреса следующего элемента.

         Назначение регистров, используемых в основной программе:

AX – хранит начальный адрес массива.

SI – хранит число M.

CS – хранит номер найденного элемента массива A.

SS – хранит найденный элемент массива A.

DI – хранит число N.

DS – хранит номер найденного элемента массива B.

ES – хранит найденный элемент массива B; затем сумму найденных элементов массивов A и B.

         Результаты записывается в регистры:

CS – номер найденного элемента массива A.

DS – номер найденного элемента массива B.

ES – сумма найденных элементов массивов A и B.

Алгоритм (блок-схема):


Блок-схема: знак завершения: конец


Описание программы.

1.  [0] Начальный адрес массива А заносится в регистр AX и ARAM.

2.  [1] Переслать значение регистра SI (число М) в регистр CX.

3.  [2] Обращение к подпрограмме по адресу [19].

4.  [3] Переслать значение регистра DX ( одновременно счетчик циклов и номер i-го элемента) в регистр CS.

5.  [4] Переслать значение регистра BX (i-ый элемент массива) в регистр SS.

6.  [5] Начальный адрес массива B заносится в регистр AX и ARAM.

7.  [6] Переслать значение регистра DI (число N) в регистр CX.

8.  [7] Обращение к подпрограмме по адресу [19].

9.  [8] Переслать значение регистра DX ( одновременно счетчик циклов и номер i-го элемента) в регистр DS.

10. [9] Переслать значение регистра BX (i-ый элемент массива) в регистр ES.

11. [A] Сложить значения регистров SS и ES (т.е. найденные элементы массивов A и B), результат записать в регистр ES. Остановка работы и формирование признака STOP.

Описание подпрограммы.

1.  [19] Первый элемент массива читается в регистр BX, а в счетчик заносится число циклов из поля CONST.

2.  [1A] В DX копируется число циклов из поля CONST.

3.  [1B] Сравниваются значения регистров BX и CX (т.е. i-й элемент массива сравнивается с числом M). Если результат положительный (значения равны), то происходит условный возврат из подпрограммы по адресу [3], если нет, то продолжить выборку команд в естественном порядке.

4.  [1C] DX = DX  + 1

5.  [1D] К содержимому AX прибавляется 2, и полученная сумма засылается в AX и ARAM как адрес следующего элемента.

6.  [1E] (i + 1)-й элемент массива читается в регистр BX, повторение цикла и переход по адресу [1B].

Основная программа:

Таблица №1

Адрес МК

Поле

Значение
Функция

0

B

SRC

DST

WM

CONST

0

5

4

2

32

1

A

B

DST

6

1

4

2

JFI

CHA

CONST

4

1

19

3

A

B

DST

2

8

4

4

A

B

DST

3

9

4

5

SRC

DST

WM

CONST

5

4

2

64

6

A

B

DST

7

1

4

7

JFI

CHA

CONST

4

1

19

8

A

B

DST

2

A

4

9

A

B

DST

3

B

4

10

A

B

ALU

DST

JFI

9

B

3

4

5

Подпрограмма:

Таблица №2

Адрес МК
Поле

Значение

Функция

19

A

B

MEM

DST

CHA

CONST

0

3

5

1

6

4

1A

A

B

SRC

DST

CONST

0

2

5

4

1

1B

A

B

ALU

CCX

CC

CHA

3

1

2

1

1

5

1C

A

B

SRC

ALU

DST

CONST

0

2

5

3

                 4

                 1

1D

SRC

ALU

DST

WM

CONST

5

3

4

2

2

1E

A

B

MEM

DST

CHA

CONST

0

3

5

1

4

1B

Трасса:

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

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

Предмет:
Информатика
Тип:
Отчеты по лабораторным работам
Размер файла:
49 Kb
Скачали:
0