Скачиваний:
32
Добавлен:
01.05.2014
Размер:
86.91 Кб
Скачать

Лабораторная работа 8. Разработка на языке ассемблер программы анализа используемой конфигурации компьютера и вывода на экран информации об имеющихся ресурсах.

Необходимые сведения для составления программы.

Проверку переключателей для ПЭВМ класса IBM PC/AT и выше следует проводить, учитывая, что она в отличие от IBM PC и IBM PC/XT не имеет микросхемы интерфейса с периферией Intel 8255. ПК IBM PC/AT хранит информацию о конфигурации в микросхеме MC146818 фирмы Motorola. Эта микросхема имеет 64 регистра, пронумерованных от 00 до 3FH. Для чтения регистра нужно сначала послать его номер в порт с адресом 70Н, а затем прочитать его содержимое через порт 71Н. Краткие сведения об использовании некоторых регистров следующие:

Номер регистра Использование

10Н тип накопителя НГМД

12Н тип наконителя фиксированного диска

14Н информация о периферии

15Н память на системной плате(мл.байт)

16Н память на системной плате(ст.байт)

17Н общая память (мл.байт)

18Н общая память (ст.байт)

В регистре 10Н микросхемы конфигурации в битах 7-4 хранится информация о первом НГМД, а в битах 3-0 - о втором НГМД. В обоих случаях цепочка битов 0000 говорит об отсутствии накопителя, 0001 - о двустороннем накопителе с плотностью 48 дорожек на дюйм, 0010 - о накопителе с плотностью 96 дорожек на дюйм.

Информация о фиксированном диске содержится в регистре 12Н.

И снова его биты 7-4 и 3-0 соответствуют 1-му и 2-му накопите-

лям. Их содержимое 0000 указывает на отсутствие накопителя, а

другие 15 комбинаций описывают емкость и конструкцию накопителя

(более подробные сведения - в технической документации по PC/AT).

В регистре 14Н микросхемы конфигурации хранится следующая информация о периферии

Биты Содержание

0 0/1 - нет/имеется НГМД

1 0/1 - нет/имеется математ. сопроцессор

2-3 не используются

4-5 01 - вывод на цветной дисплей, 40 строк

10 - вывод на цветной дисплей, 80 строк

11 - вывод на монохромный дисплей

6-7 00 - 1 НГМД, 01 - 2 НГМД

Пример фрагмента ассемблерной программы, иллюстрирующий чтение информации о конфигурации и проверку наличия математического сопроцессора имеет вид

MOV AL, 14H ; задание номера регистра периферии

OUT 70H, AL ; в микросхему конфигурации

IN AL, 71H ; чтение содержимого регистра 14Н

TEST AL, 10B ; проверка бита 1

JZ NO_COPROC ; если равен 0, то сопроцессора нет

Регистры 15Н (младший) и 16Н (старший) микросхемы конфигурации сообщают, сколько памяти установлено на системной плате. Возможны три значения : 0100Н для 256К, 0200Н для 512К и 0280Н для 512К плюс 128К на плате расширения. Если имеется 128К памяти на плате расширения, то также устанавливается бит 7 в регистре 33Н.

Кроме того для определения типов дисковых накопителей можно воспользоваться функцией 1СН прерывания 21Н.

Входные параметры: AH = 1CH - функция;

DL - проверяемый дисковод: 0 - текущий, 1 - А и т. д.

Выходные параметры: AL = FFH - несуществующий дисковод, а

иначе - количество секторов в кластере;

CX - количество байт в секторе;

DX - количество кластеров на диск

DS:BX - указатель на байт ID FAT(таблицы размещения файлов).

Значение байта ID : FF - двухсторонний 8 секторов;

FE - односторонний 8 секторов;

FD - двухсторонний 9 секторов;

FC - односторонний 9 секторов;

F9 - двухсторонний 15 секторов;

F8 - фиксированный диск;

CD - несуществующий дисковод.

Наконец, BIOS PC/AT имеет две полезные функции:

- функция 15Н прерывания 13Н возвращает тип накопителя

Входные параметры: AH = 15H - функция,

DL - номер проверяемого дисковода;

Выходные параметры:

0 - нет накопителя,

АН = <1 - дискета без обнаружения изменений,

2 - дискета с обнаружением изменений,

3 - фиксированный диск(ФД);

СХ:DX - число секторов по 512 байт для ФД;

- функция 8 прерывания 13Н возвращает параметры накопителей

DL - число накопителей,

DH - макс.число сторон накопителя,

CL - макс.число секторов,

CH - макс.число дорожек,

AH - код статуса ошибки накопителя.

Варианты заданий

Шифры, определяющие варианты заданий, выдаваемых преподавателем с учетом подготовленности студентов, приведены в таблице 1.

Таблица 1

№ бригады

Шифр Задания

№ бригады

Шифр Задания

1

АВ

6

СE

2

АС

7

АВD

3

ВD

8

АCD

4

CD

9

ABE

5

DE

10

АСE

Здесь буква означает тип и параметры проверяемого ресурса:

A - есть ли математический сопроцессор;

B - существуют ли накопители на магнитных дисках:

фиксированных и гибких, каково их количество ;

C - число накопителей на дискетах и их тип;

D - емкость памяти на системной плате (в КВ или банках памяти по 64К;

E - тип дисплея.

Желательно, при выполнении работы, где можно, для контроля аналогичную информацию получить разными способами.