
- •«Кузбасский государственный технический университет
- •1. Описание цикла лабораторных работ
- •2. Описание архитектуры учебной эвм
- •2.1. Программные модели для изучения архитектуры эвм
- •2.2 Структура учебной эвм
- •2.3. Представление данных в модели
- •2.4. Система команд учебной эвм
- •2.5. Состояния и режимы работы учебной эвм
- •2.6. Интерфейс пользователя
- •2.7. Микрокомандный уровень учебной эвм
- •2.8. Внешние устройства
- •2.8.1 Общая характеристика моделей внешних устройств
- •2.8.2 Контроллер клавиатуры
- •2.8.3. Дисплей
- •2.8.4. Блок таймеров
- •2.8.5. Тоногенератор
- •2.8.6. Блок индикаторов
- •2.9. Подсистема прерываний
- •2.9. Программная модель кэш-памяти
- •2.10. Программная модель alu-1
- •2.10.1. Общие сведения о программной модели alu-1
- •2.10.2. Операционный автомат
- •2.10.3. Регистры операционного автомата
- •2.10.4. Арифметико-логический блок
- •2.10.5. Блок сдвигателя
- •2.10.6. Счетчик
- •2.10.7. Микрооперации и логические условия
- •2.10.8. Управляющий автомат с программируемой логикой (уапл)
- •3. Лабораторные работы
- •3.1. Лабораторная работа № 1. Основы работы с программной моделью учебной эвм
- •3.1.1. Цель работы
- •3.1.2. Общие положения
- •3.1.3. Последовательность выполнения работы
- •3.1.4. Варианты заданий
- •3.1.5. Пример выполнения работы
- •3.1.6. Содержание отчета
- •3.2.3. Последовательность выполнения работы
- •3.2.4. Варианты заданий
- •3.2.5. Пример выполнения работы
- •3.2.6. Содержание отчета
- •3.3.3. Последовательность выполнения работы
- •3.3.4. Варианты заданий
- •3.3.5. Пример выполнения работы
- •3.3.6. Содержание отчета
- •3.3.7. Задания повышенной сложности
- •3.3.8. Контрольные вопросы
- •3.4. Лабораторная работа №4. Подпрограммы и стек
- •3.4.1. Цель работы
- •3.4.2. Общие положения
- •3.4.3. Последовательность выполнения работы
- •3.4.4. Варианты заданий
- •3.4.5. Пример выполнения работы
- •3.4.6. Содержание отчета
- •3.5.5 Пример выполнения работы
- •3.5.4 Варианты заданий
- •3.5.5 Пример выполнения работы
- •3.5.6. Содержание отчета
- •3.5.7. Задания повышенной сложности
- •3.5.8. Контрольные вопросы
- •3.6. Лабораторная работа №6. Программирование внешних устройств
- •3.6.1. Цель работы
- •3.6.2. Общие положения
- •3.6.3. Последовательность выполнения работы
- •3.6.4. Содержание отчета
- •3.6.5. Варианты заданий
- •3.6.6. Пример выполнения работы
- •3.6.7. Задания повышенной сложности
- •3.6.8. Контрольные вопросы
- •3.7. Лабораторная работа №7. Принципы работы кэш-памяти
- •3.7.1. Цель работы
- •3.7.2. Общие положения
- •3.7.3. Последовательность выполнения работы
- •3.7.4. Содержание отчета
- •3.7.5. Варианты заданий
- •3.7.6. Контрольные вопросы
- •Рекомендуемая литература
- •Лабораторный практикум по архитектуре эвм и систем
- •230201 «Информационные системы и технологии»
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 |
|
5 |
|
2 |
|
6 |
|
3 |
|
7 |
|
4 |
|
8 |
|
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, б).
Достоинства и ограничения косвенной регистровой адресации те же, что и у обычной косвенной регистрации, но благодаря тому, что косвенный адрес хранится не в памяти, а в регистре, для доступа к операнду требуется на одно обращение к памяти меньше.