Прерывания
Обрабатывая данные, процессор обращается к байтам оперативной памяти, а для выполнения операций обмена процессору нужно обращаться к так называемым портам ввода/вывода, которые соединены с внешними устройствами компьютера.
На логическом уровне каждый порт представляет собой восьмибитовое запоми- нающее устройство, предназначенное для получения передаваемого в процессе обмена байта данных. Порт можно рассматривать как некоторое окно или канал, через который процессор передает внешнему устройству или принимает от него код одного байта.
Физически порт представляет собой связанный с разъемом на корпусе или на шине компьютера буфер памяти, свойства которого аналогичны свойствам байта оперативной памяти. Отметим, что в связи с этим разъемы на корпусе компьютера также часто называются портами: например, порт LРТ1, связанный с принтером, или порт СОМ, к которому может подключаться мышь или модем.Для организации обмена в системе команд процессора i8О86 предусмотрены две команды: ввода in (КОП = 11100 1 02) и вывода out (КОП = 11100112). Во время ввода переданный с внешнего устройства байт данных помещается в связанный с этим устройством порт, а затем по команде in программы этот байт из порта передается в фиксированный (всегда один и тот же) регистр аl процессора. Во время вывода, наоборот, процессор по команде out программы передает байт данных из регистра аl в указанный в команде порт, откуда этот байт попадает на внешнее устройство. Два восьмибитовых порта могут объединяться для получе- ния и передачи двухбайтового кода. В этом случае в обмене участвует регистр ах процессора. Еще раз отметим, что в операциях ввода/вывода участвует только регистр аl (или ах), это одна из его специализированных функций.
В процессоре i8О86 предусмотрено 216 = 65 536 портов. Каждый порт, так же как и каждый байт оперативной памяти, имеет номер, который также считается адресом. Совокупность номеров портов образует адресное пространство вво- да/вывода объемом 64 Кбайт, которое не зависит от адресного пространства оперативной памяти.
Выбор порта, к которому подключается то или иное внешнее устройство, может осуществляться программистом «вручную» или же производится операционной системой автоматически во время так называемого конфигурирования устрой- ства. Далее номер порта, с которым связано участвующее в обмене внешнее устройство, указывается в командах ввода/вывода in и out.
Еще по теме Прерывания:
- 7.3.2. Прерывания
- 7.4.4. Как справиться с прерыванием.
- 7.3.2. Прерывания
- Прерывание нотаций:
- Прерывание обвинений:
- Прерывание криков и ругани:
- 7.4.4. Как справиться с прерываниями
- Статья 281. Право на жизнь
- ПРЕПЯТСТВИЕ ВНЕШНЕЕ
- Статья 121. Умышленное тяжкое телесное повреждение
- М.Руссинович, Д.Соломон. Внутреннее устройство Microsoft Windows (главы 1–4), 2005
- Конфронтация.
- Термоядерная реакция при комнатной температуре
- Переживание смерти и воскресения
- Конфронтация