Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы по экзамену(Асемблер).doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
350.72 Кб
Скачать

9 Вопрос

После того как устранены все ошибки и получен объектный модуль можно приступать к созданию исполняемого модуля или к процессу компоновки программы. Главная цель этого шага – это преобразование кода и данных в объектных файлах в их перемещаемое выполняемое отображение. Процесс создания перемещаемого модуля разделяется на 2 шага – трансляция и компоновка Это устроено для того что бы можно было объединять вместе несколько модулей. Результатом работы компоновщика является создание загрузочного файла с расширением .exe. После этого ОС может загрузить такой файл в память и выполнить его

Полный формат командной строки компоновщика

TLINK [опции] список объектных файлов [, Имя загрузочного модуля][, Имя файла карты][, Имя файла библиотеки][,Имя файла определения][,Имя ресурсного файла]

10Вопрос

После получения исполняемого модуля обязательным этапом процесса разработки является отладка. На этапе отладки используется описание алгоритма , выполняется контроль правильности функционирования, как отдельных участков кода, так и все программы в целом. После отладки требуется провести тестирование программы.

TURBO_DEBUGGER (TD). Представляет собой оконную среду отладки программ на уровне исходного текста. Он позволяет решить 2 главные задачи.

1. Определить место логической ошибки

2. Определить причину логической ошибки

Основные возможности отладчика:

  1. Последовательное выполнение программы, при котором за шаг выполняется одна машинная команда

  2. Выполнение программы по одной команде, но в обратном направлении

  3. Просмотр и изменение аппаратных ресурсов МП

Существуют следующие ключевые моменты получения исходного модуля

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

  2. Исходный модуль должен быть оттранслирован с опцией /Z. Применение опции разрешает транслятору сохранить связь символов имена программе и смещений в сегменте кода, что позволяет отладчику производить отладку используя оригинальные имена.

  3. Редактирование модуля должно быть осуществлен с опцией /V. Опция указывает на необходимость сохранения отладочной информации в исполняемом файле.

  4. Запуск отладчика удобнее производить из командной строки

14 Вопрос

Первая группа состоит из регистров, которые в первую очередь используются для вычислительных целей. Все эти регистры имеют ширину 16 бит, но программа может в индивидуальном порядке использовать старшую или младшую 8=битовые части каждого регистра. Например, ширина регистра AX составляет 16 бит; программа может ссылаться на старшие 8 бит регистра AX, как на регистр AH, а младшие 8 бит – это регистр AL. То же самое справедливо и для регистров BX, CX и DX. Программа может рассматривать эту группу регистров как состоящую из четырех 16=бмтовых регистров, восьми 8=битовых или как некоторую комбинацию 8= и 16=битовых регистров. Основная цель, для которой предназначены регистры общего назначения - хранение операндов. Регистры общего назначения хороши тем, что они могут хранить как слово, так и байт данных. Однако иногда эти регистры имеют специальное назначение, приписываемое им некоторыми командами; или же они могут иметь особые возможности, лежащие за пределами возможностей всей группы. В следующих разделах показаны некоторые случаи специального использования этих регистров. Регистр AX соответствует аккумулятору разработанных ранее микропроцессоров. Кроме арифметических функций у регистра AX есть еще несколько специальных функций, придающих микропроцессору 8088 намного большую гибкость, чем у микропроцессора 8080. Фирма Intel оптимизировала набор команд микропроцессора 8088 так, чтобы он выполнял некоторые команды, используя регистр AX. Например, непосредственные операции, это такие, в которых один из операндов является числом, содержащимся в самой команде. Непосредственные операции, использующие регистр AX или регистр AL (16= или 8=битовый аккумуляторы соответственно), обычно требуют написания меньшей по размеру команды, чем идентичные операции, использующие любой другой регистр общего назначения. А меньший размер команды позволяет сокращать программу и ускорять ее выполнение. Регистр BX используется как регистр адресации и как вычислительный регистр. Когда он используется как 16=битовый регистр, то может быть компонентой при определении адреса операнда. В следующих разделах главы будут рассмотрены способы адресации, используемые в микропроцессоре 8088. Команды микропроцессора 8088 используют регистр CX в качестве счетчика; в нем хранится число повторений одной команды или фрагмента программы. Регистр DX служит в качестве расширителя аккумулятора для вычислений повышенной точности, а также при умножении и делении. Регистры AX и DX вместе участвуют в этих 32=битовых операциях.