Последние публикации
стили и дизайн Что выгоднее: покупать горячую воду или ..
17-03-2014
секрет успеха Профессия: риэлтор
25-12-2013
разное Мегаталантливый Мэрилин Мэнсон
25-12-2013
рыбалка и охота баллистический маятник
12-07-2013
Название
Автор
Рубрика

Анекдот
- А правда, что рыба полезна для мозга?
- Да, особенно рыбная ловля - для развития воображения.
компьютерные технологии
Язык Макроассемблера IBM PC
В пособии рассматривается язык макроассеблера для персональных ЭВМ типа IBM PC (язык MASM, версия 4.0) .

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


При записи в MASM команд перехода следует учитывать, что они могут восприниматься неоднозначно. Скажем, как воспринимать команду JMP A - как переход по метке A или как переход по адресу, хранящемуся в ячейке с именем A? Кроме того, какой это переход внутрисегментный или межсегментный? Ответ зависит от того, как описано имя A, и от того, когда описано имя A - до или после команды перехода.


Пусть A описано до команды перехода ("ссылка назад") . Если именем A помечена некоторая команда текущего сегмента команда (т.е. A - метка) , тогда ассемблер формирует машинную команду внутрисегментного относительного перехода. Если же A - имя переменной, тогда ассемблер формирует машинную команду косвенного перехода - внутрисегментного, если A описано в директиве DW, или межсегментного, если A описано в директиве DD.


В случае же, если имя A описано после команды перехода ("ссылка вперед") , ассемблер всегда формирует машинную команду внутрисегментного относительного длинного перехода. С учетом этого имя A обязательно должно метить команду из текущего сегмента команд, иначе будет зафиксирована ошибка. Если такая трактовка ссылки вперед не удовлетворяет автора программы, тогда он обязан с помощью оператора SHORT или PTR уточнить тип имени A: JMP SHORT A ;внутрисегментный короткий переход по метке JMP WORD PTR A ;внутрисегментный косвенный переход JMP DWORD PTE A ;межсегментный косвенный переход Отметим, что переход по метке A из другого сегмента команд всегда должен указываться с помощью FAR PTR (независимо от того, описана метка A до или после команды перехода) : JMP FAR PTR A ;межсегментный переход по метке


1.5.2 Условные переходы.


Практически во всех командах условного перехода проверяется значение того или иного флага (например, флага нуля ZF) и, если он имеет определенное значение, выполняется переход по адресу, указанному в команде. Значение флага должно быть установлено предыдущей командой, например, командой сравнения CMP op1, op2 которая вычисляет разность op1-op2, однако результат никуда не записывает, а только меняет флаги, на



Дата публикации: 15-06-2007
Прочитано: 7677 раз
Страниц: 28
-21-
[<][ 1 | ... | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 ][>]

Дополнительно на данную тему
Компьютерные сети и телекоммуникации
Корпоративная сеть
Корпоративные ЛВС
Компьютерные сети
Turbo Vision
   
Рейтинг@Mail.ru
ENQ.ru © 2005-2012
Генерация страницы: 0.040 сек. и
11 запросов к базе данных за 0.004 сек.
Designed by ZmEi