Программная модель процессора


Выполнение программы сводится к выполнению машинных команд в заданной последовательности. Каждая команда прямо или косвенно должна однозначно определять следующую информацию::

- Операцию, которую процессор должен выполнить над данными. Данные, участвующие в операции и результат операции принято называть операндами. Процессор может выполнять строго определенный набор операций. Каждой операции присвоен свой уникальный номер, называемый кодом операции (КОП).

- Исполнительные адреса операндов.

- Адрес следующей команды.

Для указания этой информации каждой команде при разработке процессора назначается свой формат. Формат команды определяет ее разбиение на отдельные смысловые поля, длину этих полей и способ кодирования информации в каждом из полей.

В предельном случае команда должна содержать пять полей, показанных на Рис.2. Поле КОП определяет код операции, а остальные четыре поля – адреса операндов и следующей команды

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

Устройство управления (УУ) предназначено для декодирования команды, которое заключается в извлечении информации из полей команды в соответствии с форматом, определения адресов операндов и адреса следующей команды.

Операционное устройство (ОУ) предназначено для выполнения над операндами операции, предписанной полем КОП.

 

 

Рассмотрим основные фазы выполнения машинной программы.

1. Для запуска программы в устройство управления заносится адрес первой команды.

2. По адресу команды из памяти считывается содержимое ячейки памяти и передается в устройство управления.

3. Устройство управления выделяет поля команды.

4. На основании адресной части определяются адреса операндов.

5. По адресам операндов считывается содержимое указанных ячеек памяти и направляется в операционное устройство.

6. Операционное устройство выполняет заданную операцию.

7. Результат операции сохраняется в ячейке памяти по указанному адресу.

8. Устройство управления определяет адрес следующей команды.

Рассмотренные действия повторяются с пункта 2 до выполнения специальной команды СТОП, предписывающей завершение программы.

Помимо результата многие команды формируют признак результата ПР. Типичными признаками результата являются:

- Результат равен нулю

- Результат меньше нуля

- Результат больше нуля

В систему команд могут включаться специальные команды сравнения, основным назначением которых является формирование признака результата. Типичными признаками для команд сравнения являются признаки:

- Операнды равны по значению

- Значение первого операнда меньше значения второго операнда

- Значение первого операнда больше значения второго операнда.

Сформированный признак результата может анализироваться специальными командами управления для принятия решения в процессе вычисления адреса следующей команды в ветвящихся алгоритмах.

Процессор может иметь свою собственную память, используемую для кратковременного хранения информации. Она состоит из специальных электронных узлов – регистров. Разрядность регистров обычно совпадает с разрядностью машинного слова. Регистры доступны программе и могут использоваться ею. для хранения промежуточных результатов. Такого рода регистры называются регистрами общего назначения (РОН). Каждый регистр имеет номер, который может указываться в качестве адреса в команде. Адреса регистров не совпадают с адресами основной памяти.

По сравнению с основной памятью, объем которой может достигать нескольких Гб, объем регистровой памяти невелик, порядка десятков РОН.. Время же считывания и записи информации для РОН на несколько порядков меньше, чем для ячейки основной памяти.

Основная память может быть распределена для одновременного размещения в ней нескольких программ. Регистры же выделяются в монопольное использование выполняющейся в данный момент программы

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

Рассмотрим пример. Пусть ЭВМ имеет основную память объемом 1Мб, а процессор способен выполнять до двухсот различных операций, Длина каждого адресного поля составит 20 бит (220 = 1Мб), а поля КОП – 8бит. Длина команды 8+4*20 =88 бит. C другой стороны, машинное слово современных процессоров, как правило, не превышает 32 бита. Современные ЭВМ имеют значительные объемы памяти, измеряемые сотнями мегабайт и гигабайтами, что еще более обостряет проблему.

Сокращение длины команды достигается двумя способами:

· Сокращение количества адресных полей.

· Сокращение длины адресных полей.

При первом способе некоторые адреса определяются по умолчанию (косвенно) и в команде не указываются. Сокращение количества адресных полей оборачивается увеличением количества команд в программе.

При втором способе в команде указывается не исполнительный адрес, а так называемый логический адрес (АЛ). Логический адрес содержит информацию, на основе которой можно вычислить исполнительный адрес. Сокращение длины адресных полей в общем случае приводит к увеличению времени выполнения программы, т.к. необходимо дополнительные действия по вычислению адресов.



Дата добавления: 2019-02-08; просмотров: 1027;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.