80286 процессор

Страница: 11/11

Сопроцессор выявляет шесть различных исключительных ситуаций, которые могут возникнуть во время исполнения команды. Если маска соответствующего исключения в сопроцессоре не установлена, сопроцессор устанавливает сигнал ошибки, по которому генерируется прерывание 13, и сигнал 'BUSY' фиксируется в установленном состоянии. Сигнал 'BUSY' может быть очищен командой записи 8-разрядного ввода-вывода по адресу F0, при условии что D0-D7 равны нулю.

Код самоконтроля при включении питания в системном ПЗУ разрешает прерывание 13 и устанавливает вектор этого прерывания , указывающий на рабочую программу ПЗУ. Эта программа очищает защелку сигнала 'BUSY' и передает затем управление по адресу , указанному вектором немаскированного прерывания. Это позволяет использовать код, записанный для любого персонального компьютера IBM, в IBM PC AT. Драйвер немаскируемых прерываний должен прочитать состояние сопроцессора, чтобы определить, было ли НМП вызвано сопроцессором. Если нет, то управление передается исходному драйверу НМП.

Сопроцессор предусматривает два режима работы, подобные двум режимам микропроцессора. после сброса при включении питания или при операции записи ввода - вывода в порт с адресом 00F1 сопроцессор находится в режиме реальной адресации. Этот режим совместим с сопроцессором 8087 , который используется с другими персональными компьютерами IBM. Сопроцессор может быть переведен в режим защиты с помощью команды SETPM ESC. В режим реальной адресации он может возвратиться, если будет выполнена операция записи ввода-вывода в порт с адресом 00F1, при условии что D0-D7 равны 0.

Базовая система ввода-вывода (BIOS)

Базовая система ввода-вывода (BIOS) находится в ПЗУ на системной плате. Она обеспечивает управление уровнями для основных устройств ввода-вывода в системе. На дополнительных адаптерах могут размещаться дополнительные модули ПЗУ , которые обеспечивают управление уровнями устройства на этом дополнительном адаптере. Рабочие программы BIOS позволяют программисту, работающему на языке ассемблера, выполнять операции ввода-вывода в блоковом (диски или дискеты) или в символьном формате без учета адреса и параметров устройства. BIOS предусматривает такие системные услуги , как определение времени суток и размера памяти.

Целью BIOS является обеспечение операционной связи с системой и освобождение программиста от заботы об аппаратных характеристиках устройств. Интерфейс BIOS отделяет пользователя от аппаратуры, позволяя добавлять к системе новые устройства, сохраняя при этом связь с устройством на уровне BIOS. В этом случае аппаратные изменения и расширения становятся "прозрачными" для пользователя.

Использование BIOS

Доступ к BIOS обеспечивается через программные прерывания микросхемы 80286 в режиме реального времени. Каждая точка входа в BIOS доступна через собственное прерывание. например, для определения объема базового ОЗУ, доступного в системе, содержащей 80286, в режиме реального времени , прерывание INT 12H вызывает рабочую программу BIOSа для определения размера памяти и возвращает полученное значение системе.

Передача параметров

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

Если функция BIOS содержит в себе несколько возможных операций, то регистр AH используется на входе, чтобы показать желаемую операцию, например, для установки времени суток требуется следующая программа:

MOV AH,1 установить время суток

MOV CX,HIGH COUNT установить текущее время

MOV DX,LOW COUNT

INT 1AH установить время для чтения времени суток:

MOV AH,0 считать время суток

INT 1AH считать таймер

Программы BIOS запоминают все регистры, кроме AX и флагов. Другие регистры изменяются по возврату только в том случае, если они возвращают значение вызывающей программе. Конкретное назначение регистра можно определить по вводной части каждой функции BIOS.

Реферат опубликован: 22/09/2006