
- •1.1. Цель работы.
- •1.2. Задание на подготовку к лабораторной работе.
- •1.3. Порядок выполнения работы.
- •1.4. Варианты заданий и условия задач.
- •1.5. Вопросы для самопроверки.
- •1.6. Методические указания.
- •1.6.1 Машинное представление целочисленных типов данных.
- •1.6.2 Машинное представление вещественных типов данных.
- •1.6.3 Машинное представление символьных типов данных.
- •1.6.4 Машинное представление логических (булевских) типов данных.
- •1.6.5 Машинное представление скалярных типов данных.
ЛАБОРАТОРНАЯ РАБОТА N 1-STD.
Изучение способов машинного представления простых и скалярных типов данных.
1.1. Цель работы.
Изучить способы машинного представления простых и скалярных типов данных языка ПАСКАЛЬ в памяти ЭВМ. Научиться получать и анализировать файлы (таблицы) компоновки программы и изучить структуру загрузочного модуля программы.
1.2. Задание на подготовку к лабораторной работе.
В процессе подготовки к лабораторной работе студент должен проработать теоретический материал по конспекту лекций и по методическим указаниям к данной лабораторной работе. Для углубленного изучения рекомендуется ознакомиться с литературой [1 (c. 31-45, 105-110, 115-118); 4 (c. 14-25); 5 (c. 18-33); 7 (c. 6 -34); 11 (с. 10-17)].
1.3. Порядок выполнения работы.
- Составить программу на языке ПАСКАЛЬ, содержащую простые (все целые типы, символьные, логические и вещественный тип real) и скалярные (перечислимый и ограниченный) типы данных, согласно заданного варианта. Примерный вид программы приведен в Приложении 3.
- Hабрать текст программы на ПЭВМ, отладить и выполнить задачу на ПЭВМ;
- Используя встроенный отладчик интегрированной среды Borland Pascal 7.0 произвести трассировку программы и контроль значений всех переменных. Указания по трассировке программы и контролю значений переменных приведены в Приложении 1;
- Используя спецификаторы формата, распознаваемые отладчиком Borland Pascal 7.0 (приведены в Приложении 2), изучить способы просмотра переменных в различных доступных форматах;
- Получить файл (таблицу) компоновки программы (MAP-файл) для разработанной программы. Указания по получению MAP-файла приведены в Приложении 4;
- Из файла компоновки программы определить область переменных разработанной студентом программы и ее размер;
- Распечатать текст программы, MAP-файл и дамп области переменных разработанной программы;
- Выполнить предыдущие 3 пункта работы, установив (или наоборот, сняв, если она была установлена по умолчанию) опцию Word align data (выравнивание по словам). Ее описание приведено в Приложении 4. Ограничиться распечаткой фрагмента MAP-файла, относящегося к данным разработанной программы и дампа соответствующей им области памяти. Объяснить полученные результаты;
В полученных дампах выделить ячейки памяти, относящиеся к конкретным переменным пользователя; получить 16-ричное представление этих переменных; для одного из полученных представлений показать, что эти значения соответствуют значениям переменных, получаемых в результате выполнения программы (в 10-чном, символьном и т.п. видах). Результаты оформить в виде таблицы со следующей формой:
-
Переменная
Шестнадцатиричное
Представление, полученное при работе программы
представление в памяти ЭВМ
значение
i : integer
$7A $01
017A16
i = 1162+7161+10160 =
256 + 112 + 10 = 37810
378
ch : char
$31
‘1’
ch =chr( 3161+1160 = 48 + 1) = chr(4910) = ‘1’
1
…………………………………………………………………….
- Оформить отчет.
Отчет должен содержать:
1. Hаименование и номер лабораторной работы;
2. Условие задачи;
3. Распечатка (или рукопись) листинга программы;
4. Распечатка результатов выполнения задачи;
5. Вид значений переменных отображаемых в окне Watch в различных форматах;
6. Распечатка или рукопись МАР файла с указанием области данных пользователя;
7. Распечатка или рукопись дампов памяти области данных пользователя;
8. Разбиение дампа памяти на ячейки памяти, относящиеся к конкретным переменным; показать 16-ричное представление этих переменных и их значения в привычном для человека виде;
9. Выводы по результатам решения задачи, анализ ошибок, выявленных в ходе отладки программы.