- •Методические указания к выполнению контрольных работ №1, 2 по дисциплине «Организация эвм и систем», включая лабораторное моделирование
- •1. Теоретическая часть
- •Порт ввода/вывода кр580 вв55 ( аналог Intel 8255)
- •Формат управляющего слова
- •2. Практика
- •1. Теоретическая часть.
- •Система команд
- •Библиографический список
Система команд
Каждый процессор имеет свою систему команд, определяемую его архитектурой. Команда представляет собой определенную последовательность двоичных разрядов и содержит код операции и информацию об операндах.
Формат команды – это совокупность сведений, которые для каждой команды процессора задают: ее длину, состав, назначение. Команды могут быть безадресные и адресные.
В системе команд любого процессора можно выделить следующие основные группы команд:
Пересылка данных между RAM и регистрами процессора.
Арифметико-логические операции.
Управление ходом выполнения программы.
Связь с подпрограммами.
Операции над регистровыми структурами (сдвиг данных в регистрах, очистка регистров и т.д.).
Группа команд, управляющих I/O (вводом/выводом).
Специальные системные команды.
Устройство управления процессора в строгой последовательности в рамках тактовых и цикловых временных интервалов осуществляет:
Выборку команды.
Её интерпретацию с целью анализа формата, служебных признаков и вычисления адреса операнда (операндов).
Установление временной последовательности всех функциональных управляющих сигналов.
Генерацию управляющих импульсов и передачу их на управляющие шины функциональных частей ПК.
Анализ результата операции и изменение своего состояния для определения адреса следующей команды.
Рассмотрим процесс выполнения команд МП на примере структурной схемы (без устройств ввода-вывода).
На данной схеме толстые линии – это магистрали адреса и данных, тонкие стрелки – сигналы от шины управления, пунктирные линии – непосредственное воздействие электрического сигнала на соответствующий компонент. Связи РОН и генератора не показаны.
Предположим также, что управляющие сигналы устройства управления соответствуют таблице 1.
Структурная схема процессора и взаимосвязи с основной памятью
Таблица 1. Управляющие сигналы устройств управления
№ линии |
Назначение линии |
1 |
Наращивание содержимого программного счетчика |
2 |
Чтение информации из программного счетчика и выдача ее на МА |
3 |
Запись информации с МД в регистр команд |
4 |
Чтение адреса операции из регистра команд и выдача этого адреса на МА |
5 |
Запись информации с МА в регистр адреса памяти |
6 |
Чтение содержимого ячейки памяти и выдача его на МД |
7 |
Запись информации с МД в ячейку памяти |
8 |
Запись информации с МД в операционный блок |
9 |
Прибавление 1 к содержимому в операционном блоке |
10 |
Инвертирование содержимого операционного блока |
11 |
Суммирование содержимого операционного блока с содержимым аккумулятора |
12 |
Запись информации из операционного блока в аккумулятор |
13 |
Чтение информации из аккумулятора и выдача её на МД |
Пример выполнения инструкции МП: выполнить команду чтения числа из заданной ячейки памяти, прибавить к нему единицу и сохранить результат в АС.
Таблица 2. Решение примера
Цикл генератора тактовой частоты, f |
Выполняемая микрооперация |
Активные линии МУ | |
Общее время выполнения команд |
I -cycle |
1. Адрес команды из программного счетчика пересылается в регистр адреса памяти |
2, 5 |
2. Код команды пересылается из ячейки памяти по МД в регистр команд. Наращивание содержимого программного счетчика |
3, 6 | ||
E -cycle |
3. Пересылка адреса операнда из регистра команд в регистр адреса памяти |
4, 5 | |
4. Пересылка операнда из ячейки памяти в операционный блок |
6,8 | ||
5. Выполнение заданной операции – прибавление 1. |
9 | ||
6. Запись результата операции в аккумулятор (АС), наращивание PC |
12,1 |
Лабораторная работа 3
Требования к программному моделированию:
При выполнении лабораторной работы необходимо отображать все процессы, протекающие в главных компонентах МПС и на шинах адреса, данных и управления.
Все операции над многоадресными инструкциями выполняются через регистр АС.
В интерфейсе программы необходимо показать начальные и текущие состояния основной памяти, программного счетчика, регистра адреса памяти, регистра команд, АС, операционного блока и активные сигналы шины управления.
Состояние программного счетчика можно представлять в десятичном, двоичном или шестнадцатеричном коде.
Вариант 1. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А= 1010102. Адрес числа АС6h.
В= 1910. Адрес числа АС8h.
Состояние программного счетчика на момент выполнения программы FAh.
Сохранить результат в памяти.
Вариант 2. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=1710. Адрес числа АDFАh.
С=1810. Адрес числа ВA5Аh.
Состояние программного счетчика на момент выполнения программы 53610.
Результат поместить по адресу АFFВh.
Вариант 3. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=2010. Адрес числа A8Fh.
В=1710. Адрес числа A90h.
С=11002. Адрес числа А92h.
Поместить результат по адресу АA9h.
Состояние программного счетчика на момент выполнения программы 157810.
Вариант 4. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения:
Выполнить программу решения выражения:
А=1510. Адрес числа 8AАh.
В=3810. Адрес числа 8АCh.
С=510. Адрес числа 8AEh.
Состояние программного счетчика на момент выполнения программы 354810.
Сохранить результат в AC.
Вариант 5. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=1310. Адрес числа F5AСh.
В=1710. Адрес числа F5AEh.
Состояние программного счетчика на момент выполнения программы 95410.
Сохранить результат в памяти по адресу FA01h.
Вариант 6. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=1010112. Адрес числа B4F5h.
В= 0100112. Адрес числа B4F7h.
Состояние программного счетчика на момент выполнения программы 45310.
Сохранить результат по адресу B2FFh.
Вариант 7. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=2910. Адрес числа EF3h.
В=3410. Адрес числа FF5h.
Состояние программного счетчика на момент выполнения программы 7Fh.
Сохранить результат по адресу FF4h.
Вариант 8. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения:
В=2210. Адрес числа F25h.
С=3510. Адрес числа F27h.
Состояние программного счетчика на момент выполнения программы 82210.
Сохранить результат по адресу F4Bh.
Вариант 9. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения:
В=10112. Адрес числа 2FAh.
С=1000102. Адрес числа 2FCh.
Состояние программного счетчика на момент выполнения программы 35210.
Сохранить результат по адресу 2FAh.
Вариант 10. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=1110. Адрес числа 8DEh.
В=1610. Адрес числа 901h.
С=1810. Адрес числа 903h.
Состояние программного счетчика на момент выполнения программы 475310.
Сохранить результат в AC.
Вариант 11. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения: .
А=101012. Адрес числа 7BAh.
В=101102. Адрес числа 7BCh.
Состояние программного счетчика на момент выполнения программы 5FFh.
Сохранить результат по адресу 7BCh.
Вариант 12. Смоделировать выполнение процессором пошаговых действий при выполнении программы решения выражения:
А=0101102. Адрес числа F534h.
С=1000112. Адрес числа F783h.
Состояние программного счетчика на момент выполнения программы 875610.
Сохранить результат по адресу FЕ05h.