Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КСТиАК - Конспект лекций / Лекция6Структура ЭВМ.doc
Скачиваний:
74
Добавлен:
26.03.2015
Размер:
207.87 Кб
Скачать
    1. Команды эвм и структура процессора.

Команда ЭВМ первоначально содержала следующую информацию (рис 1.3, а) 1. Код операции, указывающий операцию, которую должна выполнить ЭВМ (сложение, вычитание, умножение сравнение, изменение знака и т. п.).

2. Адреса двух операндов — аргументов операции, например слагаемых, уменьшаемого и вычитаемого, сомножителей и т.п. Если какой-либо из операндов является константой, то вместо его адреса в команде может быть задано само значение операнда. Однако это обстоятельство должно быть отражено в коде операции, чтобы ЭВМ использовала соответствующую часть команды в качестве операнда, а не адреса ячейки памяти, в которой хранится этот операнд.

3. Адрес ячейки памяти, в которую должен быть помещен результат операции.

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

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

Рис 1.3 Форматы команд:

а – четырехадресная; б – одноадресная; в – безадресная.

Простейшая из структур приведена, на рис. 1.4. Процессор содержит устройство управления ЛЛУ, регистр для размещения исполняемой команды (регистр команд) и регистр для размещения одного из операндов или результата операции в процессе выполнения этой команды — аккумулятор.

Рассмотрим, что происходит в процессоре после того, как в его регистр команд была переписана из памяти какая-либо команда, например команда вычитания.

Так как поле регистра команд, в котором хранится код операции, связано шиной с устройством управления, то последнее получит приказ на выполнение операции «Вычитание» и перейдет в режим генерации управляющих сигналов:

одновременной выработкой сигналов У1, У5, У10 и У8 обеспечиваются пересылка из памяти численного значения уменьшаемого, прохождение его через АЛУ (сигнал У10) и запись в аккумулятор;

следующий тактовый импульс инициирует выработку сигналов У2, У5, У 6 и У 11, что приводит к пересылке из памяти численного значения вычитаемого, к выполнению операции вычитания этого значения (сигнал У 11) из содержимого аккумулятора (из уменьшаемого); по сигналу У8 производится запись полученной разности в аккумулятор вместо уменьшаемого;

затем сигналы У3 и У9 обеспечат пересылку разности из аккумулятора в ячейку памяти, на которую указывает предпоследнее поле команды;

наконец, с помощью сигналов У4 и У7 будет произведена перепись в регистр команд следующей команды программы.

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

Рис. 1.4, Простой процессор, работающий с четырехадресной командой, целиком выбираемой из одной ячейки памяти.

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

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

Короткую четырехадресную команду (см. рис. 1.3, а) безусловно следует целиком хранить в 16-битовой ячейке памяти. Но такая команда может адресовать лишь 2=8 ячеек памяти Современные же микро-ЭВМ адресуются к памяти, содержащей не менее 2=65536 ячеек. Если создавать четырехадресную команду, работающую с памятью подобных размеров, то на каждое адресное поле команды придется отвести 16 бит, а на всю команду (при 16-битовом коде операции) — 80 бит Однако ЭВМ. работающую с такими командами, уже нельзя назвать микро-ЭВМ, так как она будет содержать очень много оборудования 80-разрядные ячейки памяти, 80-разрядные регистры. 80-разрядное АЛ У, 80-разрядные вентильные схемы, шины шириной 80 и т.д. Следовательно, надо либо четырехадресную команду хранить в ячейках памяти в виде отдельных ее полей, либо уменьшать число адресных полей команды.

Среди команд современных ЭВМ практически не встречаются четырехадресные. Мало и трехадресных команд так как результат операции почти

всегда можно записать на место одного из уже использованных операндов. Наибольшее распространение в микро-ЭВМ получили одноадресные и безадресные команды (см. рис. 1,б,в,д), позволяющие построить простой процессор.

Если и команды программы размещать в памяти ЭВМ друг за другом (а не в произвольной последовательности), то адрес следующей команды чаще всего будет отличаться от адреса исполняемой команды (или ее последнего поля) лишь на единицу, а добавление единицы к текущему адресу можно возложить на ЭВМ (счетчик команд). Это позволяет сократить длину команды (изъять из ее содержимого адрес следующей команды), но приводит к необходимости использования специальных команд перехода, размещаемых в тех местах программы, где может потребоваться изменение естественной последовательности выполнения команд в зависимости от результата вычислений. Обычно команды перехода — одноадресные команды где код операции оговаривает проверяемое условие (знак результата предыдущей операции, наличие переноса из старшего разряда и т.п.), а адрес — адрес команды, к которой нужно перейти, если условие выполняется (при невыполнении условия выбирается команда, расположенная вслед за командой перехода).

Соседние файлы в папке КСТиАК - Конспект лекций