"П.Нортон "Программно-аппаратная организация компьютера IBM PC"" - читать интересную книгу автора

команд) и CS. Текущий адрес в стеке образуется содержимым регистра
указателя стека (SP) и регистра сегмента SS.
Для адресации данных вместе с регистром сегмента DS могут
использоваться разные регистры. Часто для этой цели служит регистр DX. Два
специальных регистра, DI и SI также используются совместно с регистром DS.
При работе со строками байт, регистры SI и DI используются для хранения
индексов исходной и приемной строк относительно регистра DS. Регистр
указателя базы (BP) может использоваться в качестве адреса относительно
регистра SS.


3.5. На что необходимо обратить внимание - прерывания

Компьютер должен обладать способностью реагировать на события,
происходящие вне его микропроцессора, например, чтобы воспринимать
информацию, вводимую с клавиатуры. Существует два способа организации
такой реакции.Один способ состоит в постоянном ожидании события. Такой
способ называется "сканированием" или "опросом" и такой опрос может
занимать большую часть времени компьютера. Другой способ позволяет
компьютеру спокойно выполнять свою работу, пока не произойдет событие,
требующее его внимания. Такой подход называется использованием
"прерываний". использование прерываний позволяет наиболее эффективно
организовать работу компьютера, поскольку время центрального процессора не
расходится вхолостую на ожидание.
Какие примеры прерываний можно было бы привести? Например, прерывание
возникает, когда Вы нажимаете клавишу на клавиатуре. Другое прерывание
вырабатывает таймер, встроенный в IBM/PC. Таймер прерывает работу
микропроцессора 8088 восемнадцать раз в секунду. Операционная система
ведет отсчет времени дня просто подсчитывая эти прерывания таймера; время
дня можно вычислить по количеству прерываний таймера после последней
полуночи. Еще один вид прерываний формирует контроллер гибких дисков,
сообщая процессору, что очередная дисковая операция наконец завершилась.
Поскольку эти операции значительно медленнее чем работа самого
микропроцессора, выгода состоит в том, что процессор может не ждать
завершения дисковой операции и продолжать вычисления до тех пор, пока
контроллер выработает прерывание, указывающее что операция завершена.
Основная идея прерываний заключается в том, что все требующее
внимания процессора, должно сообщать ему о себе в форме прерывания.
Использование прерываний дает огромные преимущества. Если ничто не требует
внимания процессора, - а так обстоит дело большую часть времени, - то
процессор не тратит времени на проверку наступления событий, требующих его
вмешательства. С другой стороны, если возникает событие, требующее
внимания немедленно, оно немедленно и будет обслужено, поскольку
прерывания обычно обслуживаются сразу же после их возникновения.
Иногда бывает необходимо, чтобы работа процессора не прерывалась,
например, при выполнении какой-либо критичной операции. Для этого у
микропроцессора 8088 имеется специальная команда, которая позволяет
отложить обслуживание прерываний, запоминая их, и парная ей команда,
восстанавливающая нормальный режим обслуживания прерываний. Когда
прерывания запрещаются запрос прерываний не теряется - он запоминается и