Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Понятие рабочего цикла, рабочего такта.

Поиск

 

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

Выделяют четыре группы команд: основные (арифметические, логические и пересылочные операции); передачи управления; ввода-вывода; системные (устанавливающие состояние процессора).

Рабочий цикл процессора.

 

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

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

 

Прерывание программы

 

Начальный адрес прерывающей программы называется вектором прерывания. В общем случае, каждому запросу прерывания соответствует свой вектор прерывания, способный инициировать выполнение соответствующей прерывающей программы. Векторы прерывания обычно находятся в специально выделенных фиксированных ячейках памяти – таблице векторов прерывания. Таблица векторов прерываний располагается в ОП по нулевому адресу. Номер прерывания передается контроллером прерывания в ЦП в виде 8-разрядного числа.

В таблице векторов прерываний для каждого прерывания всегда указывается адрес начала сегмента кода (этот адрес представляет собой 16-тиразрядное число), который будет записан в регистре CS процессора, и смещение первой команды программы-обработчика прерывания относительно начала сегмента кода этой программы-обработчика. Это смещение тоже представляет собой 16-тиразрядное число и будет записано в регистре IP процессора. Таким образом, таблица векторов прерываний состоит из 4-байтных элементов, соответствующих каждому типу прерывания. Соответственно, в ОП эта таблица будет занимать 28 4 байта = 1024 байта.

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

Обслуживание состоит в том, что ЦП, обнаружив сигнал прерывания, помещает в сегмент стека регистр флагов, регистр программного сегмента (CS) и указатель команд (IP) и блокирует прием следующих прерываний. Затем ЦП с помощью 8-разрядного числа, установленного на системной магистрали контроллером прерываний, извлекает из таблицы векторов адрес обработчика и возобновляет выполнение с этого адреса. По завершении выполнения подпрограммы обработчика прерывания, ЦП восстанавливает из стека содержимое регистров CS, IP и содержимое регистра флагов, вследствие чего возобновляется выполнение прерванной программы.

При наличии нескольких источников запросов прерывания определяется тот, который имеет наибольший приоритет. Больший приоритет имеет прерывание с меньшим номером в таблице векторов прерываний.

Прерывания от 0 до 31 (самые нижние уровни) используются как прерывания внутренней аппаратуры (прерывания BIOS). Прерывания от 32 до 63 используются как прерывания MS-DOS. Все остальные прерывания применяются внешней аппаратурой, системными драйверами и прикладными программами.

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

 



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 449; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.248.48 (0.005 с.)