Главная Случайная страница


Полезное:

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


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Ки практически во всех других командах (кроме строковых и





Стековых) —это ссылки на сегмент данных. Например, в команде

Пересылки

MOV АХ,Х

Имя X воспринимается как ссылка на данное, а потому автоматиче-

Ски преобразуется в адресную пару DS.-x. В команде же безусловно-

Го перехода по адресу, находящемуся в регистре вх,

JMP ВХ

абсолютный адрес перехода определяется парой cs: [ВХ].

Итак, если в ссылке на какую-то ячейку памяти не указан явно

Сегментный регистр, то этот регистр берется по умолчанию Явно

Же сегментные регистры надо указывать, только если по каким-то

Причинам регистр по умолчанию не подходит. Если, например, в

Команде пересылки следует сослаться на стек (скажем, надо запи-

Сать в регистр АН байт стека, помеченный именем х), тогда нас уже

Не будет устраивать договоренность о том, что по умолчанию опе-

Ранд команды MOV сегментируется по регистру DS, и потому мы обя-

Глава 4. Персональные-компьютеры

Заны явно указать иной регистр -

как именно он указывает на стек:

MOV A H, S S: X

В нашем случае регистр SS, так

Однако такие случаи встречаются редко и поэтому в командах,

Как правило, указываются только смещения.

Отметим, что в MASM сегментный регистр записывается в са-

Мой команде непосредственно перед смещением (именем перемен-

Ной, меткой и т. п.), однако на уровне машинного языка ситуация

Несколько иная. Имеются четыре специальные однобайтовые ко-

Манды, называемые префиксами замены сегмента (обозначаемые

как CS:, DS:, SS: и ES:). Они ставятся перед командой, опе-

Ранд-адрес которой должен быть просегментирован по регистру, от-

Личному от регистра, подразумеваемому по умолчанию. Например,

Приведенная ранее символическая команда пересылки —это на са-

мом деле две машинные команды:

SS:

MOV АН,Х

С е г м е н т и р о в а н и е, б а з и р о в а н и е и и н д е к с и р о в а -

Ние адресов. Поскольку сегментирование адресов —это разно-







Date: 2015-11-13; view: 383; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию