Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
I8086.DOC
Скачиваний:
50
Добавлен:
02.05.2014
Размер:
1.36 Mб
Скачать
      1. Mov– пересылка

88 /r

MOV r/m8, r8

пересылка из r8 в r/m8

89 /r

MOV r/m16, r16

пересылка из r16 в r/m16

8A /r

MOV r8, r/m8

пересылка из r/m8 в r8

8B /r

MOV r16, r/m16

пересылка из r/m16 в r16

8C /r

MOV r/m16, Sreg

пересылка из Sreg в r/m16

8E /r

MOV Sreg, r/m16

пересылка из r/m16 в Sreg

A0 ow

MOV AL, m8

пересылка из m8 в AL

A1 ow

MOV AX, m16

пересылка из m16 в AX

A2 ow

MOV m8, AL

пересылка из AL в m8

A3 ow

MOV m16, AX

пересылка из AX в m16

B0+rb

MOV r8, imm8

пересылка imm8 в r8

B8+rw

MOV r16, imm16

пересылка imm16 в r16

C6 /0

MOV r/m8, imm8

пересылка imm8 в r/m8

C7 /0

MOV r/m16, imm16

пересылка imm16 в r/m16

Описание.КомандаMOVпересылает содержимое источника (своего второго операнда) на место приёмника (первого операнда).

Инструкции с кодами операций 8Cи 8Eобеспечивают загрузку и извлечение информации из сегментных регистров. Занесение информации в регистрCSс помощью инструкцииMOVневозможно, для этой цели необходимо использовать любую инструкцию дальнего (межсегментного) перехода.

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

Флажкине изменяются.

      1. Movs– пересылка строк

A4

MOVSB

пересылка байта из [DS:SI] в [ES:DI]

A5

MOVSW

пересылка слова из [DS:SI] в [ES:DI]

Описание.Эта инструкция пересылает операнд-источник на место операнда-приёмника.

Инструкция MOVSотносится к группе инструкций обработки строк. Оба её операнда находятся в памяти. Адрес источника задаётся регистровой паройDS:SI, адрес приёмника – регистровой паройES:DI. Сегментный регистрDSможет быть заменён другим сегментным регистром с помощью префикса замены сегмента; сегментный регистрESзаменён быть не может.

После выполнения операции содержимое регистров SIиDIавтоматически увеличивается или уменьшается на размер операнда, т.е. на 1 или на 2. Увеличение (автоинкремент) имеет место, если флажок направленияDFв регистре флагов сброшен, а уменьшение (автодекремент) – если флажокDFустановлен.

За одно выполнение инструкции пересылается один байт или одно слово. Группа байтов или слов может быть переслана посредством использования префикса повторения REP.

Флажкине изменяются.

Замечания по программированию

При записи на языке ассемблера либо используется мнемоника MOVSBилиMOVSW, явно определяющая размер операндов, либо используется обобщённая мнемоникаMOVSодновременно с указанием местоположения самих операндов в памяти. Следует, однако, помнить, что адресация операндов всегда осуществляется с помощью регистровых парDS:SIиES:DI, поэтому указываемые в данной инструкции адреса используются только для определения размера операндов и, возможно, для применения префикса замены сегмента. За правильность установки начальных значений регистров отвечает программист.