Основы программирования микропроцессоров


Обозначение Описание



Download 1,87 Mb.
bet77/119
Sana23.02.2022
Hajmi1,87 Mb.
#139915
TuriКонтрольные вопросы
1   ...   73   74   75   76   77   78   79   80   ...   119
Bog'liq
Системное программирование

Обозначение

Описание

r

Фиксация смещения для символических имен в модуле.

s

Фиксация сегмента для символических имен в модуле.

sr

Фиксация сегмента и смещения для символических имен в модуле.

e

Фиксация смещения внешнего символического имени.

se

Фиксация указателя внешнего символического имени.

so

Только сегментная фиксация.

+

Объектный код был усечен.

В листинге объектного кода r, s и sr используются для обозначения типов фиксации символических имен в модуле по смещению, сегменту и указателю (сегмент и смещение). Символ e указывает на фиксацию смещения внешнего символического имени, а se на фиксацию указателя внешнего символического имени. Фиксация сегмента внешнего символического имени обозначается буквой s, как и для локальных символических имен. Поле объектного кода может также содержать в последнем столбце символ +, означающий, что имеется еще объектный код для вывода, но он усечен.
Суммарно команда MOV AX, DATASG ассемблируется в 3 байта машинного кода. Следующая команда MOV DS, AX, начинается в сегменте кода со смещением 3. Машинный код 8e D8 соответствует MOV DS, AX. Он имеет длину 2 байта, поэтому следующая команда должна начаться со смещением 5.
Обратите внимание, в файл листинга включается только первые 7 байт машинного кода, генерируемого для строки:

Text DB "This is simple text$"


Поля машинного кода, которые слишком длинны и не помещаются в поле <машинный код>, обычно усекаются и завершаются знаком (+), показывающим, что имеются еще байты, сгенерированные при ассемблировании, но в файле листинга не показанные. Если требуется отобразить все байты машинного кода, то следует использовать директиву %NOTRUNC, которая отменяет усечение кодов, не помещающихся в данном поле.


Исходная строка представляет строку исходного файла программы, с комментариями. Некоторые строки ассемблерной программы, в которых содержатся только комментарии и ничего более, не вызывают генерирования каких-либо машинных кодов. Для таких строк поля <смещение> и <машинный код> не создаются, но номер строки им все равно присваивается.
После исправления всех ошибок (если они были обнаружены) с помощью файла листинга вновь выполним команду трансляции и получим объектный модуль FIRST.OBJ. Модуль будет содержать машинные коды созданной программы. Однако модуль не является исполняемым, его не удастся загрузить в память и выполнить. Для этого следует выполнить следующую команду:

TLINK FIRST.OBJ


Программа TLINK.EXE называется компоновщиком. Она создаст перемещаемый исполняемый модуль FIRST.EXE. Вызвать модуль FIRST.EXE на выполнение можно из операционной системы MS-DOS или из отладчика DEBUG. Обычно программы вызывается из MS-DOS, когда есть твердая уверенность в правильности ее исполнения. Для выполнения программы необходимо ввести команду:


FIRST.EXE


По этой команде операционная система MS-DOS проведет считывания файла FIRST в любое подходящее место оперативной памяти и затем передаст ему управление. По окончании работы управление будет передано операционной системе, и программа может быть вновь запущена. На рис. 26 показаны выполненные действия по трансляции и компоновке программы.



Рис. 26. Трансляция и компоновка программы на ассемблере.



Download 1,87 Mb.

Do'stlaringiz bilan baham:
1   ...   73   74   75   76   77   78   79   80   ...   119




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish