Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конфигурация пк debug.doc
Скачиваний:
3
Добавлен:
20.09.2019
Размер:
69.12 Кб
Скачать

Дисциплина «Архитектура ПК»

Тема лабораторно-практического занятия:

«Определение конфигурации персонального компьютера».

Цели: – освоить приемы определения с помощью отладчика – программы DEBUG модели компьютера, его характеристики и оборудования, входящие в состав вычислительной техники.

1. Порядок выполнения работы:

  1. Прочитать теоретические сведения по определению конфигурации ПК.

  2. Ответить на вопросы.

  3. Выполнить задания.

  4. Оформить лабораторно-практическое занятие.

2. Вопросы

  1. Перечислить виды компьютерной памяти, их назначение и характеристики.

  2. Какими устройствами реализуются различные виды памяти?

  3. Какова структура распределения 1 Мбайта компьютерной памяти?

  4. В каких ячейках основной памяти располагаются сведения о конфигурации компьютера?

  5. Перечислить приемы определения с помощью отладчика – программы DEBUG модели компьютера и оборудования, входящих в состав вычислительной техники.

3. Задания (для собственного компьютера)

  1. Определить, какое периферийное оборудование входит в состав вашего ПК. Воспользуйтесь для этого командой d(ump) программы DEBUG и ответьте на следующие вопросы:

    1. Какое количество печатающих устройств, оборудованных параллельным интерфейсом, могут быть подключены к компьютеру?

    2. Установлен ли в систему игровой адаптер?

    3. Какое количество адаптеров последовательного интерфейса RS-232 имеется в составе компьютера?

    4. Имеется ли в составе ПК контроллер прямого доступа к памяти?

    5. Какое количество НГМД входит состав ПК?

    6. Какой видеорежим установлен в качестве начального режима?

    7. Чему равен объем оперативной памяти, смонтированной на системной плате?

    8. Сколько всего оперативной памяти доступно для использования?

    9. Имеется ли в составе ПК математический сопроцессор?

  2. Воспользуйтесь прерываниями 11h и 12h для получения тех же сведений, что и в пункте 1. Выполнить корректное завершение ввода ассемблерных кодов.

4. Задания повышенной сложности

  1. Записать тремя разными способами команду отладчика, выполнение которой позволяет узнать дату выпуска ПЗУ.

  2. Под управлением отладчика, узнать серийный номер компьютера, авторские права, версию BIOS, совместимость с другими моделями, если данная информация «зашита» в ПЗУ, начиная с абсолютного адреса FE000h.

  3. Определить объем оперативно запоминающего устройства, установленного на системной плате компьютера с помощью отладчика.

  4. Под управлением отладчика, с помощью программных прерываний, определить общую емкость ОЗУ персонального компьютера. Выполнить корректное завершение ввода ассемблерных кодов.

5. Оформление лпз

1. Записать: число, тему, цели.

2. Ответить устно на вопросы.

3. Записать конфигурацию компьютера.

Теоретические сведения

Приступая к использованию любой вычислительной техники (в том числе и ПК) целесообразно знать какая модель компьютера используется в качестве основы; какой объем оперативной памяти имеется в распоряжении; каким оборудованием можно пользоваться, работая с данной техникой.

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

Старшие адреса основной памяти (с C0000h до FFFFFh) в компьютерах, управляемых микропроцессором, начиная с Intel 8086, отведены для постоянно запоминающего устройства (ПЗУ). Программы, записанные в ПЗУ, доступны микропроцессору немедленно после включения питания. Их невозможно случайно изменить, стереть или потерять. По назначению эти программы делятся на программу запуска машины; базовую систему ввода-вывода (BIOS); ядро Бейсик-интерпретатора; расширения ПЗУ, добавляемые в случае установки дополнительных периферийных устройств. Самые старшие адреса ПЗУ, начиная с FFFF5h, содержат два маркера, позволяющих определить дату выпуска версии ПЗУ, установленной на компьютере, а также модель машины.

Дату выпуска ПЗУ можно найти в восьми байтовом поле памяти по адресам с FFFF5h пo FFFFCh. Эта область содержит ASCII-коды символов, записанных в общеамериканском формате дат. Например: 10/25/02 означает 25 октября 2002 года.

Модель машины можно определить по значению идентификатора, который расположен в байте по адресу FFFFEh и в соответствии с таблицей.

Таблица. Значения идентификатора для моделей ПК серии PC.

Идентификатор

Модель ПК

FF

PC (исходный IBM PC)

FE

XT или портативный PC

FD

PCjr

FC

AT

Область данных BIOS расположена в области памяти, выделенной под ОЗУ, и занимает 256 байтов, начиная с адреса 0040:0000 (абсолютный адрес 00400h). Данные в эту область загружаются BIOS во время процесса начального запуска и в дальнейшем широко используются для организации работы компьютера. Во многих случаях программы могут получить доступ к хранящейся в этой области информации с помощью прерываний BIOS. И, конечно, во всех случаях имеется непосредственный доступ к этим данным – любая программа всегда может прочитать значения, записанные в любой ячейке основной памяти.

После включения питания компьютера BIOS в процессе работы программы запуска проверяет присоединенное оборудование, сообщая о результатах проверки в «регистр» статуса. Этот «регистр» занимает два байта (16 разрядов), начиная с адреса 410h. Приведенный ниже формат этого слова был установлен для моделей PC и относится ко всем моделям семейства, если не оговорено другое соглашение.

Таблица. Значения «регистра» статуса моделей PC.

Разряды

Значение

15—14

число адаптеров параллельного интерфейса (устройств печати);

13

1, если установлено последовательное устройство печати (серийный принтер)

12

1, если установлен адаптер игр (AT не использует)

11—9

число адаптеров последовательного интерфейса RS-232

8

0, если есть контроллер прямого доступа к памяти

7—6

число НГМД, уменьшенное на единицу (имеет смысл, если разряд 0 содержит 1)

5—4

начальный видеорежим: 01 – 40*25 для платы цветного монитора, 10 – 80*25 для платы цветного монитора, 11 – 80*25 для платы монохромного монитора;

3—2

объем ОЗУ на системной плате (AT не использует): 00 — 16Кб, 01 — 32Кб, 10 — 48Кб, 11 — 64Кб;

1

1, если есть математический сопроцессор (только для XT и AT).

0

1, если установлен НГМД.

Третий и второй разряды слова сообщают лишь об объеме ОЗУ, смонтированном на системной плате. Остальное пространство ОЗУ обеспечивается за счет устанавливаемых дополнительно плат расширения.

Определить общий объем памяти, доступной для использования, можно прочитав слово, расположенное в памяти по адресу 413h. Это слово содержит объем доступной для использования памяти в килобайтах.

Прочитать содержимое слов с адресами 410h и 413h вы можете, воспользовавшись описанными выше возможностями программы DEBUG или интерпретатора Бейсик. Третью возможность предоставляет BIOS с помощью служебных функций состояния устройств, вызываемых по прерываниям 11h и 12h.

Прерывание 11h возвращает в регистр АХ значение «регистра» статуса (слова памяти с адресом 410h); прерывание 12h возвращает в регистр АХ значение слова с адресом 413h. Вызов обеих функций осуществляется без предварительной установки каких-либо регистров.

Как следует из таблицы, значения седьмого, шестого и нулевого разрядов «регистра» статуса позволяют определить количество НГМД, включенных в состав ПК, однако информация, определяющая тип диска, здесь отсутствует. Отсутствуют и сведения о наличии жесткого диска.

Используя отладчик – программу DEBUG, можно посмотреть значение любого байта основной памяти. Для этого воспользуемся командой d(ump) с указанием начального адреса дампа памяти и его размера.

Пример. Определить дату выпуска версии ПЗУ с помощью отладчика.

Поскольку дату выпуска ПЗУ можно найти в восьми байтовом поле памяти по адресам, начиная с FFFF5h заканчивая адресом FFFFCh, то запустим на исполнение отладчик и выведем на экран монитора соответствующий дамп памяти:

A:\>debug

-d FFFF:5 L8

FFFF:0000 31  30  2F-32  35  2F  30  32 10/25/02

В ответ на запрос отладчик выдает содержимое восьми байтов и символы, соответствующие ASCII-кодам, записанным в этих байтах. Таким образом, версия ПЗУ была выпущена 25 октября 2002 года.

Пример. Определить модель ПК с помощью отладчика.

Поскольку модель машины можно определить по значению идентификатора, который расположен в байте по адресу FFFFEh, то и выведем на экран монитора соответствующий дамп памяти:

-d F000:FFFE L1

F000:FFF0 FC .

В ответ на запрос отладчик выдает значение одного байта FC, что соответствует модели AT.

Пример. Определить наличие математического сопроцессора в компьютере с помощью отладчика.

Зная, что за информацию о наличии математического сопроцессора отвечает первый разряд двухбайтового «регистра» статуса моделей компьютера, начинающегося с адреса410h, выведем на экран монитора соответствующий дамп памяти:

-d40:10 L2

D040:0010 23  C8 #.

Поскольку байты 16-разрядного слова располагаются в обратной последовательности, то в бинарном значении числа 23h (00100011) первому разряду соответствует единица. Значит, в компьютере имеется математический сопроцессор.

Пример. Определить общий объем оперативной памяти компьютера с помощью отладчика.

Данная информация находится в двух байтах ПЗУ, начиная с адреса 413h. Выведем на экран монитора соответствующий дамп памяти:

-d40:13 L2

D040:0010 80  02 ..

Обратное шестнадцатеричное число 80 02 соответствует нормальному шестнадцатеричному числу 02 80 или десятичному числу 640. Значит, размер ОЗУ составляет 640 Кбайт.

Пример. Прочитать содержимое слов с адресами 410h и 413h, используя программы обработки прерываний 11h и 12h.

Переведем команды ассемблера, вызывающие прерывания11h и 12h., в машинные коды:

-a

10D4:0100 int 11

10D4:0102 int 12

10D4:0104

Воспользуемся командой отладчика g(o) для выполнения программ обработки прерываний 11h и 12h:

-g102

АХ=C823   ВХ=0000   СХ=0000   DX=0000   SP=FFEE   ВР=0000   SI=0000   DI=0000

DS=10D4  ES=10D4   SS=10D4   CS=10D4   IP=0102 NV UP EI PL NZ NA PO NC

10D4:0102  CD12 INT 12

-g104

АХ=0280   ВХ=0000   СХ=0000   DX=0000   SP=FFEE   ВР=0000   SI=0000   DI=0000

DS=10D4  ES=10D4   SS=10D4   CS=10D4   IP=0104 NV UP EI PL NZ NA PO NC

10D4:0104  0000 ADD [BX+SI],AL DS:0000=CD

Зная, что прерывание 11h возвращает в регистр АХ содержимое «регистра» статуса ПК, а прерывание 12h возвращает в регистр АХ емкость ОЗУ, определяем, что значение регистра АХ равно C823h и 0280h соответственно. Это совпадает с ранее полученными значениями слов памяти с адресами 410h и 413h.

4