домашняя библиотека
Поиск в библиотеке
Навигация по предметам
Последние добавленные новости
Реклама

Архитектура и организация ЭВМЛекции по дисциплине - Архитектура и организация ЭВМ

Тема 5. Директивы языка Ассемблер

Ассемблер имеет ряд директив, которые позволяют управлять процессом ассемблирования и формирования листинга. Директивы действуют только при выполнении операции ассемблирования исходного модуля и не генерируют машинных кодов.

1. Директива TITLE.

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

Формат записи директивы:

TITLE Имя

где Имя – это любая текстовая надпись.

Пример:

TITLE SORT

Здесь SORT – это имя программы.

2. Директива SEGMENT

Эта директива используется для определения сегмента в ассемблерной программе.

Формат записи директивы:

Имя SEGMENT [Параметры]

.

.

.

Имя ENDS

Имя сегмента должно обязательно присутствовать и быть уникальным. Директива ENDS закрывает сегмент. Директивы SEGMENT и ENDS должны иметь одинаковые имена.

Директива SEGMENT может иметь 3 типа параметров: параметр выравнивания, параметр объединения, параметр класса.

Параметр выравнивания.

Параметр выравнивания определяет положение начальной ячейки сегмента в параграфе.

Параметр выравнивания может принимать 3 значения: PARA, WORD, BYTE.

PARA – этот параметр определяет, что начальный адрес сегмента должен совпадать с началом параграфа.

CODE SEGMENT PARA

WORD – этот параметр определяет, что начальный адрес сегмента должен совпадать с четной ячейкой параграфа.

CODE SEGMENT WORD

BYTE – этот параметр определяет, что начальный адрес сегмента может совпадать с любой ячейкой параграфа.

CODE SEGMENT BYTE

Параметр объединения.

Параметр объединения определяет способ объединения нескольких сегментов при компоновке. Параметр объединения может принимать 4 значения: NONE, PUBLIC, STACK, COMMON.

NONE – этот параметр определяет, что сегмент должен быть логически отделен от других сегментов и иметь отличный от других сегментов начальный адрес.

CODE SEGMENT PARA NONE

PUBLIC – этот параметр определяет, что все сегменты, имеющие этот параметр, должны располагаться в соседних областях оперативной памяти и иметь общий начальный адрес.

CODE SEGMENT PARA PUBLIC

STACK – этот параметр определяет стековый сегмент, который содержит стековую память.

CODE SEGMENT PARA STACK

COMMON – этот параметр определяет, что сегменты, имеющие данный параметр и одинаковые имена, должны объединяться при компоновке в один общий сегмент.

CODE SEGMENT PARA COMMON

   
 
  • Добавлен: 30-06-2011, 23:18 | Просмотров: 11890

    support: admin@sdb.su