Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab1-7l.doc
Скачиваний:
2
Добавлен:
13.11.2019
Размер:
188.43 Кб
Скачать

Содержание

Лабораторная работа №1. Знакомство с общим устройством и функционированием ЭВМ. Изучение структуры процессора, организации памяти, структуры дисковой операционной системы и их взаимодействия.

Лабораторная работа №2. Знакомство с форматом представления вещественных чисел в ЭВМ. Изучение структуры процессора, организации памяти, взаимодействия процессора с памятью.

Лабораторная работа №3. Знакомство с прерываниями.

Лабораторная работа №4. Программная обработка клавиатуры.

Лабораторная работа №5. Работа с видеоадаптером.

Лабораторная работа №6. Работа с дисками.

Лабораторная работа №7. Написание обработчиков прерываний, знакомство с принципами разработки резидентных программ.

Лабораторная работа №1

ЗНАКОМСТВО С ОБЩИМ УСТРОЙСТВОМ И

ФУНКЦИОНИРОВАНИЕМ ЭВМ.

ИЗУЧЕНИЕ СТРУКТУРЫ ПРОЦЕССОРА,

ОРГАНИЗАЦИИ ПАМЯТИ,

СТРУКТУРЫ ДИСКОВОЙ ОПЕРАЦИОННОЙ СИСТЕМЫ

И ИХ ВЗАИМОДЕЙСТВИЯ

ЦЕЛЬ РАБОТЫ

Знакомство с общим устройством ЭВМ и получение начальных навыков для успешного выполнения последующих лабораторных работ.

ЗАДАНИЕ НА РАБОТУ

Работа состоит из трех этапов:

  1. Обзор периферийных устройств компьютера (при помощи утилиты SysInfo).

  2. Обзор дисковой системы (при помощи утилиты DiskEdit).

  3. Просмотр состояния памяти (при помощи утилиты Turbo Debugger).

1. Утилита SysInfo фирмы Symantec Corporation позволяет получить сведения об аппаратной организации компьютера. С помощью этой утилиты требуется определить и занести в отчет следующие сведения:

тип компьютера, дату создания BIOS, частоту микропроцессора и тип видеоадаптера;

номера программных прерываний клавиатуры, видеоадаптера, жесткого диска и мыши;

просмотреть состояние CMOS-памяти;

оценить количество свободной в данный момент DOS-памяти.

2. Утилита DiskEdit фирмы Symantec Corporation позволяет работать с дисками на более низком уровне, чем в MS DOS и Windows: на уровне секторов и кластеров. В лабораторной работе №6 студентам будет предложено организовать такую работу самостоятельно, а пока им предлагается воспользоваться этой утилитой. На данном этапе требуется выполнить следующее:

в режиме просмотра вывести на экран

 таблицу разделов,

 загрузочную запись,

 корневой каталог;

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

3. Turbo Debugger (TD.EXE) фирмы Borland Corporarion позволяет просматривать текущие значения регистров микропроцессора, а также состояние ячеек оперативной памяти. С помощью TD требуется выполнить следующее:

Определить тип компьютера по байту конфигурации, который находится в ПЗУ по адресу F000H:FFFEH, исходя из таблицы.

Определить размер DOS - памяти. Для этого просмотреть байты по адресу 413h и 414h и оценить их содержимое. (Необходимо учесть формат хранения чисел в памяти ЭВМ).

Определить дату создания ROM BIOS (она хранится по адресу FFFF5h) и сравнить с полученной при работе с SysInfo. Что расположено в этих адресах памяти, где хранится дата создания ROM BIOS?

Просмотреть таблицу векторов прерываний (она располагается, начиная с адреса 00000h и до адреса 003FFh). Адреса в таблице векторов прерываний хранятся в формате <сегмент> : < смещение>, при этом соблюдается формат хранения целых чисел в памяти ЭВМ. Определить адрес расположения подпрограммы обработки прерываний для первых трех элементов таблицы векторов прерываний. Записать полученные данные в тетрадь. Сколько всего адресов подпрограмм обработки прерываний хранится в этой таблице?

Просмотреть область данных BIOS, которая расположена сразу же за таблицей векторов прерываний и занимает 256 байт. Просмотреть состояние байтов по адресу 417h и 418h при нажатии клавиш NumLock, CapsLock и ScrollLock.

Рекомендации по выполнению работы

Не рекомендуется при работе с Turbo Debugger'ом менять значение регистра CS и загружать очень большие исполняемые программы.

ПРИЛОЖЕНИЕ 1

Turbo Debugger - это программа, позволяющая отображать состояние микропроцессора и память при работе той или иной программы в режиме трассировки. В левом верхнем углу располагается окно, в котором отображаются размещенные в оперативной памяти программы на данный момент (машинные коды инструкций и их эквиваленты на языке Ассемблера). Справа располагается панель, на которой отображается текущее содержимое всех регистров микропроцессора, а также регистра флагов. В нижнем левом окне отображаются байты памяти (а, вернее

сказать, дампы памяти) по указанному адресу.

Переключение между окнами осуществляется клавишей Tab. Система меню аналогична IDE Borland Pascal или Borland C.

Трассировка осуществляется клавишей F7. Во время трассировки содержимое регистров обновляется автоматически. Можно изменить значение регистра и вручную, перейдя в окно регистров и введя новое значение для требуемого регистра.

Чтобы просмотреть байт памяти по заданному адресу, нужно перейти в окно статуса памяти, нажать Ctrl-G и ввести адрес (абсолютный или в формате <сегмент> : <смещение>).

ПРИЛОЖЕНИЕ 2

Таблица

Значение байта

Тип компьютера

FFH

Оригинальный IBM PC

FEH

IBM PC/XT, Portable PC

FDH

PCjr

FCH

IBM PC/AT

FBH

IBM PC/XT с памятью 640 Кбайт на материнской плате.

F9H

Convertible PC

Лабораторная работа №2

ЗНАКОМСТВО С ФОРМАТОМ ПРЕДСТАВЛЕНИЯ

ВЕЩЕСТВЕННЫХ ЧИСЕЛ В ЭВМ

ЦЕЛЬ РАБОТЫ

Изучение формата представления чисел с плавающей точкой в памяти компьютера. Дополнительно студенты получают начальные навыки работы с командами микропроцессора на языке Ассемблера.

ЗАДАНИЕ НА РАБОТУ

Организовать процедуру обработки математических операций с плавающей точкой - сложения и умножения двух вещественных чисел. Процедура может быть организована любым доступным способом (целиком на языке Ассемблера или с помощью ассемблерных вставок на языке программирования более высокого уровня).

РЕКОМЕНДАЦИИ ПО ВЫПОЛНЕНИЮ РАБОТЫ

Использовать короткий вещественный формат (4 байта) и расширенные (32-битные) регистры микропроцессора .

ПРИЛОЖЕНИЕ 1

ОСНОВНЫЕ КОМАНДЫ МИКРОПРОЦЕССОРА И ИХ ЭКВИВАЛЕНТЫ НА ЯЗЫКЕ PASCAL

Использованы следующие сокращения:

op8 - 8-битовый операнд (регистр, переменная);

op16 - 16-битовый операнд (регистр, переменная);

op32 - 32-битовый операнд (регистр, переменная);

@ - в качестве операнда может указываться константа;

$ - в качестве операнда может указываться сегментный регистр (кроме CS);

op1, op2 - 2 произвольных операнда (регистры, переменные, константы);

r16 - 16-битовый регистр;

На месте регистра AX (AL или EAX) может стоять ЛЮБОЙ регистр общего назначения.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]