Учебные материалы по математике | Кодирование и отладка программ на ассемблере | Matematiku5
Вузы по математике Готовые работы по математике Как писать работы по математике Примеры решения задач по математике Решить задачу по математике online

Кодирование и отладка программ на ассемблере


Кодирование и отладка программ на языке ассемблера для IBM PC.

Разработка программы на ассемблере, как и на других языках программирования состоит из нескольких этапов:

1.Ввод исходного кода. В любом текстовом редакторе, который не добавляет скрытых символов необходимо набрать исходный код программы и сохранить его в файле с расширением *.asm.

2.Получение объектного файла (компиляция). Компилятор исходных файлов на языке ассемблера собственно и называется «ассемблер», а сам процесс компиляции — ассемблированием. После успешной компиляции, если в программе нет синтаксических ошибок, создаётся объектный файл с расширением *.obj

3.Создание исполняемого файла. На последнем этапе необходимо скомпоновать объектный файл в исполняемый. В общем случае компоновка заключается в создании исполняемого файла из нескольких объектных файлов, которые могут быть разработаны разными людьми. Если компоновка прошла успешно, то будет создан исполняемый файл с расширением *.exe.

Если создан исполняемый файл, то это означает что программа не содержит синтаксических ошибок, но программист должен быть готов к тому, что после запуска программы на исполнение он увидит, что результат её работы отличается от ожидаемого. В этом случае необходимо найти логические ошибки в алгоритме программы и вернуться к пункту 1.

Иногда удаётся найти ошибку, просматривая исходный код программы, но иногда бывают трудноуловимые ошибки, которые легче найти, если увидеть работу программы, т. е. результат исполнения каждого оператора. Этот процесс называется отладкой программы. Для этой цели служит специальная программа- отладчик (debugger).

Существует множество компиляторов для языка Ассемблера IBM PC. В нашем курсе будет использован Turbo Assembler 3.2 фирмы Borland.

В Turbo Assembler файл tasm. exe –это компилятор, tlink. exe— компоновщик (линковщик), а td. exe – отладчик (Turbo Debugger)

Пример:

Исходный текст программы на языке Ассемблера содержится в файле с именем prim.asm.

Для того, чтобы откомпилировать исходный текст и получить объектный файл в командной строке необходимо ввести:

tasm /zi prim. asm

/zi-это ключ компилятора, который сохраняет в объектном файле информацию, необходимую для отладчика Turbo Debugger.

Если программа не содержит синтаксических ошибок, то будет создан файл prim.obj

После этого нужно создать исполняемый файл. Для этого необходимо с командной строки запустить компоновщик:

tlink /v prim.obj

где, /v –указывает на необходимость добавления отладочной информации в исполняемый файл.

Если на этапе компоновки не было сообщений об ошибках, то будет создан исполняемый файл prim. exe, который можно отлаживать при помощи программы Turbo Debugger. Для отладки исполняемого файла при помощи Turbo Debugger в командной строке необходимо набрать:

Td prim.exe

В главном окне программы Turbo Debugger появляется исходный текст программы. Для того чтобы увидеть состояние регистров процессора и оперативной памяти необходимо выбрать опцию View->CPU.

После этого появится группа окон CPU. Левое окно содержит команды языка ассемблера и их машинное представление в шестнадцатеричном виде. В нижнем окне отображается состояние оперативной памяти, в окнах слева отображается состояние программно доступных регистров процессора, регистр флагов и сегмент стека.

Выбирать соответствующие опции из меню и переключаться между окнами можно при помощи указателя мыши или используя соответствующие клавиши.

Для доступа к главному меню нужно нажать клавишу F10, а потом, используя стрелки «вправо», «влево», «вверх» «вниз», выбрать соответствующие опции из меню. Или же при помощи левой кнопки мыши выбрать нужные опции из меню.

Переключаться между окнами CPU можно при помощи клавиши Tab или же при помощи левой кнопки мыши, наводя указатель на соответствующее окно.

Каждое окно имеет локальное меню. Доступ к локальному меню можно получить, нажав правую кнопку мыши или Alt+F10.

В отладчике программа может исполняться в одном из четырёх режимов

Безусловного исполнения программы.

Выполнения по шагам.

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

Выполнение до точки останова.

Безусловное исполнение программы означает, что программа исполняется от текущего места и до конца. Исполняется этот режим при помощи клавиши F9.

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

Выполнение до текущего положения курсора. Курсор мыши устанавливается на строчку до которой необходимо выполнить программу, после этого программа исполняется до текущего положения курсора, путём нажатия клавиши F4.

Alt-F5- посмотреть результат вывода на экран.

Наташа

Автор

Наташа — контент-маркетолог и блогер, но все это не мешает ей оставаться адекватным человеком. Верит во все цвета радуги и не верит в теорию всемирного заговора. Увлекается «нефрохиромантией» и тайно мечтает воссоздать дома Александрийскую библиотеку.

Распродажа дипломных

 Скидка 30% по промокоду Diplom2020

А ты боишься COVID-19?

 Пройди опрос и получи промокод