Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
loktuhin_arhitektura_kompjutera_kniga_2.pdf
Скачиваний:
89
Добавлен:
13.04.2015
Размер:
704 Кб
Скачать
☆

манд адреса операндов заменять их мнемоническими обозначениями. Так, адреса [0500h], [0502h] и [0504h] заменяют на имена переменных k, r и m соответственно.

2. Если задано, что данные представлены в формате байта, то они описываются в программе с помощью директивы db.

Комментарии к программе (пример 3.5)

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

2.В приведенной программе можно применять, например, только косвенную регистровую адресацию данных (см. п. 2.3.2). В этом случае модификация указателя памяти ВХ на +2 для установки в нем четных адресов 502h, 504h и 506h перед выборкой переменных R, N и M из памяти может быть осуществлена путем последовательного выполнения двух команд инкремента INC BX.

3.При представлении данных в формате байта модификация адреса операнда в указателе BX производится только с помощью одной команды INC BX.

3.3. Системное программное обеспечение ПК для разработки программ на языке ассемблера МП 80х86

3.3.1. Разновидности программного обеспечения для разработки программ на языке ассемблера

В состав программного обеспечения (ПО) микрокомпьютерных, или микропроцессорных систем (МПС) входят:

–программное обеспечение пользователя, содержащее алгоритмы

ипрограммы решаемой задачи;

–системное программное обеспечение (СПО).

С помощью СПО осуществляют создание (редактирование) исходных текстов программ, генерирование исполняемых модулей, их запуск и поддержку отладки. Различают следующие виды СПО: резидентное и кросс-СПО (рис. 3.1).

Кросс-СПО включает в себя системные программы (кросс-ассем- блер, кросс-отладчик), которые работают на ПК, содержащем микропроцессор, отличающийся своей системой команд от микропроцессора, входящего в состав МПС (рис. 3.1б).

58

ПК

МПС

ПК

МПС

 

 

 

Одинаковые

 

Разные

Резидент-

 

Кросс-

 

ное СПО

 

СПО

 

 

а

 

б

Рис. 3.1. Структура резидентного (а) и кросс-СПО (б)

Кросс-СПО широко используется в ПК в качестве эмуляторов микропроцессоров и микроконтроллеров, применяемых в различных специализированных микрокомпьютерных системах.

3.3.2. Состав резидентного СПО IBM РС

для разработки и отладки программ на языке ассемблера

Системные программы, образующие СПО, хранятся на диске компьютера. Возможный набор системных программ для создания исполняемых модулей может содержать: редактор (например, встроенный в оболочку Total Commander, Norton Commander или другие); ассемблер (транслятор) tasm.exe; редактор связей tlink.exe; турбоотладчик td.exe (рис. 3.2). В частности, указанные файлы обычно входят в состав каталога BIN программных пакетов, поддерживающих программирование на языках высокого уровня Си и Паскаль.

 

Исх. модуль

 

Объектные

 

Исполняемый

Редак-

на ASM

Ассемб-

модули

Редактор

модуль

.asm

.obj

.exe

тор

лер tasm

связей

 

 

 

 

Испр. синт.

 

.obj

tlink

Отладчик

 

 

.obj

 

 

ошибок

.lst

 

td

 

 

 

 

 

Исправление логич. ошибок

Рис. 3.2. Этапы разработки и отладки программ на языке ассемблера

Рассматриваемое базовое СПО является эффективным средством автоматизации процесса разработки и отладки прикладных программ на языке ассемблера МП семейства 80х86. На рисунке 3.2 показаны этапы разработки и отладки программ на языке ассемблера на основе рассматриваемого состава СПО.

59

В состав базового СПО для разработки программ на языке ассемблера МП 80х86 входят следующие системные программы.

1. Турбоассемблер tasm.ехе

Представляет собой системную программу ПК, осуществляющую преобразование исходной программы на языке ассемблера МП 80х86 в объектную программу.

Исходную программу, еще называют исходным модулем типа .asm, транслятор (ассемблер) преобразует в перемещаемый объектный модуль типа .obj, который наряду с кодами команд содержит служебную информацию, необходимую для формирования далее исполняемого модуля.

Трансляция запускается командой, набираемой в командной строке, например, оболочки Norton Commander:

tasm [опции] <имя файла>.asm, ,

Если в команде будет указана одна запятая, то файл листинга программы с расширением .lst не формируется.

Перечень опций может быть вызван командой tasm . Отметим наиболее используемые опции:

/zi – включает в объектный модуль информацию для отладки; /n – подавляет вывод таблицы символов в листинге.

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

2. Редактор связей (компоновщик) tlink.ехе

Объединяет созданные ассемблером объектные модули в единый исполняемый модуль с расширением .exe или .com для размещения его в основной памяти ПК для последующего исполнения. Редактор связей запускается командой

tlink [опции] <объектные файлы>

Отметим наиболее употребляемые опции:

/x – не создавать .MAP-файл с картой исполняемой программы; /v – включить символьную информацию для отладчика;

/t – создать исполняемый com-файл;

/3 – создать исполняемый модуль для 32-разрядных МП.

3. Отладчик td.ехе

60

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