Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
9
Добавлен:
01.05.2014
Размер:
37.44 Кб
Скачать

STD - “бв ­®ўЄ  д« Ј  ­ Їа ў«Ґ­Ёп

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|FD STD 2 “бв ­®ўЄ  д« Ј  ­ Їа ў«Ґ­Ёп, |
| з⮠ᮮ⢥вбвўгҐв ¤ҐЄаҐ¬Ґ­вг |
| (E)SI Ё«Ё (E)DI |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

DF <- 1;

ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  STD гбв ­ ў«Ёў Ґв д« Ј ­ Їа ў«Ґ­Ёп DF, ў १г«мв вҐ 祣®
ўбҐ Ї®б«Ґ¤гойЁҐ бва®Є®ўлҐ ®ЇҐа жЁЁ Ўг¤гв ўлЇ®«­пвм ¤ҐЄаҐ¬Ґ­в
Ё­¤ҐЄб­ле ॣЁбва®ў, (E)SI Ё«Ё (E)DI, б Є®в®ал¬Ё ®­Ё а Ў®в ов.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

“бв ­ ў«Ёў Ґвбп д« Ј DF.

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

Ћвбгвбвўгов


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

Ћвбгвбвўгов

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

Ћвбгвбвўгов

-----------------------------------------------------------------

STI - “бв ­®ўЄ  д« Ј  ЇаҐалў ­Ёп

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|F13 STI 5 “бв ­®ўЄ  д« Ј  ЇаҐалў ­Ёп: |
| ЇаҐалў ­Ёп а §аҐиҐ­л, ­ зЁ­ п |
| б Є®­ж  б«Ґ¤го饩 Є®¬ ­¤л |
-----------------------------------------------------------------


ђ Ў®в  Є®¬ ­¤л
--------------

IF <- 1;

ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  STI гбв ­ ў«Ёў Ґв д« Ј IF. Џ®б«Ґ ўлЇ®«­Ґ­Ёп б«Ґ¤го饩
Є®¬ ­¤л Їа®жҐбб®а ¬®¦Ґв ॠЈЁа®ў вм ­  ў­Ґи­ЁҐ ЇаҐалў ­Ёп, Ґб«Ё
нв  б«Ґ¤гой п Є®¬ ­¤  ®бв ў«пҐв д« Ј IF ў б®бв®п­ЁЁ,
а §аҐи о饬 ЇаҐалў ­Ёп. …б«Ё ў­Ґи­ЁҐ ЇаҐалў ­Ёп § ЇаҐйҐ­л, Ё ўл
Ї®б«Ґ Є®¬ ­¤л RET ЁбЇ®«м§®ў «Ё Є®¬ ­¤г RET (­ ЇаЁ¬Ґа, ў Є®­жҐ
Ї®¤Їа®Ја ¬¬л), в® Є®¬ ­¤  RET Ўг¤Ґв ўлЇ®«­Ґ­  ¤® в®Ј®, Є Є
­ з­гв а бЇ®§­ ў вмбп ў­Ґи­ЁҐ ЇаҐалў ­Ёп. ’ Є¦Ґ, Ґб«Ё ў­Ґи­ЁҐ
ЇаҐалў ­Ёп § ЇаҐйҐ­л,   ўл ЁбЇ®«м§®ў «Ё Є®¬ ­¤г STI Ё §  ­Ґ©
Є®¬ ­¤г CLI, в® ў­Ґи­ЁҐ ЇаҐалў ­Ёп ­Ґ Ўг¤гв а бЇ®§­ ў вмбп,
Ї®бЄ®«мЄг Є®¬ ­¤  CLI ®зЁй Ґв д« Ј IF ў® ўаҐ¬п бў®ҐЈ®
ўлЇ®«­Ґ­Ёп.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

“бв ­ ў«Ёў Ґвбп д« Ј IF.

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP, Ґб«Ё ⥪гйЁ© га®ўҐ­м ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ Ў®«миҐ (Ё¬ҐҐв
¬Ґ­миго ЇаЁўЁ«ҐЈЁа®ў ­­®бвм), 祬 га®ўҐ­м ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ
ўў®¤ /ўлў®¤  (IOPL).


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

Ћвбгвбвўгов

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

Ћвбгвбвўгов

-----------------------------------------------------------------

STOS/STOSB/STOSW/STOSD - ‘®еа ­Ґ­ЁҐ бва®Є®ўле ¤ ­­ле

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|AA STOS m8 5 ‘®еа ­Ґ­ЁҐ AL ў Ў ©вҐ |
| ES:[(E)DI], ®Ў­®ў«Ґ­ЁҐ (E)DI |
|AB STOS m16 5 ‘®еа ­Ґ­ЁҐ AX ў б«®ўҐ |
| ES:[(E)DI], ®Ў­®ў«Ґ­ЁҐ (E)DI |
|AB STOS m32 5 ‘®еа ­Ґ­ЁҐ EAX ў ¤ў®©­®¬ б«®ўҐ |
| ES:[(E)DI], ®Ў­®ў«Ґ­ЁҐ (E)DI |
|AA STOSB 5 ‘®еа ­Ґ­ЁҐ AL ў Ў ©вҐ |
| ES:[(E)DI], ®Ў­®ў«Ґ­ЁҐ (E)DI |
|AB STOSW 5 ‘®еа ­Ґ­ЁҐ AX ў б«®ўҐ |
| ES:[(E)DI], ®Ў­®ў«Ґ­ЁҐ (E)DI |
|AB STOD 5 ‘®еа ­Ґ­ЁҐ EAX ў ¤ў®©­®¬ б«®ўҐ |
| ES:[(E)DI], ®Ў­®ў«Ґ­ЁҐ (E)DI |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

IF AddressSize = 16
THEN ЁбЇ®«м§®ў ­ЁҐ ES:DI ў Є зҐб⢥ DestReg
ELSE (* AddressSize = 32 *) ЁбЇ®«м§®ў ­ЁҐ ES:EDI ў Є зҐб⢥
DestReg;
FI;
IF Ў ©в®ўл© вЁЇ Є®¬ ­¤л
THEN
(ES:DestReg) <- AL;
IF DF = 0
THEN DestReg <- DestReg + 1;
ELSE DestReg <- DestReg - 1;
FI;
ELSE IF OperandSize = 16
THEN
(ES:DestReg) <- AX;
IF DF = 0
THEN DestReg <- DestReg + 2;
ELSE DestReg <- DestReg - 2;
FI;
ELSE (* OperandSize = 32 *)
(ES:DestReg) <- EAX;
IF DF = 0
THEN DestReg <- DestReg + 4;
ELSE DestReg <- DestReg - 4;
FI;
FI;
FI;


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  STOS ЇҐаҐбл« Ґв ᮤҐа¦Ё¬®Ґ ॣЁбва  AL, AX Ё«Ё EAX ў
Ў ©в Ё«Ё б«®ў® Ї ¬пвЁ, § ¤ ­­®Ґ ॣЁбв஬ ­ §­ зҐ­Ёп
®в­®бЁвҐ«м­® ᥣ¬Ґ­в  ES. ђҐЈЁбв஬ ­ §­ зҐ­Ёп пў«пҐвбп ॣЁбва
DI ¤«п  ваЁЎгв  а §¬Ґа   ¤аҐб  16 ЎЁв®ў, Ё«Ё EDI ¤«п  ваЁЎгв 
а §¬Ґа   ¤аҐб  32 ЎЁв .

ЋЇҐа ­¤ ­ §­ зҐ­Ёп ¤®«¦Ґ­  ¤аҐб®ў вмбп Ё§ ॣЁбва  ES;
ЇҐаҐ®ЇаҐ¤Ґ«Ґ­ЁҐ ᥣ¬Ґ­в  ­Ґ ¤®ЇгбЄ Ґвбп.

Ђ¤аҐб ­ §­ зҐ­Ёп ®ЇаҐ¤Ґ«пҐвбп ᮤҐа¦Ё¬л¬ ॣЁбва  ­ §­ зҐ­Ёп,  
­Ґ пў­® § ¤ ­­л¬ ®ЇҐа ­¤®¬ Є®¬ ­¤л STOS. ќв®в ®ЇҐа ­¤
ЁбЇ®«м§гҐвбп в®«мЄ® ¤«п 㤮бв®ўҐаҐ­Ёп  ¤аҐб㥬®б⨠ᥣ¬Ґ­в  ES Ё
®ЇаҐ¤Ґ«Ґ­Ёп вЁЇ  ¤ ­­ле. ЏҐаҐ¤ ўлЇ®«­Ґ­ЁҐ¬ Є®¬ ­¤л STOS б«Ґ¤гҐв
§ Јаг§Ёвм ў ॣЁбва DI Ё«Ё EDI Їа ўЁ«м­®Ґ §­ зҐ­ЁҐ Ё­¤ҐЄб .

Џ®б«Ґ в®Ј®, Є Є ЇҐаҐбл«Є  ўлЇ®«­Ґ­ , ॣЁбва DI  ўв®¬ вЁзҐбЄЁ
®Ў­®ў«пҐвбп. …б«Ё д« Ј ­ Їа ў«Ґ­Ёп а ўҐ­ 0 (Ўл«  ўлЇ®«­Ґ­ 
Є®¬ ­¤  CLD), Їа®Ёб室Ёв Ё­ЄаҐ¬Ґ­в ॣЁбва  ­ §­ зҐ­Ёп; Ґб«Ё
д« Ј ­ Їа ў«Ґ­Ёп а ўҐ­ 1 (Ўл«  ўлЇ®«­Ґ­  Є®¬ ­¤  STD),
Їа®Ёб室Ёв ¤ҐЄаҐ¬Ґ­в ॣЁбва  ­ §­ зҐ­Ёп. ЏаЁ б®еа ­Ґ­ЁЁ Ў ©в®ў
Ё­ЄаҐ¬Ґ­в Ё«Ё ¤ҐЄаҐ¬Ґ­в а ўҐ­ 1; ЇаЁ б®еа ­Ґ­ЁЁ б«®ў Ё­ЄаҐ¬Ґ­в
Ё«Ё ¤ҐЄаҐ¬Ґ­в а ўҐ­ 2; ЇаЁ б®еа ­Ґ­ЁЁ ¤ў®©­ле б«®ў Ё­ЄаҐ¬Ґ­в Ё«Ё
¤ҐЄаҐ¬Ґ­в а ўҐ­ 4.

Љ®¬ ­¤л STOSB, STOSW Ё STOSD пў«повбп бЁ­®­Ё¬ ¬Ё Є®¬ ­¤л STOS,
а Ў®в ойЁ¬Ё б Ў ©в®¬, б«®ў®¬ Ё ¤ў®©­л¬ б«®ў®¬, ᮮ⢥вб⢥­­®,
­Ґ вॡгойЁ¬Ё ®ЇҐа ­¤®ў. €е Їа®йҐ Їа®Ја ¬¬Ёа®ў вм, ­® ®­Ё ­Ґ
®ЎҐбЇҐзЁў ов Їа®ўҐаЄЁ вЁЇ  Ё«Ё ᥣ¬Ґ­в .

Љ®¬ ­¤Ґ STOS ¬®¦Ґв ЇаҐ¤иҐбвў®ў вм ЇаҐдЁЄб REPE Ё«Ё REPNE ¤«п
§ Ї®«­Ґ­Ёп Ў«®Є  Ё§ CX Ё«Ё ECX Ў ©в®ў, б«®ў Ё«Ё ¤ў®©­ле б«®ў.
Џ®¤а®Ў­®бвЁ б¬. ў ®ЇЁб ­ЁЁ Є®¬ ­¤л REP.


€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

Ћвбгвбвўгов

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0), Ґб«Ё ­ §­ зҐ­ЁҐ¬ пў«пҐвбп ᥣ¬Ґ­в, ­Ґ¤®бвгЇ­л© ¤«п
§ ЇЁбЁ; #GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб 
®ЇҐа ­¤  Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў
б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


STR - ‘®еа ­Ґ­ЁҐ ॣЁбва  § ¤ зЁ

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F 00 /1 STR r/m16 2/3 ‘®еа ­Ґ­ЁҐ ॣЁбва  § ¤ зЁ ў |
| б«®ўҐ, § ¤ ­­л¬ ЁбЇ®«­ЁвҐ«м­л¬ |
|  ¤аҐб®¬ |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

r/m <- ॣЁбва § ¤ зЁ;

ЋЇЁб ­ЁҐ
--------

‘®¤Ґа¦Ё¬®Ґ ॣЁбва  § ¤ зЁ Є®ЇЁагҐвбп ў ¤ўге-Ў ©в®ўл© ॣЁбва
Ё«Ё  ¤аҐб Ї ¬пвЁ, § ¤ ­­л© ®ЇҐа ­¤®¬ б ЁбЇ®«­ЁвҐ«м­л¬  ¤аҐб®¬.

Љ®¬ ­¤  STR ЁбЇ®«м§гҐвбп в®«мЄ® ®ЇҐа жЁ®­­л¬ Їа®Ја ¬¬­л¬
®ЎҐбЇҐзҐ­ЁҐ¬. ЏаЁЄ« ¤­лҐ Їа®Ја ¬¬л ҐҐ ­Ґ ЁбЇ®«м§гов.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

Ћвбгвбвўгов

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0), Ґб«Ё ­ §­ зҐ­ЁҐ¬ пў«пҐвбп ᥣ¬Ґ­в, ­Ґ¤®бвгЇ­л© ¤«п
§ ЇЁбЁ; #GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб 
®ЇҐа ­¤  Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў
б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 6; Є®¬ ­¤  STR ў ०Ё¬Ґ ॠ«м­ле  ¤аҐб®ў ­Ґ
а бЇ®§­ Ґвбп.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў.

ЏаЁ¬Ґз ­Ёп
----------

ЂваЁЎгв а §¬Ґа  ®ЇҐа ­¤  ­  ¤Ґ©бвўЁҐ нв®© Є®¬ ­¤л ­Ґ ў«ЁпҐв.

-----------------------------------------------------------------


SUB - –Ґ«®зЁб«Ґ­­®Ґ ўлзЁв ­ЁҐ

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|2C ib SUB AL,imm8 1 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| Ў ©в  Ё§ AL |
|2D iw SUB AX,imm16 1 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| б«®ў  Ё§ AX |
|2D id SUB EAX,imm32 1 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| ¤ў®©­®Ј® б«®ў  Ё§ EAX |
|80 /5 ib SUB r/m8,imm8 1/3 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| Ў ©в  Ё§ Ў ©в  r/m |
|81 /5 iw SUB r/m16,imm16 1/3 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| б«®ў  Ё§ б«®ў  r/m |
|81 /5 id SUB r/m32,imm32 1/3 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| ¤ў®©­®Ј® б«®ў  Ё§ |
| ¤ў®©­®Ј® б«®ў  r/m |
|83 /5 ib SUB r/m16,imm8 1/3 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| а биЁаҐ­­®Ј® §­ Є®¬ Ў ©в  |
| Ё§ б«®ў  r/m |
|83 /5 ib SUB r/m32,imm8 1/3 ‚лзЁв ­ЁҐ ­ҐЇ®б।б⢥­­®Ј® |
| а биЁаҐ­­®Ј® §­ Є®¬ Ў ©в  |
| Ё§ ¤ў®©­®Ј® б«®ў  r/m |
|28 /r SUB r/m8,r8 1/3 ‚лзЁв ­ЁҐ ॣЁбва  - |
| Ў ©в  Ё§ Ў ©в  r/m |
|29 /r SUB r/m16,r16 1/3 ‚лзЁв ­ЁҐ ॣЁбва  - |
| б«®ў  Ё§ б«®ў  r/m |
|29 /r SUB r/m32,r32 1/3 ‚лзЁв ­ЁҐ ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё§ |
| ¤ў®©­®Ј® б«®ў  r/m |
|2A /r SUB r8,r/m8 1/2 ‚лзЁв ­ЁҐ ॣЁбва  - |
| Ў ©в  Ё§ Ў ©в  r/m |
|2B /r SUB r16,r/m16 1/2 ‚лзЁв ­ЁҐ ॣЁбва  - |
| б«®ў  Ё§ б«®ў  r/m |
|2B /r SUB r32,r/m32 1/2 ‚лзЁв ­ЁҐ ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё§ |
| ¤ў®©­®Ј® б«®ў  r/m |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

IF SRC нв® Ў ©в,   DEST нв® б«®ў® Ё«Ё ¤ў®©­®Ґ б«®ў®
THEN DEST = DEST - SignExtend(SRC);
ELSE DEST <- DEST - SRC;
FI;


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  SUB ўлзЁв Ґв ўв®а®© ®ЇҐа ­¤ (SRC) Ё§ ЇҐаў®Ј® (DEST).
ЏҐаў®¬г ®ЇҐа ­¤г ЇаЁбў Ёў Ґвбп १г«мв в ўлзЁв ­Ёп,   д« ЈЁ
гбв ­ ў«Ёў овбп ᮮ⢥вбвўгойЁ¬ ®Ўа §®¬.

ЏаЁ ўлз¬Ёв ­ЁЁ Ё§ ®ЇҐа ­¤  - б«®ў  ­ҐЇ®б।б⢥­­®Ј® Ў ©в®ў®Ј®
§­ зҐ­Ёп Ї®б«Ґ¤­ҐҐ а биЁапҐвбп §­ Є®¬ ¤® а §¬Ґа  ®ЇҐа ­¤ 
­ §­ зҐ­Ёп.


€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

”« ЈЁ OF, SF, ZF, AF, PF Ё CF гбв ­ ў«Ёў овбп ў ᮮ⢥вбвўЁЁ б
१г«мв в®¬.

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0), Ґб«Ё ­ §­ зҐ­ЁҐ¬ пў«пҐвбп ᥣ¬Ґ­в, ­Ґ¤®бвгЇ­л© ¤«п
§ ЇЁбЁ; #GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб 
®ЇҐа ­¤  Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў
б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


TEST - ‹®ЈЁзҐбЄ®Ґ ба ў­Ґ­ЁҐ

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|A8 ib TEST AL,imm8 1 AND ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| Ў ©в  Ё AL |
|A9 iw TEST AX,imm16 1 AND ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| б«®ў  Ё AX |
|A9 id TEST EAX,imm32 1 AND ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| ¤ў®©­®Ј® б«®ў  Ё EAX |
|F6 /0 ib TEST r/m8,imm8 1/2 AND ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| Ў ©в  Ё Ў ©в  r/m |
|F7 /0 iw TEST r/m16,imm16 1/2 AND ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| б«®ў  Ё б«®ў  r/m |
|F7 /0 id TEST r/m32,imm32 1/2 AND ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| ¤ў®©­®Ј® б«®ў  Ё |
| ¤ў®©­®Ј® б«®ў  r/m |
|84 /r TEST r/m8,r8 1/2 AND ¤«п ॣЁбва  - |
| Ў ©в  Ё Ў ©в  r/m |
|85 /r TEST r/m16,r16 1/2 AND ¤«п ॣЁбва  - |
| б«®ў  Ё б«®ў  r/m |
|85 /r TEST r/m32,r32 1/2 AND ¤«п ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё |
| ¤ў®©­®Ј® б«®ў  r/m |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

DEST := LeftSRC AND RightSRC;
CF <- 0;
OF <- 0;


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  TEST ўлзЁб«пҐв Ї®а §ап¤­®Ґ «®ЈЁзҐбЄ®Ґ € (AND) ¤«п ¤ўге
§ ¤ ­­ле Ґ© ®ЇҐа ­¤®ў. Љ ¦¤л© ЎЁв १г«мв в  а ўҐ­ 1, Ґб«Ё ®Ў 
ᮮ⢥вбвўгойЁе ЎЁв  ®ЇҐа ­¤®ў а ў­л 1; ў Їа®вЁў­®¬ б«гз Ґ нв®в
ЎЁв а ўҐ­ 0. ђҐ§г«мв в ®ЇҐа жЁЁ вҐапҐвбп,   ¬®¤ЁдЁжЁаговбп
в®«мЄ® д« ЈЁ.


€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

”« ЈЁ OF Ё CF ®зЁй овбп; д« ЈЁ SF, ZF Ё PF гбв ­ ў«Ёў овбп ў
ᮮ⢥вбвўЁЁ б १г«мв в®¬.

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб  ®ЇҐа ­¤ 
Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


VERR, VERW - ‚ҐаЁдЁЄ жЁп ¤®бвгЇ­®бвЁ з⥭Ёп Ё«Ё § ЇЁбЁ ᥣ¬Ґ­в 

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F 00 /4 VERR r/m16 11/11 “бв ­®ўЄ  ZF=1, Ґб«Ё ᥣ¬Ґ­в |
| ¤®бвгЇҐ­ ¤«п з⥭Ёп, |
| ᥫҐЄв®а ў r/m16 |
|0F 00 /5 VERW r/m16 11/11 “бв ­®ўЄ  ZF=1, Ґб«Ё ᥣ¬Ґ­в |
| ¤®бвгЇҐ­ ¤«п § ЇЁбЁ, |
| ᥫҐЄв®а ў r/m16 |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

IF ᥣ¬Ґ­в б ᥫҐЄв®а®¬ ў (r/m) ¤®бвгЇҐ­ ¤«п
⥪г饣® га®ў­п § йЁвл
AND ((ᥣ¬Ґ­в ¤®бвгЇҐ­ ¤«п з⥭Ёп б®Ј« б­® VERR) OR
(ᥣ¬Ґ­в ¤®бвгЇҐ­ ¤«п § ЇЁбЁ б®Ј« б­® VERW))
THEN ZF <- 1;
ELSE ZF <- 0;
FI;


ЋЇЁб ­ЁҐ
--------

„ўге-Ў ©в®ўл© ॣЁбва Ё«Ё ®ЇҐа ­¤ Ї ¬пвЁ Є®¬ ­¤ VERR Ё VERW
ᮤҐа¦Ёв §­ зҐ­ЁҐ ᥫҐЄв®а . Љ®¬ ­¤л VERR Ё VERW ®ЇаҐ¤Ґ«пов
¤®бвгЇ­®бвм ᥣ¬Ґ­в , гЄ § ­­®Ј® ᥫҐЄв®а®¬, б ⥪г饣® га®ў­п
ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ,   в Є¦Ґ, ¤®бвгЇҐ­ «Ё ®­ ¤«п з⥭Ёп (VERR),
Ё«Ё ¤«п § ЇЁбЁ (VERW). …б«Ё ᥣ¬Ґ­в ¤®бвгЇҐ­, в® гбв ­ ў«Ёў Ґвбп
д« Ј ZF; Ґб«Ё ᥣ¬Ґ­в ­Ґ¤®бвгЇҐ­, в® д« Ј ZF ®зЁй Ґвбп. „«п
гбв ­®ўЄЁ д« Ј  ZF ¤®«¦­л 㤮ў«Ґвў®апвмбп б«Ґ¤гойЁҐ гб«®ўЁп:

- ‘Ґ«ҐЄв®а ¤®«¦Ґ­ ®Ў®§­ з вм ¤ҐбЄаЁЇв®а ў ЇаҐ¤Ґ« е Ја ­Ёж
в Ў«Ёжл (GDT Ё«Ё LDT): ᥫҐЄв®а ¤®«¦Ґ­ Ўлвм "®ЇаҐ¤Ґ«Ґ­".

- ‘Ґ«ҐЄв®а ¤®«¦Ґ­ ®Ў®§­ з вм ¤ҐбЄаЁЇв®а ᥣ¬Ґ­в  Є®¤  Ё«Ё ¤ ­­ле
(  ­Ґ ¤ҐбЄаЁЇв®а ᥣ¬Ґ­в  б®бв®п­Ёп § ¤ зЁ, LDT Ё«Ё и«о§ ).

- „«п Є®¬ ­¤л VERR ᥣ¬Ґ­в ¤®«¦Ґ­ Ўлвм ¤®бвгЇҐ­ ¤«п з⥭Ёп. „«п
Є®¬ ­¤л VERW ᥣ¬Ґ­в ¤®«¦Ґ­ Ўлвм ᥬҐ­в®¬ ¤ ­­ле, ¤®бвгЇ­л¬
¤«п з⥭Ёп.

- …б«Ё Є®¤®ўл© ᥣ¬Ґ­в ¤®бвгЇҐ­ ¤«п з⥭Ёп Ё пў«пҐвбп
Є®­д®а¬­л¬, га®ўҐ­м ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ ¤ҐбЄаЁЇв®а  (DPL) ¤«п
Є®¬ ­¤л VERR ¬®¦Ґв Ё¬Ґвм «оЎ®Ґ §­ зҐ­ЁҐ. ‚ Їа®вЁў­®¬ б«гз Ґ
DPL ¤®«¦Ґ­ Ўлвм Ў®«миҐ Ё«Ё а ўҐ­ (н⮠ᮮ⢥вбвўгҐв ¬Ґ­м襩
Ё«Ё а ў­®© ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ) Є Є ⥪г饣® га®ў­п
ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, в Є Ё RPL ᥫҐЄв®а .

‚лЇ®«­пҐвбп в Є п ¦Ґ Їа®ўҐаЄ  ¤®бв®ўҐа­®бвЁ, Є Є Ґб«Ё Ўл ᥣ¬Ґ­в
Ўл« § Ја㦥­ ў ॣЁбва DS, ES, FS Ё«Ё GS, Ё Ўл« ўлЇ®«­Ґ­
гЄ § ­­л© ¤®бвгЇ (з⥭Ёп Ё«Ё § ЇЁбЁ). ”« Ј ZF ЇаЁ­Ё¬ Ґв
१г«мв в Їа®ўҐаЄЁ ¤®бв®ўҐа­®бвЁ. ‡­ зҐ­ЁҐ ᥫҐЄв®а  ­Ґ ¬®¦Ґв
¤ ў вм ў १г«мв вҐ ЁбЄ«о祭ЁҐ § йЁвл, Ї®§ў®«пп Їа®Ја ¬¬­®¬г
®ЎҐбЇҐзҐ­Ёо ЇаҐ¤гЇаҐ¦¤ вм ў®§¬®¦­лҐ Їа®Ў«Ґ¬л ¤®бвгЇ  Є ᥣ¬Ґ­вг.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

”« Ј ZF гбв ­ ў«Ёў Ґвбп, Ґб«Ё ᥣ¬Ґ­в ¤®бвгЇҐ­, Ё ®зЁй Ґвбп ў
Їа®вЁў­®¬ б«гз Ґ.


€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

‘Ў®Ё, ЈҐ­ҐаЁагҐ¬лҐ ­ҐўҐа­®©  ¤аҐб жЁҐ© ®ЇҐа ­¤  Ї ¬пвЁ,
ᮤҐа¦ йҐЈ® ᥫҐЄв®а; ᥫҐЄв®а ­Ґ § Јаг¦ Ґвбп ў Є Є®©-«ЁЎ®
ᥣ¬Ґ­в­л© ॣЁбва,   бЎ®Ё, ®в­®бпйЁҐбп Є ®ЇҐа ­¤г ᥫҐЄв®а , ­Ґ
ЈҐ­ҐаЁаговбп.

#GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб  ®ЇҐа ­¤ 
Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 6; Є®¬ ­¤л VERR Ё VERW ў ०Ё¬Ґ ॠ«м­ле  ¤аҐб®ў ­Ґ
а бЇ®§­ овбп.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #AC
¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ
ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


WAIT - Ћ¦Ё¤ ­ЁҐ

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|9B WAIT 1-3 ‡ бв ў«пҐв Їа®жҐбб®а Їа®ўҐаЁвм |
| ­ «ЁзЁҐ зЁб«®ўле ЁбЄ«о祭Ё© |
-----------------------------------------------------------------


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  WAIT § бв ў«пҐв Їа®жҐбб®а Їа®ўҐаЁвм ­ «ЁзЁҐ Ї®¤ўҐиҐ­­ле
­Ґ¬ бЄЁа㥬ле зЁб«®ўле ЁбЄ«о祭Ё©, ЇаҐ¦¤Ґ 祬 ЇҐаҐ©вЁ Є
б«Ґ¤го饩 Є®¬ ­¤Ґ.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

Ћвбгвбвўгов


€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#NM, Ґб«Ё MP Ё TS ў CR0 гбв ­®ў«Ґ­л.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 7, Ґб«Ё MP Ё TS ў CR0 гбв ­®ў«Ґ­л.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

#NM, Ґб«Ё MP Ё TS ў CR0 гбв ­®ў«Ґ­л.

ЏаЁ¬Ґз ­Ёп
----------

Џ®¬ҐйҐ­ЁҐ Є®¬ ­¤л WAIT Ї®б«Ґ Є®¬ ­¤л ESC Ј а ­вЁагов, зв® ўбҐ
­Ґ¬ бЄЁагҐ¬лҐ ЁбЄ«о祭Ёп ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©, Є®в®алҐ
¬®Јгв Ўлвм бЈҐ­ҐаЁа®ў ­л Є®¬ ­¤ ¬Ё, Ўг¤гв ®Ўа Ў®в ­л ¤® в®Ј®,
Є Є Їа®жҐбб®а ᬮ¦Ґв ¬®¤¤ЁдЁжЁа®ў вм १г«мв вл нвЁе Є®¬ ­¤.

FWAIT нв®  «мвҐа­ вЁў­ п ¬­Ґ¬®­ЁзҐбЄ п д®а¬  Є®¬ ­¤л WAIT.

€­д®а¬ жЁп ®Ў ЁбЇ®«м§®ў ­ЁЁ Є®¬ ­¤л WAIT (FWAIT) ЇаЁў®¤Ёвбп ў
Ј« ўҐ 18, ў а §¤Ґ«Ґ "Џ а ««Ґ«м­ п ®Ўа Ў®вЄ ".

-----------------------------------------------------------------


WBINVD - ЋЎа в­ п § ЇЁбм Ё  ­­г«Ёа®ў ­ЁҐ ЄҐи 

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F 09 WBINVD 5 ЋЎа в­ п § ЇЁбм Ё  ­­г«Ёа®ў ­ЁҐ|
| ўбҐЈ® ЄҐи  |
-----------------------------------------------------------------


ђ Ў®в  Є®¬ ­¤л
--------------

ЋзЁбвЄ  ў­гв७­ҐЈ® ЄҐи 
‘ЁЈ­ « ў­Ґи­Ґ¬г ЄҐиг ® ­Ґ®Ўе®¤Ё¬®бвЁ ўлЇ®«­Ёвм ®Ўа в­го § ЇЁбм
‘ЁЈ­ « ў­Ґи­Ґ¬г ЄҐиг ® ­Ґ®Ўе®¤Ё¬®бвЁ ®зЁбвЄЁ

ЋЇЁб ­ЁҐ
--------

ЋзЁй Ґвбп ў­гв७­Ё© ЄҐи, Ё ЈҐ­ҐаЁагҐвбп бЇҐжЁ «м­л© жЁЄ« иЁ­л,
гЄ §лў ойЁ©, зв® ў­Ґи­Ё© ЄҐи ¤®«¦Ґ­ ўлЇ®«­Ёвм § ЇЁбм ҐЈ®
ᮤҐа¦Ё¬®Ј® ў Ј« ў­го ®ЇҐа вЁў­го Ї ¬пвм. „ «ҐҐ б«Ґ¤гҐв ҐйҐ ®¤Ё­
бЇҐжЁ «м­л© жЁЄ« иЁ­л, гЄ §лў ойЁ© ў­Ґи­Ґ¬г ЄҐиг ­  в®, зв®
ў­Ґи­Ё© ЄҐи ¤®«¦Ґ­ Ўлвм ®зЁйҐ­.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

Ћвбгвбвўгов

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

Ћвбгвбвўгов


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

Ћвбгвбвўгов

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

Ћвбгвбвўгов

ЏаЁ¬Ґз ­Ёп
----------

Љ®¬ ­¤  § ўЁбЁ¬  ®в ॠ«Ё§ жЁЁ; ҐҐ а Ў®в  ¬®¦Ґв Ї®-а §­®¬г
ॠ«Ё§®ўлў вмбп Ўг¤гйЁ¬Ё Їа®жҐбб®а ¬Ё Intel.

ЋвўҐвб⢥­­®бвм §  ЁбЇ®«­Ґ­ЁҐ бЁЈ­ «®ў ®Ўа в­®© § ЇЁбЁ Ё ®зЁбвЄЁ
ў­Ґи­ҐЈ® ЄҐи  «Ґ¦Ёв ­  ᮮ⢥вбвўго饬  ЇЇ а в­®¬ ®ЎҐбЇҐзҐ­ЁЁ.

Џа®жҐбб®а ¬Ё 386 нв  Є®¬ ­¤  ­Ґ Ї®¤¤Ґа¦Ёў Ґвбп. €­д®а¬ жЁп ®Ў
ЁбЇ®«м§®ў ­ЁЁ нв®© Є®¬ ­¤л б®ў¬ҐбвЁ¬® б Їа®жҐбб®а ¬Ё 386 б¬. ў
а §¤Ґ«Ґ 3.11. ‡ ЇаҐв ЄҐиЁа®ў ­Ёп ®ЇЁб ­ ў а §¤Ґ«Ґ 12.2.

-----------------------------------------------------------------


XADD - ЋЎ¬Ґ­ ¬Ґбв ¬Ё Ё б«®¦Ґ­ЁҐ

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F C0 /r XADD r/m8,r8 3/4 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - Ў ©в  |
| Ё Ў ©в  r/m; § Јаг§Є  б㬬л |
| ў Ў ©в r/m |
|0F C1 /r XADD r/m16,r16 3/4 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - б«®ў  |
| Ё б«®ў  r/m; § Јаг§Є  б㬬л |
| ў б«®ў® r/m |
|0F C1 /r XADD r/m32,r32 3/4 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё ¤ў®©­®Ј® б«®ў |
| r/m; § Јаг§Є  бг¬¬л ў |
| ¤ў®©­®Ґ б«®ў® r/m |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

ўаҐ¬ <- DEST
DEST <- ўаҐ¬ + SRC
SRC <- ўаҐ¬


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  XADD § Јаг¦ Ґв DEST Ё SRC,   § вҐ¬ § Јаг¦ Ґв б㬬г DEST
б Ёб室­л¬ §­ зҐ­ЁҐ¬ SRC ў DEST.


€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

”« ЈЁ CF, PF, AF, SF, ZF Ё OF Ї®«гз ов в ЄЁҐ ¦Ґ §­ зҐ­Ёп, Є Є Ё
ў б«гз Ґ Є®¬ ­¤л ADD.

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0), Ґб«Ё ­ §­ зҐ­ЁҐ¬ пў«пҐвбп ᥣ¬Ґ­в, ­Ґ¤®бвгЇ­л© ¤«п
§ ЇЁбЁ; #GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб 
®ЇҐа ­¤  Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў
б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

ЏаЁ¬Ґз ­Ёп
----------

„ ­­ п Є®¬ ­¤  ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ­  б ЇаҐдЁЄб®¬ LOCK.
ЊЁЄа®Їа®жҐбб®а 386 DX ­Ґ ॠ«Ё§гҐв нвг Є®¬ ­¤г. ЏаЁ
ЁбЇ®«м§®ў ­ЁЁ Є®¬ ­¤л ўл ¤®«¦­л ®ЎҐбЇҐзЁвм нЄўЁў «Ґ­в­л© Є®¤,
в Є¦Ґ а Ў®в ойЁ© Ё ­  Їа®жҐбб®аҐ 386 DX. Ћ ⮬, Є Є ў® ўаҐ¬п
ўлЇ®«­Ґ­Ёп ®ЇаҐ¤Ґ«Ёвм, пў«пҐвбп «Ё Їа®жҐбб®а Їа®жҐбб®а®¬ i486,
­ ЇЁб ­® ў а §¤Ґ«Ґ 3.11.

-----------------------------------------------------------------


XCHG - ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва /Ї ¬пвЁ Ё ॣЁбва 

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|90 +r XCHG AX,r16 3 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - б«®ў  |
| Ё AX |
|90 +r XCHG r16,AX 3 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - б«®ў  |
| Ё AX |
|90 + r XCHG EAX,r32 3 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё EAX |
|90 + r XCHG r32,EAX 3 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё EAX |
|86 /r XCHG r/m8,r8 3/5 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - Ў ©в  |
| Ё Ў ©в  Ї® ЁбЇ®«­ЁвҐ«м­®¬г |
|  ¤аҐбг |
|86 /r XCHG r8,r/m8 3/5 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - Ў ©в  |
| Ё Ў ©в  Ї® ЁбЇ®«­ЁвҐ«м­®¬г |
|  ¤аҐбг |
|87 /r XCHG r/m16,r16 3/5 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - б«®ў  |
| Ё б«®ў  Ї® ЁбЇ®«­ЁвҐ«м­®¬г |
|  ¤аҐбг |
|87 /r XCHG r16,r/m16 3/5 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - б«®ў  |
| Ё б«®ў  Ї® ЁбЇ®«­ЁвҐ«м­®¬г |
|  ¤аҐбг |
|87 /r XCHG r/m32,r32 3/5 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё ¤ў®©­®Ј® б«®ў |
| Ї® ЁбЇ®«­ЁвҐ«м­®¬г  ¤аҐбг |
|87 /r XCHG r32,r/m32 3/5 ЋЎ¬Ґ­ ¬Ґбв ¬Ё ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё ¤ў®©­®Ј® б«®ў |
| Ї® ЁбЇ®«­ЁвҐ«м­®¬г  ¤аҐбг |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

ўаҐ¬ <- DEST
DEST <- SRC
SRC <- ўаҐ¬


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  XCHG ¬Ґ­пҐв ¬Ґбв ¬Ё ¤ў  ®ЇҐа ­¤ . ЋЇҐа ­¤л ¬®Јгв
б«Ґ¤®ў вм ў «оЎ®© Ї®б«Ґ¤®ў вҐ«м­®бвЁ. …б«Ё ў Є®¬ ­¤Ґ гз бвўгҐв
®ЇҐа ­¤ Ї ¬пвЁ, в® ­  ўаҐ¬п ®Ў¬Ґ­  ў®§Ўг¦¤ Ґвбп бЁЈ­ « LOCK#,
­Ґ§ ўЁбЁ¬® ®в ЇаЁбгвбвўЁп Ё«Ё ®вбгвбвўЁп ЇаҐдЁЄб  LOCK Ё«Ё ®в
§­ зҐ­Ёп IOPL.


€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

Ћвбгвбвўгов

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0), Ґб«Ё ­ §­ зҐ­ЁҐ¬ пў«пҐвбп ᥣ¬Ґ­в, ­Ґ¤®бвгЇ­л© ¤«п
§ ЇЁбЁ; #GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб 
®ЇҐа ­¤  Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў
б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


XLAT/XLATB - Ђбб®жЁ вЁў­ п ва ­б«пжЁп ў в Ў«ЁжҐ

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|D7 XLAT m8 4 “бв ­®ўЄ  AL а ў­л¬ Ў ©вг |
| Ї ¬пвЁ DS:[(E)BX+AL ЎҐ§ §­ Є ] |
|D7 XLATB 4 “бв ­®ўЄ  AL а ў­л¬ Ў ©вг |
| Ї ¬пвЁ DS:[(E)BX+AL ЎҐ§ §­ Є ] |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

IF AddressSize = 16
THEN
AL <- (BX + ZeroExtend(AL))
ELSE (* AddressSize = 32 *)
AL <- (EBX + ZeroExtend(AL))
FI;

ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  XLAT Ё§¬Ґ­пҐв ॣЁбва AL б Ё­¤ҐЄб  в Ў«Ёжл ­  н«Ґ¬Ґ­в
в Ў«Ёжл. ђҐЈЁбва AL ¤®«¦Ґ­ ЇаҐ¤бв ў«пвм б®Ў®© Ё­¤ҐЄб ЎҐ§ §­ Є 
¤«п в Ў«Ёжл,  ¤аҐб㥬®© Ї а®© ॣЁбва®ў DS:BX (ў б«гз Ґ  ваЁЎгв 
а §¬Ґа   ¤аҐб , а ў­®Ј® 16), Ё«Ё DS:EBX (ў б«гз Ґ  ваЁЎгв 
а §¬Ґа   ¤аҐб  32 ЎЁв ).

ЋЇҐа ­¤ Є®¬ ­¤л XLAT Ї®§ў®«пҐв ЇҐаҐ®ЇаҐ¤Ґ«Ґ­ЁҐ ᥣ¬Ґ­в . Љ®¬ ­¤ 
XLAT ЁбЇ®«м§гҐв ᮤҐа¦Ё¬®Ґ ॣЁбва  BX ¤ ¦Ґ ЇаЁ ҐЈ® ®в«ЁзЁЁ ®в
ᬥ饭Ёп ®ЇҐа ­¤ . ‘¬ҐйҐ­ЁҐ ®ЇҐа ­¤  ¤®«¦­® Ўлвм Ї®¬ҐйҐ­® ў
ॣЁбва BX Ё«Ё EBX ЇаҐ¤л¤г饩 Є®¬ ­¤®©.

”®а¬  Є®¬ ­¤л, ­Ґ Ё¬Ґой п ®ЇҐа ­¤ , XLATB, ¬®¦Ґв Ўлвм
ЁбЇ®«м§®ў ­ , Ґб«Ё в Ў«Ёж  ¤«п BX Ё«Ё EBX ўбҐЈ¤  ­ е®¤Ёвбп ў
ᥣ¬Ґ­вҐ DS.

€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

Ћвбгвбвўгов

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб  ®ЇҐа ­¤ 
Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


XOR - ‹®ЈЁзҐбЄ®Ґ ЁбЄ«оз о饥 €‹€

-----------------------------------------------------------------
|Љ®¤ Љ®¬ ­¤  —Ёб«® ЋЇЁб ­ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|34 ib XOR AL,imm8 1 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| Ў ©в  Ё AL |
|35 iw XOR AX,imm16 1 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| б«®ў  Ё AX |
|35 id XOR EAX,imm32 1 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| ¤ў®©­®Ј® б«®ў  Ё EAX |
|80 /6 ib XOR r/m8,imm8 1/3 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| Ў ©в  Ё Ў ©в  r/m |
|81 /6 iw XOR r/m16,imm16 1/3 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| б«®ў  Ё б«®ў  r/m |
|81 /6 id XOR r/m32,imm32 1/3 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| ¤ў®©­®Ј® б«®ў  Ё |
| ¤ў®©­®Ј® б«®ў  r/m |
|83 /6 ib XOR r/m16,imm8 1/3 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| а биЁаҐ­­®Ј® §­ Є®¬ Ў ©в  |
| Ё§ б«®ў  r/m |
|83 /6 ib XOR r/m32,imm8 1/3 XOR ¤«п ­ҐЇ®б।б⢥­­®Ј® |
| а биЁаҐ­­®Ј® §­ Є®¬ Ў ©в  |
| Ё§ ¤ў®©­®Ј® б«®ў  r/m |
|30 /r XOR r/m8,r8 1/3 XOR ¤«п ॣЁбва  - |
| Ў ©в  Ё Ў ©в  r/m |
|31 /r XOR r/m16,r16 1/3 XOR ¤«п ॣЁбва  - |
| б«®ў  Ё б«®ў  r/m |
|31 /r XOR r/m32,r32 1/3 XOR ¤«п ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё |
| ¤ў®©­®Ј® б«®ў  r/m |
|32 /r XOR r8,r/m8 1/2 XOR ¤«п ॣЁбва  - |
| Ў ©в  Ё Ў ©в  r/m |
|33 /r XOR r16,r/m16 1/2 XOR ¤«п ॣЁбва  - |
| б«®ў  Ё б«®ў  r/m |
|33 /r XOR r32,r/m32 1/2 XOR ¤«п ॣЁбва  - |
| ¤ў®©­®Ј® б«®ў  Ё |
| ¤ў®©­®Ј® б«®ў  r/m |
-----------------------------------------------------------------

ђ Ў®в  Є®¬ ­¤л
--------------

DEST <- LeftSRC XOR RightSRC;
CF <- 0;
OF <- 0;


ЋЇЁб ­ЁҐ
--------

Љ®¬ ­¤  XOR ўлзЁб«пҐв ЁбЄ«оз о饥 €‹€ (XOR) ¤«п ¤ўге § ¤ ­­ле Ґ©
®ЇҐа ­¤®ў. Љ ¦¤л© ЎЁв १г«мв в  а ўҐ­ 1, Ґб«Ё ᮮ⢥вбвўгойЁҐ
ЎЁвл ®ЇҐа ­¤®ў а §«Ёз­л; ў Їа®вЁў­®¬ б«гз Ґ нв®в ЎЁв а ўҐ­ 0.
ЋвўҐв § ¬Ґй Ґв б®Ў®© ЇҐаўл© ®ЇҐа ­¤.


€§¬Ґ­пҐ¬лҐ д« ЈЁ
----------------

”« ЈЁ OF Ё CF ®зЁй овбп; д« ЈЁ SF, ZF Ё PF гбв ­ ў«Ёў овбп ў
ᮮ⢥вбвўЁЁ б १г«мв в®¬; д« Ј AF ­Ґ®ЇаҐ¤Ґ«Ґ­.

€бЄ«о祭Ёп § йЁйҐ­­®Ј® ०Ё¬ 
----------------------------------

#GP(0), Ґб«Ё ­ §­ зҐ­ЁҐ¬ пў«пҐвбп ᥣ¬Ґ­в, ­Ґ¤®бвгЇ­л© ¤«п
§ ЇЁбЁ; #GP(0) ў б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«­ЁвҐ«м­®Ј®  ¤аҐб 
®ЇҐа ­¤  Ї ¬пвЁ ў ᥣ¬Ґ­в е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў
б«гз Ґ ­Ґ¤®ЇгбвЁ¬®Ј®  ¤аҐб  ў ᥣ¬Ґ­вҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва ­Ёз­®Ј® бЎ®п; #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.


€бЄ«о祭Ёп ०Ё¬  ॠ«м­ле  ¤аҐб®ў
---------------------------------------

ЏаҐалў ­ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ­¤  «Ґ¦Ёв ў­Ґ
Їа®бва ­бвў  ЁбЇ®«­ЁвҐ«м­ле  ¤аҐб®ў ®в 0 ¤® 0FFFFH.

€бЄ«о祭Ёп ўЁавг «м­®Ј® ०Ё¬  8086
----------------------------------------

’Ґ ¦Ґ ЁбЄ«о祭Ёп, зв® Ё ¤«п ०Ё¬  ॠ«м­ле  ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва ­Ёз­ле бЎ®Ґў. #AC ¤«п ­Ґўла ў­Ґ­­®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ў­Ґ ЇаЁўЁ«ҐЈЁа®ў ­­®бвЁ, а ў­®¬ 3.

-----------------------------------------------------------------


Соседние файлы в папке I486