Методические указания к лабораторной работе CUU-2016 (1065526)
Текст из файла
МГТУ им. Н.Э.Баумана
Методические указания по выполнению лабораторных работ на эмуляторе CUU-2016
по курсу «Вычислительные средства АСОИУ»
2016
Оглавление
1. Теоретическая часть. 2
1.1. Используемые обозначения. 2
1.2. Введение. 2
1.3. Состав ЦУУ. 3
1.4. Машинные команды. 4
1.5. Условия перехода. 7
1.6. Микрооперации. 8
2. Работа с макетом. 10
2.1 Запуск макета. 10
2.2 Начало работы. 10
2.3 Создание нового файла. 10
2.4 Открытие существующего файла. 10
2.5 Сохранение файла. 11
2.6 Работа с таблицей переходов. 12
2.7 Работа с ОП. 12
2.8 Выполнение программы. 13
2.9 Выход. 13
3. Порядок выполнения работы. 14
4. Варианты. 17
5. Примеры. 20
1. Теоретическая часть.
1.1. Используемые обозначения.
ОП – оперативная память.
КОП – код операции.
РК – регистр команд.
РОН – регистр(ы) общего назначения.
А – аккумулятор.
В – буферный регистр.
РС – программный счетчик.
SP – указатель стека.
РИ – индексный регистр.
РА – регистр адреса.
РВ – регистр возврата.
R – адрес(номер) одного из РОН / адрес слова в ОП – для модификации адресов.
R1/R2 – адрес (номер) одного из РОН.
S1/S2/S3 – адрес в ОП.
Х4, X3, X2, X1 – флаги разрядов КОП.
Z, N, C, P – флаги результата операции.
Y<число> - управляющий сигнал.
a<число> - состояние.
D6 – D1 – сигналы возбуждения.
ПЛМ – программируемая логическая матрица.
Каждое из указанных понятий далее рассмотренно подробно.
1.2. Введение.
Любое операционное устройство всегда можно представить состоящим из двух частей: операционной и управляющей.
Центральное устройство управления (ЦУУ) – управляющая часть процессоров. ЦУУ процессоров различных ЭВМ отличаются друг от друга структурой и выполняемыми функциями.
Типовые функции ЦУУ:
-
Формирование начального(загрузочного) адреса программы.
-
Выборка команды из ОП и ее хранение до выборки следующей команды.
-
Расшифровка КОП для выбора соответствующей микропрограммы.
-
Выборка операндов из А, РОН или ОП.
-
Запись результата в РОН или ОП.
-
Формирование адреса следующей команды.
-
Контроль выполнения команд (ошибки в КОП, переполнение и т.д.).
-
Остановка процессора.
-
Обработка прерываний.
1.3. Состав ЦУУ.
-
Регистры
-
Регистр команд(РК) – для приема и хранения машинных команд(см. п.1.4. – Машинные команды). Размер – 4 байта.
-
Программный счетчик(РС) – для хранения адреса ОП текущей команды (см. п.1.4. – Машинные команды).
-
Регистр адреса(РА) – для хранения адреса ОП, по которому происходит чтение и запись некоторой информации.
-
Регистр возврата(РВ) – для хранения адреса возврата в основную программу при обращении к подпрограмме. Иногда для этого используется РОН, стек или ОП.
-
Индексный регистр(РИ) – для хранения индекса массива. Иногда для этого используется РОН или ОП.
-
Аккумулятор(А), буферный регистр(В) – для хранения адресов, операндов и результатов операций.
-
Указатель стека(SP) – адрес первой свободную ячейку в стеке.
-
Регистры общего назначения(РОН) – для хранения любых возможных данных. Имеют номера от 0 до 15.
-
Регистры РС, РА, РВ, РИ, А, В, SP и РОН занимают 1 байт. Следует понимать, что физически они ничем не отличаются, в каждом из них технически возможно хранить любые данные, а их назначение обусловлено давним соглашением.
-
Стек – для запоминания текущего состояния процессора. ЦУУ знает только адрес первой свободной ячейки стека (хранится в SP).
-
Схема инкремента–декремента(СИД) – используется для увеличения или уменьшения значения операнда на 1.
-
Управляющий автомат(УА)
Взаимодействие устройств между собой и с ОП происходит через шины Ш1, Ш2, Ш3.
Структурная схема ЦУУ представлена на рисунке 1.

Рис.1. Структурная схема ЦУУ.
1.4. Машинные команды.
Машинная команда представляет собой некоторое количество байтов в ОП(объем ОП – 256 байт).
Первый байт каждой команды состоит из КОП(4 бита) и R(4 бита). При чтении команды из ОП флаги X4, X3, X2, X1 устанавливаются соответственно разрядам КОП в двоичном коде, где Х4 – старший разряд, Х1 – младший.
R используется для модификации адресов.
-
Если индекс хранится в РОН, в R указывается номер РОН.
-
Если индекс хранится в ОП, в R указываются последние 4 бита адреса(индекс хранится по адреcу F.R).
-
Если для хранения индекса используется индексный регистр, в R записывается 0.
В последующих байтах хранятся адреса или операнды. Количество адресов/операндов определяет адресность команды. Команды могут быть одно-, двух-, трехадресными и безадресными.
Типы адресации:
-
Прямая – указываются адреса операндов в ОП.
-
Непосредственная – указываются операнды.
-
Косвенная регистровая – указываются адреса(номера) РОН, в которых хранятся адреса операндов в ОП.
-
Прямая регистровая – указываются адреса(номера) РОН, в которых хранятся операнды.
Команды считываются из ОП в регистр команд(РК) с помощью одного из управляющих сигналов:
Y62 (РК[31:16] := ОП[PA]) – для одноадресных команд.
Y63 (РК[31:8] := ОП[PA]) – для двухадресных команд.
Y64 (РК[31:16] := ОП[PA]) – для трехадресных команд.
Для безадресных команд регистр команд не используется.
Пример: Рассмотрим 2 байта, расположенных в ОП по адресам 1А и 1В, в первом из которых записано число 12, а во втором 3F (в оперативной памяти используются только шестнадцатиричные числа).
Данные байты в совокупности могут представлять собой следующие команды:
-
Одноадресную команду с прямой адресацией (3F – адрес операнда в ОП).
-
Одноадресную команду с непосредственной адресацией (3F – операнд).
-
Двухадресную команду с косвенной регистровой адресацией(в РОН[3] хранится адрес ОП первого операнда, в РОН[15] – второго).
-
Команду с прямой регистровой адресацией(в РОН[3] хранится первый операнд, в РОН[15] – второй)
R = 2, следовательно используется команда с модификацией адресов и индекс
хранится либо в РОН[2], либо в ОП[2F].
КОП = 1 (0001 в двоичном коде).
Для считывания команды из ОП запишем в регистр адреса (РА) адрес первого байта(1А) и выставим управляющий сигнал Y62. Будет выполнена микрооперация РК[31:16] = ОП[1А], в результате которой:
РК = 12 3F 00 00, X4 = 0, X3 = 0, X2 = 0, X1 = 1.
Типовые машинные команды, используемые в работе:
S1,S2,S3 – занимают 1 байт, хранят операнды/адреса в ОП.
R1,R2 – занимают ½ байта, хранят адреса(номера) РОН.
* - некоторая операция.
И – индекс, хранится в РИ, ОП[F.R] или РОН[R] в зависимости от варианта.
Программный счетчик – хранится в PC или РОН в зависимости от варианта.
Адрес возврата – хранится в SP, PB, ОП[F.R] или РОН[R] в зависимости от варианта.
-
Трехадресная команда с прямой адресацией и модификацией.
ОП[S3 + И] := ОП[S1 + И] * ОП[S2 + И]
-
Двухадресная команда с прямой адресацией и модификацией.
ОП[S1 + И] := ОП[S1 + И] * ОП[S2 + И]
-
Одноадресная команда с прямой адресацией и модификацией.
(ОП[S1 + И] и/или А) := А * ОП[S1 + И]
-
Двухадресная команда с косвенной адресацией и модификацией.
ОП[РОН[R1] + И] := ОП[РОН[R1] + И] * ОП[РОН[R2] + И]
-
Одноадресная команда с косвенной адресацией и модификацией.
(ОП[POH[R1] + И] и/или A) := А * ОП[POH[R1] + И]
-
Команда с прямой регистровой адресацией.
(РОН[R1] и/или А) := РОН[R1] * POH[R2]
Используется для установки начальных значений адресов, индексов и т.д. S1 записывается в РОН[R]/РИ/ОП[F.R]/… в зависимости от предназначения команды.
Программный счетчик := адрес возврата.
Программный счетчик := S1
-
Переход с возвратом(обращение к подпрограмме).
PC := S1
-
Условный переход.
П рограммный счетчик := S1, если условие выполнено.
Переход к следующей команде, если условие не выполнено(программный счетчик увеличивается на 1).
(См п. 1.5. - Условия перехода.). Аналогично можно использовать двух- и трехадресные команды для более сложных ветвлений.
-
«СТОП»
Завершение программы.
1.5. Условия перехода.
Для организации ветвления используются 9 флагов:
-
Х4, Х3, Х2, Х1 – соответствуют битам КОП текущей команды.
-
Z – нулевой результат.
-
N – отрицательный результат.
-
С – перенос.
-
P – переполнение.
-
B – запуск.
Z, N, C, P устанавливаются в соответствии с результатом операции в АЛУ.
Условия перехода задаются различными комбинациями флагов. Условием может быть как положительное, так и отрицательное значение флага.
B может использоваться только отдельно от других флагов.
Для условного перехода необходимо указать исходное состояние(состояние, в котором ЦУУ проверит условия), следующее состояние(состояние, в которое перейдет ЦУУ при выполнении условий) и сами условия.
Пример 1: В данном фрагменте ЦУУ перейдет в состояние 2 при положительном результате операции, в состояние 3 – при нулевом, в состояние 4 – при отрицательном.
Рис.2. Условия перехода, пример 1.
Пример 2. В данном фрагменте ЦУУ перейдет в состояние 2 при КОП = 1, в состояние 3 – при КОП = 2.
Рис.3. Условия перехода, пример 2.
При одновременном задании условий перехода и управляющих сигналов, сначала будут выполнены микрооперации, соответствующие управляющим сигналам, затем проверены условия.
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.