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

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

После выполнения операции значение регистра SI и/или DI увеличивается (при DF=0) или уменьшается (при DF=1) на 1 (для байтовых строк) или на 2 (для строк из слов) .


Начальная установка всех этих регистров, а также флага DF должна быть выполнена до начала операции над строкой. Если сегментный регистр DS уже имеет нужное значение, тогда загрузить регистр SI можно с помощью команды LEA SI, <начальный/конечный адрес строки> Если же надо загрузить сразу оба регистра DS и SI, тогда можно воспользоваться командой LDS SI, m32 которая в регистр SI заносит первое слово, а в регистр DS - второе слово из двойного слова, имеющего адрес m32 (таким образом, по адресу m32+2 должен храниться сегмент, а по адресу m32 смещение начального или конечного элемента строки) . Начальную загрузку регистров ES и DI обычно осуществляют одной командой LES DI, m32 которая действует аналогично команде LDS.


Перечислим вкратце строковые команды ПК.


Команда загрузки элемента строки в аккумулятор (LODSB или LODSW) пересылает в регистр AL или AX очередной элемент строки, на который указывает пара DS: SI, после чего увеличивает (при DF=0) или уменьшает (при DF=1) регистр SI на 1 или 2.


Команда записи аккумулятора в строку (STOSB или STOSW) заносит содержимое регистра AL или AX в тот элемент строки, на который указывает пара ES: DI, после чего изменяет регистр DI на 1 или 2.


Команда пересылки строк (MOVSB или MOVSW) считывает элемент первой строки, определяемый парой DS: SI, в элемент второй строки, определяемый парой ES: DI, после чего одновременно меняет регистры SI и DI.


Команда сравнения строк (CMPSB или CMPSW) сравнивает очередные элементы строк, указываемые парами DS: SI и ES: DI, и результат сравнения (равно, меньше и т.п.) фиксирует в флагах, после чего меняет регистры SI и DI.


Команда сканирования строки (SCASB или SCASW) сравнивает элемент строки, адрес которого задается парой ES: DI, со значением регистра AL или AX и результат сравнения фиксирует в флагах, после чего меняет содержимое регистра DI.


Перед любой строковой командой можно поставить одну из двух команд, называемых



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

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