Что означает Сегмент данных USE16 PARA PUBLIC 'DATA' при определении сегмента данных? - PullRequest
0 голосов
/ 10 апреля 2019

Я использую язык ассемблера 80x86.

DATA SEGMENT USE16 PARA PUBLIC 'DATA'
DAT DW 0AH
TMP DB 'WWWWW$' ;中间过程用
TGT DB 'WWWWW$' ;16位二进制数转换后至多为5位加上结束符‘$’
DATA ENDS

1 Ответ

4 голосов
/ 10 апреля 2019

Директива SEGMENT может принимать две формы :

name SEGMENT [attributes]

SEGMENT name [attributes]

Первая используется в этом случае.


DATA
Это имя сегмента

SEGMENT
Это первая форма директивы сегмента.

USE16
При использовании в объявлении сегмента кода, это определяет размер операнда по умолчанию.При использовании в сегменте данных он ограничивает максимальный размер сегмента.

PARA
Выравнивание по абзацам (16 байт).

PUBLIC
Этот сегментбудет объединен с другими сегментами с тем же именем вне модуля для формирования единого непрерывного сегмента.

'DATA'
Это класс сегментов.Он используется компоновщиком для упорядочения и группировки (конкататирования) сегментов во время компоновки.Каждый сегмент с одним и тем же классом сгруппирован, но возможна и другая группировка (например, данные и неинициализированные данные).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...