Драйверы устройств - это сердце BIOS. Эти программы дают  возможность программисту, работающему на языке ассемблера, работать  с устройствами IBM PC. Любая программа может управлять устройствами  с помощью соответствующих последовательностей команд на аппаратном уровне. Тем не менее во многих случаях вы можете работать с устройствами стандартным образом, не вникая в их специфические особенности. Например, только небольшое число программ делают с  дискетой что-либо еще кроме чтения и записи. В гл.8 была написана программа для чтения состояния дисковода. Если нужно прочитать некоторый сектор дискеты, можно использовать для этой цели BIOS и не переписывать эти программы заново. Программист, работающий на  языке ассемблера, должен рассматривать BIOS как инструмент, сокращающий его работу.

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

      MOV                              AH,            15

      INT   10H

Команда INT 10H вызывает драйвер обслуживания дисплея, входящий  в BIOS. Драйвер дисплея имеет большие возможности. Установка в регистре AH числа 15 сообщает ему, что программист хочет знать текущее состояние дисплея. BIOS возвращает информацию о состоянии  через регистр AL.

Каждый драйвер устройства входящий в BIOS имеет свои  собственные входные и выходные параметры. В общем случае регистр AH определяет функцию для данного драйвера. Остальные регистры BIOS  использует для любых других принимаемых или возвращаемых параметров. Каждая функция кратко описана в техническом описании  IBM PC, а также снабжена другими важными замечаниями. При разборе  драйверов мы вернемся к этим листингам, а перед этим рассмотрим  другие векторы прерываний.