Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodicheskie_ukazania.doc
Скачиваний:
8
Добавлен:
03.03.2016
Размер:
6.75 Mб
Скачать

Оценка результатов практикик содержанию

Вид работы

баллы

Примечание

Входной контроль

0÷10

не пересдается

Лаб. работа №1

8÷15

максимальная оценка при своевременной сдаче

Лаб. работа №2

8÷15

максимальная оценка при своевременной сдаче

Лаб. работа №3

10÷17

максимальная оценка при учете всех частных случаев при выводе чисел и своевременной сдаче

Лаб. работа №4

10÷18

максимальная оценка при учете всех частных случаев при вводе чисел и своевременной сдаче

Контр. работа №1

0÷10

возможна пересдача

Контр. работа №2

0÷10

возможна пересдача

Оформление итогового отчета

3÷5

Выставляется на зачетном занятии с учетом полноты и качества оформления в соответствии с ГОСТ.

итого

<60

60÷63

64÷73

74÷81

82÷89

90÷100

F неудовлетворительно

E удовлетворительно

D удовлетворительно

C хорошо

B хорошо

A отлично

Рекомендованная литература

  1. П. Абель. Язык программирования для IBM PC. М., 1992

  2. Пирогов В.Ю. Assembler. Учебный курс. М, 2001

  3. Зубков С.В. Assembler для DOS, Windows, Unix. М, 2000

  4. Юров В.А. Assembler. Учебный курс

  5. Рудаков Г.И., Финогенов К.Г. Программируем на языке Assembler

Отладка программы в среде отладчикаTd к содержанию

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

> td lab1.exe.

Возможен запуск td.exe без параметров, в этом случае для выбора отлаживаемого файла выбирается в главном меню программы пункт File -> Open и из открывшегося окна выбирается файл (например, lab1.exe). После загрузки на экране будет отображена наша программа (рис.1).

Рисунок 1 – Вид отладчика после загрузки программы.

В окне Watches можно просматривать значения переменных, однако для более детальной отладки программы нужно иметь возможность видеть регистры, флаги и память одновременно. Для такого просмотра программы выберем в меню View->CPU. Экран примет вид, показанный на рис. 2.

Рисунок 2 Вид отладчика в режиме просмотра СPU.

Как видно из рисунка, окно СPU разделено на 5 частей. Переключаться между частями можно либо мышкой, либо клавишей TAB. Самая большая часть – окно кода программы. Первая колонка в этом окне – логический адрес команды в виде сегмент: смещение (например, cs:0000). Вторая колонка – машинный код команды (например, 1Е). Третья колонка – мнемокод команды и ее операнды (например, push ds). Черный треугольник указывает на команду, которая сейчас будет выполняться (но еще не выполнилась!). Регистр IP содержит адрес этой ячейки памяти. В части, правее большого участка окна, показано содержимое регистров общего назначения (ax, bx, cx, dx, si, di, bp), сегментных регистров (cs, ds, es, ss) специальных регистров (ip, sp). В процессе отладки можно менять состояние регистров. Еще правее показан регистр флагов состояния процессора. В нижнем правом углу отображается стек программы. Черный треугольник указывает его вершину (регистр SP содержит адрес этой ячейки памяти). Адреса в окне стека возрастают снизу вверх. Просмотр состояний стека выполняется клавишами управления курсора. Разрешено изменять значения слов в стеке.

Остальную нижнюю область занимает область памяти (Dump). Первая колонка это логический адрес памяти. Далее 8 колонок это значения байт памяти в 16 с.с. Справа записаны строки, в которых символы отображают значения байт памяти в кодах ASCII. В этом окне можно просматривать память сегментов программы. Чаще всего здесь просматривают сегмент данных. Для этого, сделав это окно активным, нужно набрать комбинацию Ctrl-G и в появившемся окне ввести ds:0000 (рис.3). Но делать это нужно после того, как в программе будет выполнена загрузка сегментного регистра ds адресом начала сегмента данных, т.е. после команд

mov ax, data

mov ds,ax.

Рисунок 3 – Выбор начального адреса для просмотра памяти

После выбора начального адреса дамп памяти будет иметь вид, показанный на рис.4. Первый байт дампа 02 – значение переменной а, второй байт FB – значение переменной b=-5 (отрицательные числа хранятся в дополнительном коде), третий байт 11 – значение переменной с=17 (в 16 с.с). Переменная х не инициализирована и в дампе памяти равна нулю. Если выполнить программу до конца, то в этом поле памяти будет находиться окончательный ответ формулы.

Рисунок 4 – В дампе памяти отображен сегмент данных программы

Для переменных, описанных в сегменте данных типом word (dw), дамп памяти будет иметь вид, показанный на рис.5.

Рис. 5 – В дампе памяти отображен сегмент данных программы с переменными типа word

Как видно из рис.5, под каждую переменную отводится два байта, но байты располагаются в обратном порядке. Для удобства просмотра таких переменных можно командой Ctrl-D изменить порядок расположения байтов в словах (word), двойных словах (long), и т.д. (рис.6)

Рисунок 6 – Результат отработки команды изменения формата отображения данных

Пункт меню RUN определяет режимы выполнения (отладки) программы, которые представлены в таблице 1.

Таблица 1 – Режимы выполнения программы.

Клавиши управления

Режим выполнения

F9

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

F7

Пошаговое выполнение команд без захода в подпрограммы (команда CALL) и без просмотра выполнения циклов (команда LOOP).

F8

Пошаговое выполнение команд с заходом в подпрограммы (команда CALL) и с просмотром выполнения циклов (команда LOOP)..

F4

Выполнение программы от текущего состояния до позиции курсора.

Ctrl-F2

Завершение текущей отладки программы с перезагрузкой ее и подготовкой к новому циклу отладки.

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