Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Турчин Д.Е. АЭВМиС. Практикум 2012 (ИТ).doc
Скачиваний:
92
Добавлен:
10.05.2015
Размер:
1.31 Mб
Скачать

3.2.4. Варианты заданий

Таблица 3.4

Варианты заданий

Номер

варианта

Номер

функции

a

Номер

варианта

Номер

функции

a

i

j

i

j

1

2

1

12

8

8

6

30

2

4

3

20

9

2

6

25

3

8

4

15

10

5

7

50

4

6

1

12

11

2

4

18

5

5

2

50

12

8

1

12

6

7

3

15

13

7

6

25

7

6

2

11

14

1

4

5

Таблица 3.5

Функции и область изменения их аргументов

k

Fk(x)

k

Fk(x)

1

2 ≤ x ≤ 12

5

50 ≤ x ≤ 75

2

1 ≤ x ≤ 50

6

1 ≤ x ≤ 30

3

–50 ≤ x ≤ – 15

7

–50 ≤ x ≤ 50

4

–20 ≤ x ≤ 20

8

1 ≤ x ≤ 90

3.2.5. Пример выполнения работы

В качестве примера рассмотрим программу вычисления функции

причем х вводится с устройства ввода IR, результат у выводится на OR. Граф-схема алгоритма решения задачи показана на рис. 3.1.

Оценив размер программы примерно в 20 – 25 команд, отведем для области данных ячейки ОЗУ, начиная с адреса 030. Составленная программа с комментариями представлена в виде табл. 3.6.

Рис. 3.1. Граф-схема алгоритма

Таблица 3.6

Пример программы

Адрес

Команда

Примечание

Мнемокод

Код

000

IN

01 0 000

Ввод х

001

WR 30

22 0 030

Размещение х в ОЗУ (030)

002

SUB #16

24 1 016

Сравнение с границей (х – 16)

003

JS M1

13 0 010

Переход по отрицательной разности на метку M1

004

RD 30

21 0 030

Вычисление по первой формуле

005

SUB #11

24 0 011

006

WR 31

22 0 031

007

MUL 31

25 0 031

008

SUB #125

24 1 125

009

JMP M2

10 0 020

Безусловный переход на метку M2

010

M1: RD 30

21 0 030

Вычисление по второй формуле

011

MUL 30

25 0 030

012

WR 31

22 0 031

013

RD 30

21 0 031

014

MUL #72

25 1 072

015

ADD 31

23 0 031

016

ADI 106400

43 0 000

017

106400

018

DIVI 100168

46 0 000

019

100168

020

M2: OUT

02 0 000

Вывод результата

021

HLT

09 0 000

Стоп

В данной программе используются двухсловные команды с непосредственной адресацией (ADI 106400, DIVI 100168), позволяющие оперировать отрицательными числами и числами по модулю, превышающими 999, в качестве непосредственного операнда.

3.2.6. Содержание отчета

Отчет по лабораторной работе должен содержать следующие разделы:

1) формулировка варианта задания;

2) граф-схема алгоритма решения задачи;

3) программа в форме табл. 3.6;

4) последовательность состояний регистров ЭВМ при выполнении программы в режиме шаг для одного значения аргумента;

5) результаты выполнения программы для нескольких значений аргумента, выбранных самостоятельно

3.2.7. Контрольные вопросы

1. Какие команды называют командами передачи управления и как они работают?

2. Какие из команд программной модели ЭВМ относятся к командам условного перехода?

3. Что называют непосредственной адресацией и каковы ее достоинства и недостатки?

4. Каковы ограничения, накладываемые на использование прямой адресации?

5. Как, используя систему команд модели учебной ЭВМ, произвести сравнение двух чисел?

6. С какими операндами позволяют работать арифметические команды ADI, SBI, MULI, DIVI?

3.3. Лабораторная работа № 3. Программирование цикла с переадресацией

3.3.1. Цель работы

Цель работы – ознакомление с использованием косвенной адресации для реализации повторных вычислений.

3.3.2. Основные теоретические сведения

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

При косвенной адресации с помощью ограниченного адресного поля команды указывается адрес ячейки, содержащей полноразрядный адрес операнда. Главным достоинством косвенной адресации является возможность проводить вычисления, когда адреса операндов заранее неизвестны и появляются лишь в процессе решения задачи. Эта особенность обусловлена возможностью менять исполнительный адрес операнда (Аисп) при неизменном адресном поле команды (Ак) (рис. 3.2, а). Такой прием упрощает обработку массивов и передачу параметров подпрограммам.

Рис. 3.2. Схема косвенной адресации: а) – обычной; б) – регистровой

Недостатками косвенной адресации являются:

• потеря времени на двойное обращение к памяти – сначала за адресом, потом – за операндом.

• использование лишней ячейки памяти для хранения исполнительного адреса операнда.

Разновидностью косвенной адресации является косвенная регистровая адресация, отличие которой от косвенной состоит в том, что исполнительный адрес операнда хранится не в ячейке оперативной памяти, а в одном из регистров общего назначения (рис. 3.2, б).

Достоинства и ограничения косвенной регистровой адресации те же, что и у обычной косвенной регистрации, но благодаря тому, что косвенный адрес хранится не в памяти, а в регистре, для доступа к операнду требуется на одно обращение к памяти меньше.