Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабораторые работы / Методуказ к лаб 1-Орг-я ЭВМ

.doc
Скачиваний:
35
Добавлен:
10.12.2013
Размер:
70.66 Кб
Скачать

Методические указания к выполнению лабораторной работы 1 (2 час.)

Тема: Изучение ассемблерной архитектуры микропроцессора IBM PC в среде отладчика TURBO-DEBBUGER (TD).

Аппаратно-программное обеспечение работы: IBM PC - совместимый компьютер, ОС WINDOWS или MS DOS, файл td.exe.

1. Подготовка к работе.

1.1. Повторить по установочной лекции, темам Учебного пособия / 1/ и лекциям 5 и 6:

  • Сегментацию памяти для процессоров IBM PC – тема 3 /1/.

  • Типы сегментов памяти, адресацию сегментов и элементов в них тема 3 /1/.

  • Регистры данных и адресов: имена, разрядность, назначение тема 3 /1/..

  • Взаимосвязь между типами сегментов и адресными регистрами тема 3 /1/..

  • Способы адресации операндов в командах языка Assembler тема 5 /1/.

  • Основные команды языка Assembler для IBM PC тема 6 /1/.

    1. Ответить на контрольные вопросы для данной работы (пункт 5).

    2. Изучить Инструкцию по работе с программой – отладчиком TD (см. Приложение А).

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

    1. На рисунке 1 приведен рабочий экран программы-отладчика TD с некоторой рабочей программой, открытой в окне CPU. Изучите рабочий экран отладчика. Найдите все окна TD:

  • -окно CPU, где отображен текст загруженной программы на языке Assembler, а левее –адреса смещений ячеек памяти в сегменте кода со свои содержимым - H – кодами инструкций МП;

  • -окно регистров МП, а в нем найдите РОН, УКАЗАТЕЛИ, ИНДЕКСНЫЕ, СЕГМЕНТНЫЕ регистры и регистр ФЛАГОВ;

  • - окно сегмента данных, а в нем определить, сколько байт отображается в одной строке карты памяти сегмента ;

  • окно сегмента стека.

    1. .Найдите все ресурсы этой программы (сегменты ОЗУ и их адреса, а также регистры МП). Письменно выполнить задания 3.1 – 3.12.

    2. Запустите программу TD (файл TD.EXE). На экране монитора должна появиться картина, подобная рис 1. В окне CPU открыта некоторая рабочая программа. С этой программой Вы и будете работать. Несмотря на то, что программа Вам пока незнакома, отдельные команды Вычислительны сможете вспомнить или изучить.

    3. Вновь выполните задания 3.1. – 3.12., но используя уже картинку на экране монитора.

    4. Выполните задания 3.13 – 3.17. Эти эадания потребуют от вас умений вводить изменения (новые числовые значения) в ячейки и регистры. Если забыли, как это делать, воспользуйтесь Инструкцией по работе с программой TD.

    5. Распечатайте картинку экрана программы TD.EXE после исполнения п.3.17.лаб. работы.

    6. Составьте отчет по работе.

  1. Задания к работе

    1. Выпишите адрес текущего сегмента данных нулевого, а эатем и первого его байтов.

    1. Вычислите физический адрес ячейки текущего сегмента данных с полным указателем DS:0005.

    2. Укажите, какое значение находится в сегменте данных по адресу смещения 00010 = 000Аh. Это значение байта или слова?

    3. Определите содержимое ячеек DS:0003h и DS:0011h. В каком сегменте они размещены?.

    4. Укажите в h- кодах и b- кодах содержимое регистров AH, AL, AX.

    5. Найдите в сегменте кодов одну из команд.. Выпишите в отчет ее полный указатель, мнемокод команды на языке Assembler и h - код ее инструкции МП

    1. Найдите третий байт и третье слово в сегменте данных, выпишите их адреса (полный указатель) и значение в h- и b- кодах.

    2. Найдите команду языка Assembler по ее следующему полному указателю: CS:0013h. Выпишите в отчет эту команду на языке Assembler и ее h - код инструкции. Составьте структурную схему выполнения операции команды.

    3. Выпишите в отчет h- кодах и b- кодах содержимое ячейки памяти по адресу CS:0005h

    4. Введите константу 0F2h в сегмент данных по адресу смещения 0001h

    5. Введите содержимое ячейки DS:09A6h в любую ячейку стека Сколько ячеек стека и с какими полными адресами использовано под введенную константу?.

    6. Введите содержимое регистра DX в сегмент данных по адресу смещения DS:0000h.

    7. Иэмените значение флага Z. Каков смысл этого флага.

    8. Попробуйте записать константу C2h по адресу: DS:0003h. Изменилось ли содержимое ячейки памяти? Почему? Переведите константу C2h в десятичную систему счисления, проверьте ее формат в h – кодах и исправьте исходный формат и вновь попробуйте записать эту константу в ту же ячейку. Опишите в отчете результата своей работы

  1. Содержание отчета:

4.1. Тема и N лаб. работы

    1. Тексты заданий с 3.1. по 3.17и результаты их выполнения.

    2. Экран программы TD.EXE после исполнения п.3.17.лаб. работы на Вашем компьютере (а не) рис. 1 в данных методуказаниях.

    3. Ответы на контрольные вопросы и выполнение всех заданий п. 5.

Примечание: Тексты заданий и вопросов записывать полностью !

  1. Контрольные вопросы и задания для самопроверки:

5.1. Назовите все сегментные регистры

    1. Какой сегмент данных называется текущим?

    2. Как называется содержимое ячейки сегмента кодов?

    3. Какова разрядность регистров общего назначения?

    4. Что содержит регистр IP?

    5. Какие регистры по умолчанию адресуют элемент в сегмент данных?

    6. Какой регистр указывает на смещение в сегменте кодов?

    7. В каких регистрах нельзя хранить операнды?

    8. В каких регистрах можно хранить адреса смещений?

    9. Приведите пример числового значения полного указателя в h- кодах.

    10. Приведите примеры чисел: 4, 35, 335 в форматах байта и слова.

    11. Нарисуйте карту памяти для следующих сегментов:

    12. -Сегмента кода размером 5 слов.

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

    14. -Сегмент дополнительных данных с одноразрядным, двухразрядным и трехразрядным десятичными числами в кодах ASCII.

Литература:

  1. Архитектура и программирование реального режима микропроцессоров фирмы Intel: Уч. пособие /Сост. Т.К.Щемелева; Перм. техн. ун-т. Пермь,2001. 96 c.

  2. Абель П. Язык ассемблера для IBM PC и программирования. – М.: Высш. шк., 1992. 447 с.

  3. Любые источники с темой: Команды языка ассемблера для IBM PC (процессоров Intel)

.

Рисунок 1-Рабочий экран программы TD.