Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Микропроцессор 486 / I486 / CH26-02
.TXTADC - ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|14 ib ADC AL,imm8 1 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® Ў ©в Ё AL |
|15 iw ADC AX,imm16 1 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® б«®ў Ё AX |
|15 id ADC EAX,imm32 1 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® ¤ў®©®Ј® б«®ў Ё EAX|
|80 /2 ib ADC r/m8,imm8 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® Ў ©в Ё Ў ©в ў r/m |
|81 /2 iw ADC r/m16,imm16 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® б«®ў Ё б«®ў ў r/m |
|81 /2 id ADC r/m32,imm32 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® ¤ў®©®Ј® б«®ў Ё |
| ¤ў®©®Ј® б«®ў ў r/m |
|83 /2 ib ADC r/m16,imm8 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® а биЁаҐ®Ј® § Є®¬ |
| Ў ©в Ё б«®ў ў r/m |
|83 /2 ib ADC r/m32,imm8 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б ҐЇ®б-|
| ।б⢥®Ј® а биЁаҐ®Ј® § Є®¬ |
| б«®ў Ё ¤ў®©®Ј® б«®ў ў r/m |
|10 /r ADC r/m8,r8 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б |
| Ў ©в®ў®Ј® ॣЁбва Ё Ў ©в ў r/m |
|11 /r ADC r/m16,r16 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б |
| ॣЁбва -б«®ў Ё б«®ў ў r/m |
|11 /r ADC r/m32,r32 1/3 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б |
| ॣЁбва -¤ў®©®Ј® б«®ў Ё |
| ¤ў®©®Ј® б«®ў ў r/m |
|12 /r ADC r8,r/m8 1/2 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б Ў ©в |
| ў r/m Ё Ў ©в®ў®Ј® ॣЁбва |
|13 /r ADC r16,r/m16 1/2 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б б«®ў |
| ў r/m Ё ॣЁбва -б«®ў |
|13 /r ADC r32,r/m32 1/2 ‘«®¦ҐЁҐ б д« Ј®¬ ЇҐаҐ®б |
| ¤ў®©®Ј® б«®ў ў r/m Ё ॣЁбва - |
| ¤ў®©®Ј® б«®ў |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- DEST + SRC + CF
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ ADC ўлЇ®«пҐв 楫®зЁб«Ґ®Ґ б«®¦ҐЁҐ ¤ўге ®ЇҐа ¤®ў,
DEST Ё SRC, Ё д« Ј ЇҐаҐ®б , CF. ђҐ§г«мв в б«®¦ҐЁп Ї®¬Ґй Ґвбп
ў ЇҐаўл© Ё§ ®ЇҐа ¤®ў (DEST), Ё ўлЇ®«пҐвбп ᮮ⢥вбвўгой п
гбв ®ўЄ д« Ј®ў. Љ®¬ ¤ ADC ®ЎлЄ®ўҐ® ўлЇ®«пҐвбп Є Є з бвм
а Ў®в о饩 б ҐбЄ®«мЄЁ¬Ё Ў ©в ¬Ё Ё«Ё ҐбЄ®«мЄЁ¬Ё б«®ў ¬Ё
®ЇҐа жЁЁ б«®¦ҐЁп. Љ®Ј¤ Їа®Ёб室Ёв б«®¦ҐЁҐ ҐЇ®б।б⢥®Ј®
Ў ©в®ў®Ј® § зҐЁп Ё ®ЇҐа ¤ -б«®ў Ё«Ё ¤ў®©®Ј® б«®ў ,
ҐЇ®б।б⢥®Ґ § 票Ґ б з « а биЁапҐвбп § Є®¬ ¤® а §¬Ґа
ᮮ⢥вбвўго饣® ®ЇҐа ¤ , б«®ў Ё«Ё ¤ў®©®Ј® б«®ў .
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« ЈЁ OF, SF, ZF, AF, CF Ё PF гбв ў«Ёў овбп ў ᮮ⢥вбвўЁЁ б
१г«мв ⮬.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
ADD - ‘«®¦ҐЁҐ
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|04 ib ADD AL,imm8 1 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® Ў ©в Ё AL |
|05 iw ADD AX,imm16 1 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® б«®ў Ё AX |
|05 id ADD EAX,imm32 1 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® ¤ў®©®Ј® б«®ў Ё EAX |
|80 /0 ib ADD r/m8,imm8 1/3 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® Ў ©в Ё Ў ©в ў r/m |
|81 /0 iw ADD r/m16,imm16 1/3 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® б«®ў Ё б«®ў ў r/m |
|81 /0 id ADD r/m32,imm32 1/3 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® ¤ў®©®Ј® б«®ў Ё ¤ў®©®Ј®|
| б«®ў ў r/m |
|83 /0 ib ADD r/m16,imm8 1/3 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® а биЁаҐ®Ј® § Є®¬ Ў ©в |
| Ё б«®ў ў r/m |
|83 /0 ib ADD r/m32,imm8 1/3 ‘«®¦ҐЁҐ ҐЇ®б।бв- |
| ўҐ®Ј® а биЁаҐ®Ј® § Є®¬ б«®ў |
| Ё ¤ў®©®Ј® б«®ў ў r/m |
|00 /r ADD r/m8,r8 1/3 ‘«®¦ҐЁҐ Ў ©в®ў®Ј® |
| ॣЁбва Ё Ў ©в ў r/m |
|01 /r ADD r/m16,r16 1/3 ‘«®¦ҐЁҐ ॣЁбва - |
| б«®ў Ё б«®ў ў r/m |
|01 /r ADD r/m32,r32 1/3 ‘«®¦ҐЁҐ ॣЁбва - |
| ¤ў®©®Ј® б«®ў Ё ¤ў®©®Ј® б«®ў |
| ў r/m |
|02 /r ADD r8,r/m8 1/2 ‘«®¦ҐЁҐ Ў ©в ў r/m |
| Ё Ў ©в®ў®Ј® ॣЁбва |
|03 /r ADD r16,r/m16 1/2 ‘«®¦ҐЁҐ б«®ў ў r/m |
| Ё ॣЁбва -б«®ў |
|03 /r ADD r32,r/m32 1/2 ‘«®¦ҐЁҐ ¤ў®©®Ј® |
| б«®ў ў r/m Ё ॣЁбва -¤ў®©®Ј® |
| б«®ў |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- DEST + SRC
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ ADC ўлЇ®«пҐв 楫®зЁб«Ґ®Ґ б«®¦ҐЁҐ ¤ўге ®ЇҐа ¤®ў,
DEST Ё SRC. ђҐ§г«мв в б«®¦ҐЁп Ї®¬Ґй Ґвбп ў ЇҐаўл© Ё§ ®ЇҐа ¤®ў
(DEST), Ё ўлЇ®«пҐвбп ᮮ⢥вбвўгой п гбв ®ўЄ д« Ј®ў.
Љ®Ј¤ Їа®Ёб室Ёв б«®¦ҐЁҐ ҐЇ®б।б⢥®Ј® Ў ©в®ў®Ј® § зҐЁп Ё
®ЇҐа ¤ -б«®ў Ё«Ё ¤ў®©®Ј® б«®ў , ҐЇ®б।б⢥®Ґ § 票Ґ
б з « а биЁапҐвбп § Є®¬ ¤® а §¬Ґа ᮮ⢥вбвўго饣® ®ЇҐа ¤ ,
б«®ў Ё«Ё ¤ў®©®Ј® б«®ў .
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« ЈЁ OF, SF, ZF, AF, CF Ё PF гбв ў«Ёў овбп ў ᮮ⢥вбвўЁЁ б
१г«мв ⮬.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
AND - ‹®ЈЁзҐбЄ®Ґ €
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|24 ib AND AL,imm8 1 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® Ў ©в Ё AL |
|25 iw AND AX,imm16 1 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® б«®ў Ё AX |
|25 id AND EAX,imm32 1 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® ¤ў®©®Ј® б«®ў Ё EAX|
|80 /4 ib AND r/m8,imm8 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® Ў ©в Ё Ў ©в ў r/m |
|81 /4 iw AND r/m16,imm16 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® б«®ў Ё б«®ў ў r/m |
|81 /4 id AND r/m32,imm32 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® ¤ў®©®Ј® б«®ў Ё |
| ¤ў®©®Ј® б«®ў ў r/m |
|83 /4 ib AND r/m16,imm8 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® а биЁаҐ®Ј® § Є®¬ |
| Ў ©в Ё б«®ў ў r/m |
|83 /4 ib AND r/m32,imm8 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п ҐЇ®б-|
| ।б⢥®Ј® а биЁаҐ®Ј® § Є®¬ |
| б«®ў Ё ¤ў®©®Ј® б«®ў ў r/m |
|20 /r AND r/m8,r8 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п |
| Ў ©в®ў®Ј® ॣЁбва Ё Ў ©в ў r/m |
|21 /r AND r/m16,r16 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п |
| ॣЁбва -б«®ў Ё б«®ў ў r/m |
|21 /r AND r/m32,r32 1/3 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п |
| ॣЁбва -¤ў®©®Ј® б«®ў Ё |
| ¤ў®©®Ј® б«®ў ў r/m |
|22 /r AND r8,r/m8 1/2 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п Ў ©в |
| ў r/m Ё Ў ©в®ў®Ј® ॣЁбва |
|23 /r AND r16,r/m16 1/2 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п б«®ў |
| ў r/m Ё ॣЁбва -б«®ў |
|23 /r AND r32,r/m32 1/2 ЋЇҐа жЁп «®ЈЁзҐбЄ®Ј® € ¤«п |
| ¤ў®©®Ј® б«®ў ў r/m Ё ॣЁбва - |
| ¤ў®©®Ј® б«®ў |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- DEST AND SRC;
CF <- 0;
OF <- 0;
ЋЇЁб ЁҐ
--------
Љ ¦¤л© ЎЁв १г«мв в ўлЇ®«ҐЁп Є®¬ ¤л AND а ўҐ 1, Ґб«Ё ®Ў
б®вўҐвбвўгойЁе ЎЁв ®ЇҐа ¤®ў а ўл 1; ў Їа®вЁў®¬ б«гз Ґ ЎЁв
१г«мв в а ўҐ 0.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« ЈЁ CF Ё OF ®зЁй овбп ; д« ЈЁ PF, SF Ё ZF гбв ў«Ёў овбп ў
ᮮ⢥вбвўЁЁ б १г«мв ⮬.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
ARPL - ЏаҐ®Ўа §®ў ЁҐ Ї®«п RPL ᥫҐЄв®а
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|63 /r ARPL r/m16,r16 9/9 ЏаҐ®Ўа §®ў ЁҐ RPL r/m16 Є Ґ |
| ¬ҐҐҐ 祬 RPL r16 |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
IF RPL ЎЁвл(0,1) ў DEST < RPL ЎЁвл(0,1) ў SRC
THEN
ZF <- 1;
RPL ЎЁвл(0,1) ў DEST <- RPL ЎЁвл(0,1) ў SRC;
ELSE
ZF <- 0;
FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ ARPL Ё¬ҐҐв ¤ў ®ЇҐа ¤ . ЏҐаўл© ®ЇҐа ¤ пў«пҐвбп
16-а §а冷© ЇҐаҐ¬Ґ®© Ї ¬пвЁ Ё«Ё ॣЁбв஬-б«®ў®¬, ᮤҐа¦ йЁ¬
§ 票Ґ ᥫҐЄв®а . ‚в®а®© ®ЇҐа ¤ - н⮠ॣЁбва-б«®ў®. …б«Ё
Ї®«Ґ RPL ("§ Їа иЁў Ґ¬л© га®ўҐм ЇаЁўЁ«ҐЈЁа®ў ®бвЁ" - ¬« ¤иЁҐ
¤ў ЎЁв ) ЇҐаў®Ј® ®ЇҐа ¤ ¬ҐмиҐ Ї®«п RPL ўв®а®Ј® ®ЇҐа ¤ , в®
д« Ј ZF гбв ў«Ёў Ґвбп, Ї®«Ґ RPL ЇҐаў®Ј® ®ЇҐа ¤
㢥«ЁзЁў Ґвбп ¤® ᮮ⢥вбвўго饣® § зҐЁп ўв®а®Ј® ®ЇҐа ¤ . ‚
Їа®вЁў®¬ б«гз Ґ д«ЇЈ ZF ®зЁй Ґвбп, Ё ЇҐаўл© ®ЇҐа ¤ Ґ
Ё§¬ҐпҐвбп.
Љ®¬ ¤ ARPL ЁбЇ®«м§гҐвбп ў ®ЇҐа жЁ®ле бЁб⥬ е, Ґ
ЇаЁЄ« ¤ле Їа®Ја ¬¬ е. Ћ Ј а вЁагҐв, зв® Ї а ¬Ґва ᥫҐЄв®а
Ї®¤Їа®Ја ¬¬л Ґ § Їа®бЁв Ў®«миго ЇаЁўЁ«ҐЈЁа®ў ®бвм, 祬 нв®
Ї®§ў®«Ґ® ¤«п ўл§лў о饩 Їа®Ја ¬¬л. ‚в®ал¬ ®ЇҐа ¤®¬ Є®¬ ¤л
ARPL ®Ўлз® пў«пҐвбп ॣЁбва, ᮤҐа¦ йЁ© § 票Ґ ᥫҐЄв®а CS
ўл§лў о饩 Їа®Ја ¬¬л.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј ZF гбв ў«Ёў Ґвбп, Ґб«Ё Ї®«Ґ RPL ЇҐаў®Ј® ®ЇҐа ¤ ¬ҐмиҐ
ᮮ⢥вбвўго饣® Ї®«п ўв®а®Ј® ®ЇҐа ¤ .
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 6; Є®¬ ¤ ARPL ў н⮬ ०Ё¬Ґ Ґ а бЇ®§ Ґвбп.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
BOUND - Џа®ўҐаЄ Ё¤ҐЄб ¬ ббЁў ®в®бЁвҐ«м® Ја Ёж ¬ ббЁў
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|62 /r BOUND r16,m16&16 7 Џа®ўҐаЄ , 室Ёвбп «Ё r16 ў |
| ЇаҐ¤Ґ« е Ја Ёж (вҐбв Їа®©¤Ґ)|
|62 /r BOUND r32,m32&32 7 Џа®ўҐаЄ , 室Ёвбп «Ё r32 ў |
| ЇаҐ¤Ґ« е Ја Ёж (вҐбв Їа®©¤Ґ)|
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
IF (LeftSCR < [RightSCR] OR LeftSCR > [RightSCR + Operandsize/8])
(* ЌЁ¦Ґ Ё¦Ґ© Ја Ёжл Ё«Ё ўлиҐ ўҐа奩 Ја Ёжл ¬ ббЁў *)
THEN ЏаҐалў ЁҐ 5;
FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BOUND ®ЎҐбЇҐзЁў Ґв, зв® Ё¬ҐойЁ© § Є Ё¤ҐЄб ¬ ббЁў
室Ёвбп ў ЇаҐ¤Ґ« е Ја Ёж, § ¤ ле Ў«®Є®¬ Ї ¬пвЁ, ўЄ«оз о饣®
ў бҐЎп ўҐаеоо Ё Ё¦оо Ја Ёжл ¬ ббЁў . Љ ¦¤ п Ја Ёж
ЁбЇ®«м§гҐв ®¤® б«®ў®, Ґб«Ё ваЁЎгв а §¬Ґа ®ЇҐа ¤ а ўҐ 16
ЎЁв ¬, Ё ¤ў®©®Ґ б«®ў®, Ґб«Ё ваЁЎгв а §¬Ґа ®ЇҐа ¤ а ўҐ 32
ЎЁв ¬. ЏҐаўл© ®ЇҐа ¤ (ॣЁбва) ¤®«¦Ґ Ўлвм Ў®«миҐ Ё«Ё а ўҐ
ЇҐаў®© Ја ЁжҐ ў Ї ¬пвЁ (Ё¦Ґ© Ја ЁжҐ) Ё ¬ҐмиҐ Ё«Ё а ўҐ
ўв®а®© Ја ЁжҐ ў Ї ¬пвЁ (бв а襩 Ја ЁжҐ), Ї«об зЁб«® Ў ©в®ў,
§ Ё¬ Ґ¬ле ¤«п ¤ ®Ј® а §¬Ґа ®ЇҐа ¤ . …б«Ё ॣЁбва Ґ
室Ёвбп ў нвЁе Ја Ёж е, в® Їа®Ёб室Ёв ЇаҐалў ЁҐ 5; EIP
ў®§ўа в гЄ §лў Ґв Є®¬ ¤г BOUND.
‘вагЄвга ¤ ле ® Ја Ёж е ¬ ббЁў ®Ўлз® Ї®¬Ґй Ґвбп ў Ї ¬пвм
¤® б ¬®Ј® ¬ ббЁў , ¤Ґ« п Ја Ёжл ¤аҐб㥬묨 зҐаҐ§ Є®бв вг
б¬ҐйҐЁп ®в®бЁвҐ«м® з « ¬ ббЁў .
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
Ћвбгвбвўгов.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
ЏаҐалў ЁҐ 5 ЇаЁ аг襨Ё Ја Ёж ¬ ббЁў ; #GP(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј® ¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е
CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў
ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п
Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ
ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
‚в®а®© ®ЇҐа ¤ ¤®«¦Ґ пў«пвмбп ®ЇҐа ¤®¬ Ї ¬пвЁ, Ґ ॣЁбв஬.
…б«Ё Є®¬ ¤ BOUND ўлЇ®«пҐвбп б Ў ©в®¬ ModR/M, ЇаҐ¤бв ў«пойЁ¬
ўв®а®© ®ЇҐа ¤ Є Є ॣЁбва, Їа®Ёб室Ёв #UD.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 5 ЇаЁ аг襨Ё Ја Ёж ¬ ббЁў ; ЇаҐалў ЁҐ 13, Ґб«Ё
Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ Їа®бва бвў ЁбЇ®«ЁвҐ«мле
¤аҐб®ў ®в 0 ¤® 0FFFFH; ЇаҐалў ЁҐ 6, Ґб«Ё ўв®а®© ®ЇҐа ¤
пў«пҐвбп ॣЁбв஬.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
BSF - Џ®а §а冷Ґ бЄ Ёа®ў ЁҐ ў Їаאַ¬ Їа ў«ҐЁЁ
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F BC BSF r16,r/m16 6-42/7-43 Џ®а §а冷Ґ бЄ Ёа®ў ЁҐ |
| ў Їаאַ¬ Їа ў«ҐЁЁ б«®ў r/m|
|0F BC BSF r32,r/m32 6-42/7-43 Џ®а §а冷Ґ бЄ Ёа®ў ЁҐ |
| ў Їаאַ¬ Їа ў«ҐЁЁ ¤ў®©®Ј® |
| б«®ў ў r/m |
----------------------------------------------------------------
ЏаЁ¬Ґз Ёп
----------
n - нв® зЁб«® ўҐ¤гйЁе г«Ґўле ЎЁв®ў.
ђ Ў®в Є®¬ ¤л
--------------
IF r/m = 0
THEN
ZF <- 1;
ॣЁбва <- Ґ®ЇаҐ¤Ґ«Ґ;
ELSE
ўаҐ¬ <- 0;
ZF <- 0;
WHILE BIT[r/m,ўаҐ¬] = 0
DO
ўаҐ¬ <- ўаҐ¬ +1;
ॣЁбва <- ўаҐ¬;
OD;
FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BSF бЄ ЁагҐв ЎЁвл ўв®а®Ј® ®ЇҐа ¤ -б«®ў Ё«Ё ¤ў®©®Ј®
б«®ў , зЁ п б ЎЁв 0. …б«Ё ўбҐ ЎЁвл а ўл 0, в®
гбв ў«Ёў Ґвбп д« Ј ZF; ў Їа®вЁў®¬ б«гз Ґ д« Ј ZF ®зЁй Ґвбп,
ў ॣЁбва § зҐЁп § Јаг¦ Ґвбп Ё¤ҐЄб ЇҐаў®Ј® ©¤Ґ®Ј®
гбв ®ў«Ґ®Ј® ЎЁв .
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј ZF гбв ў«Ёў Ґвбп, Ґб«Ё ўбҐ ЎЁвл а ўл 0; ў Їа®вЁў®¬
б«гз Ґ д« Ј ZF ®зЁй Ґвбп.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј® ¤аҐб ®ЇҐа ¤
Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
BSR - Џ®а §а冷Ґ бЄ Ёа®ў ЁҐ ў ®Ўа ⮬ Їа ў«ҐЁЁ
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F BD BSR r16,r/m16 6-103/7-104 Џ®а §а冷Ґ бЄ Ёа®ў ЁҐ |
| ў ®Ўа ⮬ Їа ў«ҐЁЁ |
| б«®ў r/m |
|0F BD BSR r32,r/m32 6-103/7-104 Џ®а §а冷Ґ бЄ Ёа®ў ЁҐ ў |
| ®Ўа ⮬ Їа ў«ҐЁЁ |
| ¤ў®©®Ј® б«®ў ў r/m |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
IF r/m = 0
THEN
ZF <- 1;
ॣЁбва <- Ґ®ЇаҐ¤Ґ«Ґ;
ELSE
ўаҐ¬ <- OperandSize - 1;
ZF <- 0;
WHILE BIT[r/m,ўаҐ¬] = 0
DO
ўаҐ¬ <- ўаҐ¬ - 1;
ॣЁбва <- ўаҐ¬;
OD;
FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BSF бЄ ЁагҐв ЎЁвл ўв®а®Ј® ®ЇҐа ¤ -б«®ў Ё«Ё ¤ў®©®Ј®
б«®ў , зЁ п б® бв а襣® ЎЁв ў Їа ў«ҐЁЁ Є ¬« ¤иҐ¬г. …б«Ё
ўбҐ ЎЁвл а ўл 0, в® гбв ў«Ёў Ґвбп д« Ј ZF; ў Їа®вЁў®¬ б«гз Ґ
д« Ј ZF ®зЁй Ґвбп, ў ॣЁбва § зҐЁп § Јаг¦ Ґвбп Ё¤ҐЄб
ЇҐаў®Ј® ©¤Ґ®Ј® ЇаЁ бЄ Ёа®ў ЁЁ ў ®Ўа ⮬ Їа ў«ҐЁЁ
гбв ®ў«Ґ®Ј® ЎЁв .
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј ZF гбв ў«Ёў Ґвбп, Ґб«Ё ўбҐ ЎЁвл а ўл 0; ў Їа®вЁў®¬
б«гз Ґ д« Ј ZF ®зЁй Ґвбп.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
-----------------------------------------------------------------
BSWAP - €§¬ҐҐЁҐ Ї®б«Ґ¤®ў ⥫м®бвЁ Ў ©в®ў
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
|OF C8/r BSWAP r32 1 €§¬ҐҐЁҐ Ї®б«Ґ¤®ў ⥫м®бвЁ Ў ©-|
| в®ў ў 32-ЎЁв®ў®¬ ॣЁбвॠЁ§ Ї®б-|
| «Ґ¤®ў ⥫м®бвЁ "®в ¬Ґм襣® Є |
| Ў®«м襬г" "®в Ў®«м襣® Є ¬Ґм-|
| 襬г" |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
ўаҐ¬ <- r32
r32(7..0) <- ўаҐ¬(31..24)
r32(15..8) <- ўаҐ¬(23..16)
r32(23..16) <- ўаҐ¬(15..8)
r32(31..24) <- ўаҐ¬(7..0)
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BSWAP ॢҐабЁагҐв Ї®б«Ґ¤®ў ⥫м®бвм Ў ©в®ў ў
32-а §а冷¬ ॣЁбваҐ, ЇаҐ®Ўа §®ўлў п д®а¬г "®в ¬Ґм襣® Є
Ў®«м襬г" "®в Ў®«м襣® Є ¬Ґм襬г". Љ®Ј¤ BSWAP ЁбЇ®«м§гҐвбп
б 16-а §ап¤л¬ а §¬Ґа®¬ ®ЇҐа ¤ , १г«мв в ®бв Ґвбп ў ॣЁбваҐ
§ зҐЁп ЎҐ§ Ё§¬ҐҐЁ©.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
Ћвбгвбвўгов.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
Ћвбгвбвўгов
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
Ћвбгвбвўгов
ЏаЁ¬Ґз Ёп
----------
BSWAP Ґ Ї®¤¤Ґа¦Ёў Ґвбп Їа®жҐбб®а ¬Ё 386. ‘¬. а §¤Ґ« 3.11, Ј¤Ґ
®ЇЁб ® ЁбЇ®«м§®ў ЁҐ BSWAP б®ў¬ҐбвЁ¬® б Їа®жҐбб®а ¬Ё 386.
-----------------------------------------------------------------
BT - Џа®ўҐаЄ ЎЁв
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F A3 BT r/m16,r16 3/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б |
|0F A3 BT r/m32,r32 3/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б |
|0F BA/ BT r/m16,imm8 3/3 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б |
|0F BA/4 ib BT r/m32,imm8 3/3 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
CF <- BIT[LeftSRC,RightSRC];
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BT б®еа пҐв § 票Ґ ЎЁв , § ¤ ў Ґ¬®Ј® Ў §®© (ЇҐаўл©
®ЇҐа ¤) Ё ᬥ饨Ґ¬ ЎЁв (ўв®а®© ®ЇҐа ¤), ў® д« Ј CF.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј CF ᮤҐа¦Ёв § 票Ґ ўлЎа ®Ј® ЎЁв .
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј® ¤аҐб ®ЇҐа ¤
Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
€¤ҐЄб ўлЎа ®Ј® ЎЁв ¬®¦Ґв Ўлвм § ¤ ҐЇ®б।б⢥®©
Є®бв в®© ў Є®¬ ¤Ґ Ё«Ё § 票Ґ¬ ў ॣЁбвॠ®ЎйҐЈ® § 票п.
‚ Є®¬ ¤Ґ ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ® в®«мЄ® 8-а §а冷Ґ
ҐЇ®б।б⢥®Ґ § 票Ґ. ќв®в ®ЇҐа ¤ ЎҐаҐвбп Ї® ¬®¤г«о 32,
в Є зв® ¤Ё Ї §® ҐЇ®б।б⢥ле ᬥ饨© ЎЁв б®бв ў«пҐв
0...31. ќв® Ї®§ў®«пҐв ўлЎ®а «оЎ®Ј® ЎЁв ў ॣЁбваҐ. „«п бва®Є
ЎЁв®ў ў Ї ¬пвЁ нв® ҐЇ®б।б⢥®Ґ Ї®«Ґ § ¤ Ґв в®«мЄ® ᬥ饨Ґ
ЎЁв ў б«®ўҐ Ё«Ё ¤ў®©®¬ б«®ўҐ. ЌҐЇ®б।бвўҐлҐ б¬ҐйҐЁп ЎЁв®ў,
ЇаҐўли ойЁҐ 31, Ї®¤¤Ґа¦Ёў овбп ЁбЇ®«м§®ў ЁҐ¬ Ї®«п
ҐЇ®б।б⢥®Ј® б¬ҐйҐЁп ЎЁв ў Є®¬ЎЁ жЁЁ б Ї®«Ґ¬ б¬ҐйҐЁп ў
®ЇҐа ¤Ґ Ї ¬пвЁ. Њ« ¤иЁҐ ®в 3 ¤® 5 ЎЁвл ҐЇ®б।б⢥®Ј®
б¬ҐйҐЁп ЎЁв § ЇЁблў овбп ў Ї®«Ґ ҐЇ®б।б⢥®Ј® ᬥ饨п
ЎЁв , бв аиЁҐ ЎЁвл ®в 27 ¤® 29 б¤ўЁЈ овбп Ё ®ЎкҐ¤Ёповбп б®
ᬥ饨Ґ¬ Ў ©в ў ०Ё¬Ґ ¤аҐб жЁЁ.
ЏаЁ ¤®бвгЇҐ Є ЎЁвг ў Ї ¬пвЁ Їа®жҐбб®а ¬®¦Ґв ўлЇ®«Ёвм ¤®бвгЇ Є
зҐвл६ Ў ©в ¬, зЁ п б ¤аҐб Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (4 * (BitOffset DIV 32))
¤«п а §¬Ґа ®ЇҐа ¤ 32 ЎЁв , «ЁЎ® ¤ў Ў ©в , зЁ п б ¤аҐб
Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (2 * (BitOffset DIV 16))
¤«п а §¬Ґа ®ЇҐа ¤ 16 ЎЁв®ў. Џа®жҐбб®а ¬®¦Ґв Ї®бвгЇ вм в ЄЁ¬
®Ўа §®¬ ¤ ¦Ґ Є®Ј¤ ¤«п ¤®бвгЇ Є § ¤ ®¬г ЎЁвг ¤®бв в®з®
ўлЇ®«Ёвм ¤®бвгЇ ўбҐЈ® Є ®¤®¬г Ў ©вг. ‘«Ґ¤®ў ⥫м®, ўл ¬®¦ҐвҐ
Ё§ЎҐ¦ вм ббл«®Є Є ®Ў« бвп¬ Ї ¬пвЁ, Ў«Ё§Є® Є а §алў ¬ ¤аҐб®Ј®
Їа®бва бвў . ‚ з бв®бвЁ, Ё§ЎҐЈ ©вҐ ббл«®Є Є ॣЁбва ¬
ўў®¤ /ўлў®¤ , гЇа ў«пҐ¬®Ј® Ї ¬пвмо. ‚¬Ґбв® нв®Ј® ¤«п § Јаг§ЄЁ Ё
б®еа ҐЁп ў нвЁ ¤аҐб ЁбЇ®«м§г©вҐ Є®¬ ¤л MOV, ¤«п
¬ ЁЇг«Ёа®ў Ёп ¤ л¬Ё ЁбЇ®«м§г©вҐ ॣЁбва®ўлҐ д®а¬л нвЁе
Є®¬ ¤.
-----------------------------------------------------------------
BTC - Џа®ўҐаЄ ЎЁв Ё ¤®Ї®«ҐЁҐ
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F BB BTC r/m16,r16 6/13 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё ҐЈ® ¤®Ї®«ҐЁҐ |
|0F BB BTC r/m32,r32 6/13 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё ҐЈ® ¤®Ї®«ҐЁҐ |
|0F BA/7 ib BTC r/m16,imm8 6/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё ҐЈ® ¤®Ї®«ҐЁҐ |
|0F BA/7 ib BTC r/m32,imm8 6/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё ҐЈ® ¤®Ї®«ҐЁҐ |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
CF <- BIT[LeftSRC,RightSRC];
BIT[LeftSCR, RightScr] <- NOT BIT[LeftSCR, RightSCR]
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BT б®еа пҐв § 票Ґ ЎЁв , § ¤ ў Ґ¬®Ј® Ў §®© (ЇҐаўл©
®ЇҐа ¤) Ё ᬥ饨Ґ¬ ЎЁв (ўв®а®© ®ЇҐа ¤), ў® д« Ј CF Ё § ⥬
ўлЇ®«пҐв ¤®Ї®«ҐЁҐ нв®Ј® ЎЁв .
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј CF ᮤҐа¦Ёв § 票Ґ ¤®Ї®«ҐЁп ўлЎа ®Ј® ЎЁв .
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
€¤ҐЄб ўлЎа ®Ј® ЎЁв ¬®¦Ґв Ўлвм § ¤ ҐЇ®б।б⢥®©
Є®бв в®© ў Є®¬ ¤Ґ Ё«Ё § 票Ґ¬ ў ॣЁбвॠ®ЎйҐЈ® § 票п.
‚ Є®¬ ¤Ґ ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ® в®«мЄ® 8-а §а冷Ґ
ҐЇ®б।б⢥®Ґ § 票Ґ. ќв®в ®ЇҐа ¤ ЎҐаҐвбп Ї® ¬®¤г«о 32,
в Є зв® ¤Ё Ї §® ҐЇ®б।б⢥ле ᬥ饨© ЎЁв б®бв ў«пҐв
0...31. ќв® Ї®§ў®«пҐв ўлЎ®а «оЎ®Ј® ЎЁв ў ॣЁбваҐ. „«п бва®Є
ЎЁв®ў ў Ї ¬пвЁ нв® ҐЇ®б।б⢥®Ґ Ї®«Ґ § ¤ Ґв в®«мЄ® ᬥ饨Ґ
ЎЁв ў б«®ўҐ Ё«Ё ¤ў®©®¬ б«®ўҐ. ЌҐЇ®б।бвўҐлҐ б¬ҐйҐЁп ЎЁв®ў,
ЇаҐўли ойЁҐ 31, Ї®¤¤Ґа¦Ёў овбп ЁбЇ®«м§®ў ЁҐ¬ Ї®«п
ҐЇ®б।б⢥®Ј® б¬ҐйҐЁп ЎЁв ў Є®¬ЎЁ жЁЁ б Ї®«Ґ¬ б¬ҐйҐЁп ў
®ЇҐа ¤Ґ Ї ¬пвЁ. Њ« ¤иЁҐ ®в 3 ¤® 5 ЎЁвл ҐЇ®б।б⢥®Ј®
б¬ҐйҐЁп ЎЁв § ЇЁблў овбп ў Ї®«Ґ ҐЇ®б।б⢥®Ј® ᬥ饨п
ЎЁв , бв аиЁҐ ЎЁвл ®в 27 ¤® 29 б¤ўЁЈ овбп Ё ®ЎкҐ¤Ёповбп б®
ᬥ饨Ґ¬ Ў ©в ў ०Ё¬Ґ ¤аҐб жЁЁ.
ЏаЁ ¤®бвгЇҐ Є ЎЁвг ў Ї ¬пвЁ Їа®жҐбб®а ¬®¦Ґв ўлЇ®«Ёвм ¤®бвгЇ Є
зҐвл६ Ў ©в ¬, зЁ п б ¤аҐб Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (4 * (BitOffset DIV 32))
¤«п а §¬Ґа ®ЇҐа ¤ 32 ЎЁв , «ЁЎ® ¤ў Ў ©в , зЁ п б ¤аҐб
Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (2 * (BitOffset DIV 16))
¤«п а §¬Ґа ®ЇҐа ¤ 16 ЎЁв®ў. Џа®жҐбб®а ¬®¦Ґв Ї®бвгЇ вм в ЄЁ¬
®Ўа §®¬ ¤ ¦Ґ Є®Ј¤ ¤«п ¤®бвгЇ Є § ¤ ®¬г ЎЁвг ¤®бв в®з®
ўлЇ®«Ёвм ¤®бвгЇ ўбҐЈ® Є ®¤®¬г Ў ©вг. ‘«Ґ¤®ў ⥫м®, ўл ¬®¦ҐвҐ
Ё§ЎҐ¦ вм ббл«®Є Є ®Ў« бвп¬ Ї ¬пвЁ, Ў«Ё§Є® Є а §алў ¬ ¤аҐб®Ј®
Їа®бва бвў . ‚ з бв®бвЁ, Ё§ЎҐЈ ©вҐ ббл«®Є Є ॣЁбва ¬
ўў®¤ /ўлў®¤ , гЇа ў«пҐ¬®Ј® Ї ¬пвмо. ‚¬Ґбв® нв®Ј® ¤«п § Јаг§ЄЁ Ё
б®еа ҐЁп ў нвЁ ¤аҐб ЁбЇ®«м§г©вҐ Є®¬ ¤л MOV, ¤«п
¬ ЁЇг«Ёа®ў Ёп ¤ л¬Ё ЁбЇ®«м§г©вҐ ॣЁбва®ўлҐ д®а¬л нвЁе
Є®¬ ¤.
-----------------------------------------------------------------
BTR - Џа®ўҐаЄ ЎЁв Ё бЎа®б
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F B3 BTR r/m16,r16 6/13 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё бЎа®б |
|0F B3 BTR r/m32,r32 6/13 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё бЎа®б |
|0F BA/6 ib BTR r/m16,imm8 6/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё бЎа®б |
|0F BA/6 ib BTR r/m32,imm8 6/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё бЎа®б |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
CF <- BIT[LeftSRC,RightSRC];
BIT[LeftSRC,RightSRC] <- 0;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BTS б®еа пҐв § 票Ґ ЎЁв , § ¤ ў Ґ¬®Ј® Ў §®© (ЇҐаўл©
®ЇҐа ¤) Ё ᬥ饨Ґ¬ ЎЁв (ўв®а®© ®ЇҐа ¤), ў® д« Ј CF, § ⥬
§ ЇЁблў Ґв ў нв®в ЎЁв 0.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј CF ᮤҐа¦Ёв § 票Ґ ўлЎа ®Ј® ЎЁв .
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
€¤ҐЄб ўлЎа ®Ј® ЎЁв ¬®¦Ґв Ўлвм § ¤ ҐЇ®б।б⢥®©
Є®бв в®© ў Є®¬ ¤Ґ Ё«Ё § 票Ґ¬ ў ॣЁбвॠ®ЎйҐЈ® § 票п.
‚ Є®¬ ¤Ґ ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ® в®«мЄ® 8-а §а冷Ґ
ҐЇ®б।б⢥®Ґ § 票Ґ. ќв®в ®ЇҐа ¤ ЎҐаҐвбп Ї® ¬®¤г«о 32,
в Є зв® ¤Ё Ї §® ҐЇ®б।б⢥ле ᬥ饨© ЎЁв б®бв ў«пҐв
0...31. ќв® Ї®§ў®«пҐв ўлЎ®а «оЎ®Ј® ЎЁв ў ॣЁбваҐ. „«п бва®Є
ЎЁв®ў ў Ї ¬пвЁ нв® ҐЇ®б।б⢥®Ґ Ї®«Ґ § ¤ Ґв в®«мЄ® ᬥ饨Ґ
ЎЁв ў б«®ўҐ Ё«Ё ¤ў®©®¬ б«®ўҐ. ЌҐЇ®б।бвўҐлҐ б¬ҐйҐЁп ЎЁв®ў,
ЇаҐўли ойЁҐ 31 (Ё«Ё 15), Ї®¤¤Ґа¦Ёў овбп ЁбЇ®«м§®ў ЁҐ¬ Ї®«п
ҐЇ®б।б⢥®Ј® б¬ҐйҐЁп ЎЁв ў Є®¬ЎЁ жЁЁ б Ї®«Ґ¬ б¬ҐйҐЁп ў
®ЇҐа ¤Ґ Ї ¬пвЁ. Њ« ¤иЁҐ ®в 3 ¤® 5 ЎЁвл ҐЇ®б।б⢥®Ј®
б¬ҐйҐЁп ЎЁв § ЇЁблў овбп ў Ї®«Ґ ҐЇ®б।б⢥®Ј® ᬥ饨п
ЎЁв , бв аиЁҐ ЎЁвл ®в 27 ¤® 29 б¤ўЁЈ овбп Ё ®ЎкҐ¤Ёповбп б®
ᬥ饨Ґ¬ Ў ©в ў ०Ё¬Ґ ¤аҐб жЁЁ.
ЏаЁ ¤®бвгЇҐ Є ЎЁвг ў Ї ¬пвЁ Їа®жҐбб®а ¬®¦Ґв ўлЇ®«Ёвм ¤®бвгЇ Є
зҐвл६ Ў ©в ¬, зЁ п б ¤аҐб Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (4 * (BitOffset DIV 32))
¤«п а §¬Ґа ®ЇҐа ¤ 32 ЎЁв , «ЁЎ® ¤ў Ў ©в , зЁ п б ¤аҐб
Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (2 * (BitOffset DIV 16))
¤«п а §¬Ґа ®ЇҐа ¤ 16 ЎЁв®ў. Џа®жҐбб®а ¬®¦Ґв Ї®бвгЇ вм в ЄЁ¬
®Ўа §®¬ ¤ ¦Ґ Є®Ј¤ ¤«п ¤®бвгЇ Є § ¤ ®¬г ЎЁвг ¤®бв в®з®
ўлЇ®«Ёвм ¤®бвгЇ ўбҐЈ® Є ®¤®¬г Ў ©вг. ‘«Ґ¤®ў ⥫м®, ўл ¬®¦ҐвҐ
Ё§ЎҐ¦ вм ббл«®Є Є ®Ў« бвп¬ Ї ¬пвЁ, Ў«Ё§Є® Є а §алў ¬ ¤аҐб®Ј®
Їа®бва бвў . ‚ з бв®бвЁ, Ё§ЎҐЈ ©вҐ ббл«®Є Є ॣЁбва ¬
ўў®¤ /ўлў®¤ , гЇа ў«пҐ¬®Ј® Ї ¬пвмо. ‚¬Ґбв® нв®Ј® ¤«п § Јаг§ЄЁ Ё
б®еа ҐЁп ў нвЁ ¤аҐб ЁбЇ®«м§г©вҐ Є®¬ ¤л MOV, ¤«п
¬ ЁЇг«Ёа®ў Ёп ¤ л¬Ё ЁбЇ®«м§г©вҐ ॣЁбва®ўлҐ д®а¬л нвЁе
Є®¬ ¤.
-----------------------------------------------------------------
BTS - Џа®ўҐаЄ ЎЁв Ё гбв ®ўЄ
----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|0F AB BTS r/m16,r16 6/13 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё гбв ®ўЄ |
|0F AB BTS r/m32,r32 6/13 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё гбв ®ўЄ |
|0F BA/5 ib BTS r/m16,imm8 6/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё гбв ®ўЄ |
|0F BA/5 ib BTS r/m32,imm8 6/8 ‘®еа ҐЁҐ ЎЁв ў® д« ЈҐ |
| ЇҐаҐ®б Ё гбв ®ўЄ |
----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
CF <- BIT[LeftSRC,RightSRC];
BIT[LeftSRC,RightSRC] <- 1;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ BTS б®еа пҐв § 票Ґ ЎЁв , § ¤ ў Ґ¬®Ј® Ў §®© (ЇҐаўл©
®ЇҐа ¤) Ё ᬥ饨Ґ¬ ЎЁв (ўв®а®© ®ЇҐа ¤), ў® д« Ј CF, § ⥬
§ ЇЁблў Ґв ў нв®в ЎЁв 1.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
”« Ј CF ᮤҐа¦Ёв § 票Ґ ўлЎа ®Ј® ЎЁв .
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
€¤ҐЄб ўлЎа ®Ј® ЎЁв ¬®¦Ґв Ўлвм § ¤ ҐЇ®б।б⢥®©
Є®бв в®© ў Є®¬ ¤Ґ Ё«Ё § 票Ґ¬ ў ॣЁбвॠ®ЎйҐЈ® § 票п.
‚ Є®¬ ¤Ґ ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ® в®«мЄ® 8-а §а冷Ґ
ҐЇ®б।б⢥®Ґ § 票Ґ. ќв®в ®ЇҐа ¤ ЎҐаҐвбп Ї® ¬®¤г«о 32,
в Є зв® ¤Ё Ї §® ҐЇ®б।б⢥ле ᬥ饨© ЎЁв б®бв ў«пҐв
0...31. ќв® Ї®§ў®«пҐв ўлЎ®а «оЎ®Ј® ЎЁв ў ॣЁбваҐ. „«п бва®Є
ЎЁв®ў ў Ї ¬пвЁ нв® ҐЇ®б।б⢥®Ґ Ї®«Ґ § ¤ Ґв в®«мЄ® ᬥ饨Ґ
ЎЁв ў б«®ўҐ Ё«Ё ¤ў®©®¬ б«®ўҐ. ЌҐЇ®б।бвўҐлҐ б¬ҐйҐЁп ЎЁв®ў,
ЇаҐўли ойЁҐ 31 (Ё«Ё 15), Ї®¤¤Ґа¦Ёў овбп ЁбЇ®«м§®ў ЁҐ¬ Ї®«п
ҐЇ®б।б⢥®Ј® б¬ҐйҐЁп ЎЁв ў Є®¬ЎЁ жЁЁ б Ї®«Ґ¬ б¬ҐйҐЁп ў
®ЇҐа ¤Ґ Ї ¬пвЁ. Њ« ¤иЁҐ ®в 3 ¤® 5 ЎЁвл ҐЇ®б।б⢥®Ј®
б¬ҐйҐЁп ЎЁв § ЇЁблў овбп ў Ї®«Ґ ҐЇ®б।б⢥®Ј® ᬥ饨п
ЎЁв , бв аиЁҐ ЎЁвл ®в 27 ¤® 29 б¤ўЁЈ овбп Ё ®ЎкҐ¤Ёповбп б®
ᬥ饨Ґ¬ Ў ©в ў ०Ё¬Ґ ¤аҐб жЁЁ.
ЏаЁ ¤®бвгЇҐ Є ЎЁвг ў Ї ¬пвЁ Їа®жҐбб®а ¬®¦Ґв ўлЇ®«Ёвм ¤®бвгЇ Є
зҐвл६ Ў ©в ¬, зЁ п б ¤аҐб Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (4 * (BitOffset DIV 32))
¤«п а §¬Ґа ®ЇҐа ¤ 32 ЎЁв , «ЁЎ® ¤ў Ў ©в , зЁ п б ¤аҐб
Ї ¬пвЁ, § ¤ ®Ј® Є Є
€бЇ®«ЁвҐ«мл© ¤аҐб + (2 * (BitOffset DIV 16))
¤«п а §¬Ґа ®ЇҐа ¤ 16 ЎЁв®ў. Џа®жҐбб®а ¬®¦Ґв Ї®бвгЇ вм в ЄЁ¬
®Ўа §®¬ ¤ ¦Ґ Є®Ј¤ ¤«п ¤®бвгЇ Є § ¤ ®¬г ЎЁвг ¤®бв в®з®
ўлЇ®«Ёвм ¤®бвгЇ ўбҐЈ® Є ®¤®¬г Ў ©вг. ‘«Ґ¤®ў ⥫м®, ўл ¬®¦ҐвҐ
Ё§ЎҐ¦ вм ббл«®Є Є ®Ў« бвп¬ Ї ¬пвЁ, Ў«Ё§Є® Є а §алў ¬ ¤аҐб®Ј®
Їа®бва бвў . ‚ з бв®бвЁ, Ё§ЎҐЈ ©вҐ ббл«®Є Є ॣЁбва ¬
ўў®¤ /ўлў®¤ , гЇа ў«пҐ¬®Ј® Ї ¬пвмо. ‚¬Ґбв® нв®Ј® ¤«п § Јаг§ЄЁ Ё
б®еа ҐЁп ў нвЁ ¤аҐб ЁбЇ®«м§г©вҐ Є®¬ ¤л MOV, ¤«п
¬ ЁЇг«Ёа®ў Ёп ¤ л¬Ё ЁбЇ®«м§г©вҐ ॣЁбва®ўлҐ д®а¬л нвЁе
Є®¬ ¤.
-----------------------------------------------------------------
CALL - ‚맮ў Їа®жҐ¤гал
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
|E8 cw CALL rel16 3 ‚맮ў Ў«Ё¦Ё©, ᬥ饨Ґ ®в®- |
| бЁвҐ«м® б«Ґ¤го饩 Є®¬ ¤л |
|FF /2 CALL r/m16 5/5 ‚맮ў Ў«Ё¦Ё©, Є®бўҐл© аҐ- |
| ЈЁбва/Є®бўҐ п Ї ¬пвм |
|9A cd CALL ptr16:16 18,pm=20 ‚맮ў ¬Ґ¦бҐЈ¬Ґвл©, ўҐбм |
| § ¤ л© гЄ § ⥫м |
|9A cd CALL ptr16:16 pm=35 ‚맮ў и«о§®¬, в ¦Ґ ЇаЁўЁ«ҐЈЁ-|
| а®ў ®бвм |
|9A cd CALL ptr16:16 pm=69 ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, ЎҐ§ Ї а ¬Ґва®ў |
|9A cd CALL ptr16:16 pm=77+4x ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, е Ї а ¬Ґва®ў |
|9A cd CALL ptr16:16 pm=37+ts ‚맮ў § ¤ зЁ |
| |
|FF /3 CALL m16:16 17,pm=20 ‚맮ў ¬Ґ¦бҐЈ¬Ґвл©, ¤аҐб ў |
| ¤ў®©®¬ б«®ўҐ r/m |
|FF /3 CALL m16:16 pm=35 ‚맮ў и«о§®¬, в ¦Ґ ЇаЁўЁ«ҐЈЁ-|
| а®ў ®бвм |
|FF /3 CALL m16:16 pm=69 ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, ЎҐ§ Ї а ¬Ґва®ў |
|FF /3 CALL m16:16 pm=77+4x ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, е Ї а ¬Ґва®ў |
|FF /3 CALL m16:16 pm=37+ts ‚맮ў § ¤ зЁ |
| |
|E8 cd CALL rel32 3 ‚맮ў Ў«Ё¦Ё©, ᬥ饨Ґ ®в®- |
| бЁвҐ«м® б«Ґ¤го饩 Є®¬ ¤л |
|FF /2 CALL r/m32 5/5 ‚맮ў Ў«Ё¦Ё©, Є®бўҐл© |
| |
|9A cp CALL ptr16:32 18,pm=20 ‚맮ў ¬Ґ¦бҐЈ¬Ґвл©, ўҐбм |
| § ¤ л© гЄ § ⥫м |
|9A cp CALL ptr16:32 pm=35 ‚맮ў и«о§®¬, в ¦Ґ ЇаЁўЁ«ҐЈЁ-|
| а®ў ®бвм |
|9A cp CALL ptr16:32 pm=69 ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, ЎҐ§ Ї а ¬Ґва®ў |
|9A cp CALL ptr32:32 pm=77+4x ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, е Ї а ¬Ґва®ў |
|9A cp CALL ptr16:32 pm=37+ts ‚맮ў § ¤ зЁ |
| |
|FF /3 CALL m16:32 17,pm=20 ‚맮ў ¬Ґ¦бҐЈ¬Ґвл©, ¤аҐб ў |
| ¤ў®©®¬ б«®ўҐ ў r/m |
|FF /3 CALL m16:32 pm=35 ‚맮ў и«о§®¬, в ¦Ґ ЇаЁўЁ«Ґ- |
| ЈЁа®ў ®бвм |
|FF /3 CALL m16:32 pm=69 ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, ЎҐ§ Ї а ¬Ґва®ў |
|FF /3 CALL m16:32 pm=77+4x ‚맮ў и«о§®¬, Ў®«ми п ЇаЁўЁ«Ґ-|
| ЈЁа®ў ®бвм, е Ї а ¬Ґва®ў |
|FF /3 CALL m16:32 pm=37+ts ‚맮ў § ¤ зЁ |
-----------------------------------------------------------------
ЏаЁ¬Ґз ЁҐ: § 票п ts § ¤ овбп б«Ґ¤го饩 в Ў«ЁжҐ©:
-----------------------------------------------------------------
| Ќ®ў п § ¤ з
‘в а п § ¤ з |-------------------------------------------
| Є TSS i486 | Є TSS 80286 | Є TSS VM
-----------------------------------------------------------------
VM/i486/TSS 80286 | 199 | 180 | 177
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
IF вЁЇ ўл§®ў rel16 Ё«Ё rel32
THEN (* Ў«Ё¦Ё© ®в®бЁвҐ«мл© ўл§®ў *)
IF OperandSize = 16
THEN
Push(IP);
EIP <- (EIP + rel16) AND 0000FFFFH;
ELSE (* OperandSize = 32 *)
Push(EIP);
EIP <- EIP + rel32;
FI;
FI;
IF вЁЇ ўл§®ў r/m16 Ё«Ё r/m32
THEN (* Ў«Ё¦Ё© Ўб®«овл© ўл§®ў *)
IF OperandSize = 16
THEN
Push(IP);
EIP <- [r/m16] AND 0000FFFFH;
ELSE (* OperandSize = 32 *)
Push(EIP);
EIP <- [r/m32];
FI;
FI;
IF (PE = 0 OR (PE = 1 AND VM = 1))
(* ०Ё¬ ॠ«мле ¤аҐб®ў Ё«Ё ўЁавг «мл© аҐ¦Ё¬ 8086 *)
AND Є®¬ ¤ = ¤ «мЁ© CALL
(* в.Ґ. вЁЇ ®ЇҐа ¤ а ўҐ m16:16, m16:32, ptr16:16, ptr16:32 *)
THEN
IF OperandSize = 16
THEN
Push(CS);
Push(IP); (* ¤аҐб б«Ґ¤го饩 Є®¬ ¤л; 16 ЎЁв®ў *)
ELSE
Push(CS); (* 16 бв аиЁе ЎЁв®ў § пв® § Ї®«ЁвҐ«п¬Ё *)
Push(EIP); (* ¤аҐб б«Ґ¤го饩 Є®¬ ¤л; 32 ЎЁв *)
FI;
IF вЁЇ ®ЇҐа ¤ а ўҐ m16:16 Ё«Ё m16:32
THEN (* Є®бўҐл© ¤ «мЁ© ўл§®ў *)
IF OperandSize = 16
THEN
CS:IP <- [m16:16];
EIP <- EIP AND 0000FFFFH; (* ®зЁбвЁвм бв аиЁҐ 16 ЎЁв®ў *)
ELSE (* OperandSize = 32 *)
CS:IEP <- [m16:32];
FI;
FI;
IF вЁЇ ®ЇҐа ¤ а ўҐ ptr16:16 Ё«Ё ptr16:32
THEN (* Їаאַ© ¤ «мЁ© ўл§®ў *)
If OperandSize =16 *)
THEN
CS:IP <- ptr16:16;
EIP <- EIP AND 0000FFFFH; (* ®зЁбвЁвм бв аиЁҐ 16 ЎЁв®ў *)
ELSE (* OperandSize = 32 *)
CS:EIP <- ptr16:32;
FI;
FI;
FI;
IF (PE = 1 AND VM = 0) (* ‡ йЁйҐл© ०Ё¬, ® Ґ ०Ё¬ V86 *)
AND Є®¬ ¤ = ¤ «мЁ© CALL
THEN
ЏаЁ Є®бўҐ®¬ Їа®ўҐаЁвм ¤®бвгЇ Є ¤ў®©®¬г б«®ўг EA;
#GP(0) ЇаЁ аг襨Ё Ја Ёжл;
Ќ®ўл© ᥫҐЄв®а CS Ґ ¤®«¦Ґ Ўлвм Їгбвл¬, Ё зҐ #GP(0);
Џа®ўҐаЁвм, зв®Ўл Ё¤ҐЄб ᥫҐЄв®а ®ў®Ј® CS Ўл« ў ЇаҐ¤Ґ« е
Ја Ёж ¤ҐбЄаЁЇв®а®© в Ў«Ёжл; Ё зҐ #GP(ᥫҐЄв®а ®ў®Ј® CS)
€бб«Ґ¤®ў вм а §«ЁзлҐ ¤®ЇгбвЁ¬лҐ § зҐЁп Ў ©в AR ўлЎа ®Ј®
¤ҐбЄаЁЇв®а ;
‚ § ўЁбЁ¬®бвЁ ®в § 票п;
ЇҐаҐе®¤ Є ЉЋЌ”ЋђЊЌ›‰-ЉЋ„Ћ‚›‰-‘…ѓЊ…Ќ’;
ЇҐаҐе®¤ Є Ќ…ЉЋЌ”ЋђЊЌ›‰-ЉЋ„Ћ‚›‰-‘…ѓЊ…Ќ’;
ЇҐаҐе®¤ Є ‹ћ‡-‚›‡Ћ‚Ђ;
ЇҐаҐе®¤ Є ‹ћ‡-‡Ђ„Ђ—€;
ЇҐаҐе®¤ Є ‘…ѓЊ…Ќ’-‘Ћ‘’ЋџЌ€џ-‡Ђ„Ђ—€;
ELSE #GP(ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв );
FI;
ЉЋЌ”ЋђЊЌ›‰-ЉЋ„Ћ‚›‰-‘…ѓЊ…Ќ’:
DPL ¤®«¦Ґ Ўлвм <= CPL ELSE #GP(ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв );
‘ҐЈ¬Ґв ¤®«¦Ґ ЇаЁбгвбвў®ў вм ELSE #NP (ᥫҐЄв®а Є®¤®ў®Ј®
ᥣ¬Ґв );
‘⥪ ¤®«¦Ґ Ўлвм ¤®бв в®з® ўҐ«ЁЄ ¤«п ¤аҐб ў®§ўа в ELSE
#SS(0);
“Є § вҐ«м Є®¬ ¤ ¤®«¦Ґ Ўлвм ў Ја Ёж е Є®¤®ў®Ј® ᥣ¬Ґв ELSE
#GP(0);
‡ Јаг§Ёвм ¤ҐбЄаЁЇв®а Є®¤®ў®Ј® ᥣ¬Ґв ў ॣЁбва CS;
‡ Јаг§Ёвм ў CS ᥫҐЄв®а ®ў®Ј® Є®¤®ў®Ј® ᥣ¬Ґв ;
‡ Јаг§Ёвм ў EIP б а биЁаҐҐ¬ г«Ґ¬ (®ў®Ґ ᬥ饨Ґ);
IF OperandSize = 16 THEN EIP <- EIP AND 0000FFFFH; FI;
Ќ…ЉЋЌ”ЋђЊЌ›‰-ЉЋ„Ћ‚›‰-‘…ѓЊ…Ќ’:
RPL ¤®«¦Ґ Ўлвм <= CPL ELSE #GP(ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв );
DPL ¤®«¦Ґ Ўлвм = CPL ELSE #GP(ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв );
‘ҐЈ¬Ґв ¤®«¦Ґ ЇаЁбгвбвў®ў вм ELSE #NP (ᥫҐЄв®а Є®¤®ў®Ј®
ᥣ¬Ґв );
‘⥪ ¤®«¦Ґ Ўлвм ¤®бв в®з® ўҐ«ЁЄ ¤«п ¤аҐб ў®§ўа в ELSE
#SS(0);
“Є § вҐ«м Є®¬ ¤ ¤®«¦Ґ Ўлвм ў Ја Ёж е Є®¤®ў®Ј® ᥣ¬Ґв ELSE
#GP(0);
‡ Јаг§Ёвм ¤ҐбЄаЁЇв®а Є®¤®ў®Ј® ᥣ¬Ґв ў ॣЁбва CS;
‡ Јаг§Ёвм ў CS ᥫҐЄв®а ®ў®Ј® Є®¤®ў®Ј® ᥣ¬Ґв ;
“бв ®ўЁвм RPL ¤«п CS а ўл¬ CPL;
‡ Јаг§Ёвм ў EIP б а биЁаҐҐ¬ г«Ґ¬ (®ў®Ґ ᬥ饨Ґ);
IF OperandSize = 16 THEN EIP <- EIP AND 0000FFFFH; FI;
‹ћ‡-‚›‡Ћ‚Ђ:
DPL и«о§ ўл§®ў ¤®«¦Ґ Ўлвм >= CPL ELSE #GP(ᥫҐЄв®а и«о§
ўл§®ў );
DPL и«о§ ўл§®ў ¤®«¦Ґ Ўлвм >= RPL ELSE #GP(ᥫҐЄв®а и«о§
ўл§®ў );
«о§ ўл§®ў ¤®«¦Ґ ЇаЁбгвбвў®ў вм ELSE #NP(ᥫҐЄв®а и«о§
ўл§®ў );
ђ бᬮваЁ¬ ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв ў ¤ҐбЄаЁЇв®аҐ и«о§
ўл§®ў :
‘Ґ«ҐЄв®а Ґ ¤®«¦Ґ Ўлвм Їгбвл¬ ELSE #GP(0)
‘Ґ«ҐЄв®а ¤®«¦Ґ Ўлвм ў ЇаҐ¤Ґ« е Ја Ёж ҐЈ® ¤ҐбЄаЁЇв®а®©
в Ў«Ёжл ELSE #GP(ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв )
Ѓ ©в AR ўлЎа ®Ј® ¤ҐбЄаЁЇв®а ¤®«¦Ґ ®Ў®§ з вм Є®¤®ўл©
ᥣ¬Ґв ELSE #GP (ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв )
DPL ўлЎа ®Ј® ¤ҐбЄаЁЇв®а ¤®«¦Ґ Ўлвм <= CPL ELSE
#GP(ᥫҐЄв®а Є®¤®ў®Ј® ᥣ¬Ґв )
IF ҐЄ®д®а¬л© Є®¤®ўл© ᥣ¬Ґв AND DPL <CPL
THEN ЇҐаҐе®¤ Є ЃЋ‹њЂџ-Џђ€‚€‹…ѓ€ђЋ‚ЂЌЌЋ‘’њ
ELSE ЇҐаҐе®¤ Є ’Ђ-†…-Џђ€‚€‹…ѓ€ђЋ‚ЂЌЌЋ‘’њ
FI;
ЃЋ‹њЂџ-Џђ€‚€‹…ѓ€ђЋ‚ЂЌЌЋ‘’њ:
‚§пвм ᥫҐЄв®а ®ў®Ј® SS ¤«п ®ў®Ј® га®ўп ЇаЁўЁ«ҐЈЁа®ў ®бвм ў
TSS
Џа®ўҐаЁвм ᥫҐЄв®а Ё ¤ҐбЄаЁЇв®а ¤«п ®ў®Ј® SS:
‘Ґ«ҐЄв®а Ґ ¤®«¦Ґ Ўлвм Їгбвл¬ ELSE #TS(0)
€¤ҐЄб ᥫҐЄв®а ¤®«¦Ґ 室Ёвмбп ў ЇаҐ¤Ґ« е Ја Ёж
ҐЈ® ¤ҐбЄаЁЇв®а®© в Ў«Ёжл ELSE #TS(ᥫҐЄв®а SS)
RPL ᥫҐЄв®а ¤®«¦Ґ Ўлвм а ўҐ DPL Є®¤®ў®Ј® ᥣ¬Ґв
ELSE #TS(ᥫҐЄв®а SS)
„ҐбЄаЁЇв®а ¤®«¦Ґ гЄ §лў вм ᥣ¬Ґв ¤ ле, ¤®бвгЇл©
¤«п § ЇЁбЁ ELSE #TS(ᥫҐЄв®а SS)
‘ҐЈ¬Ґв ЇаЁбгвбвўгҐв ELSE #SS(ᥫҐЄв®а SS)
IF OperandSize = 32
THEN
Ќ®ўл© б⥪ ¤®«¦Ґ Ё¬Ґвм ¬Ґбв® ¤«п Ї а ¬Ґва®ў, Ї«об 16 Ў ©в
ELSE #SS(ᥫҐЄв®а ᥣ¬Ґв )
EIP ¤®«¦Ґ Ўлвм ў Ја ЁжҐ Є®¤®ў®Ј® ᥣ¬Ґв ELSE #GP(0)
‡ Јаг§Ёвм ®ў®Ґ § 票Ґ SS:eSP Ё§ TSS
‡ Јаг§Ёвм ®ў®Ґ § 票Ґ CS:EIP Ё§ и«о§
ELSE
Ќ®ўл© б⥪ ¤®«¦Ґ Ё¬Ґвм ¬Ґбв® ¤«п Ї а ¬Ґва®ў, Ї«об 8 Ў ©в
ELSE #SS(ᥫҐЄв®а SS)
IP ¤®«¦Ґ Ўлвм ў Ја Ёж е Є®¤®ў®Ј® ᥣ¬Ґв ELSE #GP(0)
‡ Јаг§Ёвм ®ў®Ґ § 票Ґ SS:eSP Ё§ TSS
‡ Јаг§Ёвм ®ў®Ґ § 票Ґ CS:IP Ё§ и«о§
FI;
‡ Јаг§Ёвм ¤ҐбЄаЁЇв®а CS
‡ Јаг§Ёвм ¤ҐбЄаЁЇв®а SS
Џ®¬ҐбвЁвм ¤ «мЁ© гЄ § ⥫м бв а®Ј® б⥪ ў ®ўл© б⥪
‚§пвм б«®ў® бзҐвзЁЄ Ё§ и«о§ ўл§®ў , ¬ бЄЁа®ў вм 5 ЎЁв®ў
‘Є®ЇЁа®ў вм Ї а ¬Ґвал Ё§ бв а®Ј® б⥪ ў ®ўл©
Џ®¬ҐбвЁвм ў ®ўл© б⥪ ¤аҐб ў®§ўа в
“бв ®ўЁвм CPL а ўл¬ DPL б⥪®ў®Ј® ᥣ¬Ґв
“бв ®ўЁвм RPL ¤«п CS а ўл¬ CPL
’Ђ-†…-Џђ€‚€‹…ѓ€ђЋ‚ЂЌЌЋ‘’њ:
IF OperandSize = 32
THEN
‘⥪ ¤®«¦Ґ Ё¬Ґвм ¬Ґбв® ¤«п 6-Ў ©в®ў®Ј® ¤аҐб ў®§ўа в (¤® 8
Ў ©в®ў ¤®Ї®«Ґ®Ј® § Ї®«ЁвҐ«п¬Ё)
ELSE #SS(0)
EIP ¤®«¦Ґ Ўлвм ў ЇаҐ¤Ґ« е Ја Ёжл Є®¤®ў®Ј® ᥣ¬Ґв
ELSE #GP(0)
‡ Јаг§Ёвм CS:EIP Ё§ и«о§
ELSE
‘⥪ ¤®«¦Ґ Ё¬Ґвм ¬Ґбв® ¤«п 4-Ў ©в®ў®Ј® ¤аҐб ў®§ўа в
ELSE #SS(0)
IP ¤®«¦Ґ Ўлвм ў ЇаҐ¤Ґ« е Ја Ёжл Є®¤®ў®Ј® ᥣ¬Ґв
ELSE #GP(0)
‡ Јаг§Ёвм CS:IP Ё§ и«о§
Џ®¬ҐбвЁвм ў б⥪ ¤аҐб ў®§ўа в
‡ Јаг§Ёвм ¤ҐбЄаЁЇв®а Є®¤®ў®Ј® ᥣ¬Ґв ў ॣЁбва CS
“бв ®ўЁвм RPL ¤«п CS а ўл¬ CPL
‹ћ‡-‡Ђ„Ђ—€:
DPL и«о§ § ¤ зЁ ¤®«¦Ґ Ўлвм >= CPL ELSE #TS(ᥫҐЄв®а и«о§ )
DPL и«о§ § ¤ зЁ ¤®«¦Ґ Ўлвм >= RPL ELSE #TS(ᥫҐЄв®а и«о§ )
«о§ § ¤ зЁ ¤®«¦Ґ ЇаЁбгвбвў®ў вм ELSE #NP(ᥫҐЄв®а и«о§ )
€бб«Ґ¤®ў вм ᥫҐЄв®а TSS, § ¤ л© ў ¤ҐбЄаЁЇв®аҐ и«о§ § ¤ зЁ:
Ћ ¤®«¦Ґ § ¤ ў вм ЎЁв ѓ«®Ў «мл©/‹®Є «мл© Є Є ѓ«®Ў «мл©
ELSE #TS(ᥫҐЄв®а TSS)
€¤ҐЄб ¤®«¦Ґ 室Ёвмбп ў ЇаҐ¤Ґ« е Ја Ёжл GDT
ELSE #TS(ᥫҐЄв®а TSS)
Ѓ ©в AR ¤ҐбЄаЁЇв®а TSS ¤®«¦Ґ § ¤ ў вм Ґ‡ пвл© TSS
ELSE #TS(ᥫҐЄв®а TSS)
‘ҐЈ¬Ґв б®бв®пЁп § ¤ зЁ (TSS) ¤®«¦Ґ ЇаЁбгвбвў®ў вм
ELSE #NP(ᥫҐЄв®а TSS)
Џ…ђ…Љ‹ћ—…Ќ€…-‡Ђ„Ђ— (б® ў«®¦Ґ®бвмо) TSS
IP ¤®«¦Ґ 室Ёвмбп ў Ја ЁжҐ Є®¤®ў®Ј® ᥣ¬Ґв ELSE #TS(0)
‘…ѓЊ…Ќ’-‘Ћ‘’ЋџЌ€џ-‡Ђ„Ђ—€:
DPL ¤«п TSS ¤®«¦Ґ Ўлвм >= CPL ELSE #TS(ᥫҐЄв®а TSS)
DPL ¤«п TSS ¤®«¦Ґ Ўлвм >= RPL ELSE #TS(ᥫҐЄв®а TSS)
Ѓ ©в AR ¤ҐбЄаЁЇв®а TSS ¤®«¦Ґ § ¤ ў вм ¤®бвгЇл© TSS
ELSE #TS(ᥫҐЄв®а TSS)
‘ҐЈ¬Ґв б®бв®пЁп § ¤ зЁ (TSS) ¤®«¦Ґ ЇаЁбгвбвў®ў вм
ELSE #NP(ᥫҐЄв®а TSS)
Џ…ђ…Љ‹ћ—…Ќ€…-‡Ђ„Ђ— (б® ў«®¦Ґ®бвмо) TSS
IP ¤®«¦Ґ 室Ёвмбп ў Ја ЁжҐ Є®¤®ў®Ј® ᥣ¬Ґв ELSE #TS(0)
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ CALL ўл§лў Ґв ўлЇ®«ҐЁҐ Їа®жҐ¤гал, гЄ § ®© ў
®ЇҐа ¤Ґ. ЏаЁ § ўҐа襨Ё Їа®жҐ¤гал (Є®¬ ¤ ў®§ўа в ўлЇ®«пҐвбп
ўл§ў ®© Їа®жҐ¤га®©) ўлЇ®«ҐЁҐ Їа®¤®«¦ Ґвбп б Є®¬ ¤л,
б«Ґ¤го饩 § Є®¬ ¤®© CALL.
ЌЁ¦Ґ ®ЇЁб ® ¤Ґ©бвўЁҐ ¤«п а §«Ёзле д®а¬ Є®¬ ¤л.
Ѓ«Ё¦Ё¬Ё §лў овбп ўл§®ўл б § 票ﬨ вЁЇ r/m16, r/m32,
rel16, rel32; Ё§¬ҐҐЁҐ Ё«Ё б®еа ҐЁҐ § 票п ᥣ¬Ґв®Ј®
ॣЁбва Ґ вॡгҐвбп. ”®а¬л Є®¬ ¤л CALL rel16 Ё CALL rel32
бЄ« ¤лў ов Ё¬Ґо饥 § Є ᬥ饨Ґ ¤аҐб Є®¬ ¤л, б«Ґ¤го饩 §
Є®¬ ¤®© CALL, ¤«п ®ЇаҐ¤Ґ«ҐЁп § 票п. ”®а¬ rel16
ЁбЇ®«м§гҐвбп, Є®Ј¤ ваЁЎгв а §¬Ґа ®ЇҐа ¤ Є®¬ ¤л а ўҐ 16
ЎЁв ¬; д®а¬ rel32 ЁбЇ®«м§гҐвбп ЇаЁ § 票Ё нв®Ј® ваЁЎгв ,
а ў®¬ 32 ЎЁв ¬. ђҐ§г«мв в § ЇЁблў Ґвбп ў 32-ЎЁв®ўл© ॣЁбва
EIP. ‚ б«гз Ґ rel16 бв аиЁҐ 16 ЎЁв®ў ॣЁбва EIP ®зЁй овбп ,
зв® ¤ Ґв § 票Ґ ᬥ饨Ґ, Ґ ЇаҐўли о饥 16 ЎЁв®ў. Љ®¬ ¤л
CALL r/ m16 Ё CALL r/m32 § ¤ ов ॣЁбва Ё«Ё ¤аҐб Ї ¬пвЁ, Ё§
Є®в®а®Ј® ўлЇ®«пҐвбп ўлЎ®аЄ Ўб®«ов®Ј® ᬥ饨п ᥣ¬Ґв .
‘¬ҐйҐЁҐ, ўлЎа ®Ґ Ё§ r/m, а ў® 32 ЎЁв ¬ ¤«п ваЁЎгв а §¬Ґа
®ЇҐа ¤ 32 (r/m32), Ё«Ё 16 ЎЁв ¬ ¤«п ваЁЎгв а §¬Ґа ®ЇҐа ¤
16 (r/m16). ‘¬ҐйҐЁҐ ¤«п Є®¬ ¤л, б«Ґ¤го饩 § Є®¬ ¤®© CALL,
Ї®¬Ґй Ґвбп ў б⥪. Ћ Ўг¤Ґв бпв Ё§ б⥪ Ў«Ё¦Ґ© Є®¬ ¤®© RET
ў ЇаҐ¤Ґ« е ўл§ў ®© Їа®жҐ¤гал. ђҐЈЁбва CS нв®© д®а¬®© Є®¬ ¤л
CALL Ґ Ё§¬ҐпҐвбп.
„ «мЁҐ ўл§®ўл, CALL ptr16:16 Ё CALL ptr16:32, ЁбЇ®«м§гов ў
Є зҐб⢥ ¤ «мҐЈ® гЄ § вҐ«п ўл§лў Ґ¬го Їа®жҐ¤гаг зҐвлаҐе- Ё«Ё
иҐбвЁ-Ў ©в®ўл© ®ЇҐа ¤. ”®а¬л CALL m16:16 Ё m16:32 Ё§ў«ҐЄ ов
¤ «мЁ© гЄ § вҐ«м Ё§ § ¤ ®Ј® ¤аҐб Ї ¬пвЁ (Є®бўҐ п ббл«Є ).
‚ ०Ё¬Ґ ॠ«мле ¤аҐб®ў Ё«Ё ўЁав㠫쮬 ०Ё¬Ґ 8086 ¤ «мЁҐ
гЄ § ⥫Ё ᮤҐа¦ в 16 ЎЁв®ў ¤«п ॣЁбва CS Ё 16 Ё«Ё 32 ЎЁв ¤«п
ॣЁбва EIP (ў § ўЁбЁ¬®бвЁ ®в ваЁЎгв а §¬Ґа ®ЇҐа ¤ ). ќвЁ
д®а¬л Є®¬ ¤л Ї®¬Ґй ов ў б⥪ ®Ў ॣЁбва , IP Ё EIP, ў Є зҐб⢥
¤аҐб ў®§ўа в .
‚ § йЁйҐ®¬ ०Ё¬Ґ ®ЎҐ д®а¬л ¤ «мЁе гЄ § ⥫Ґ© ®Ўа й овбп Є
Ў ©вг AR ў ¤ҐбЄаЁЇв®аҐ, Ё¤ҐЄбЁа㥬®¬ ᥫҐЄв®а®© з бвмо
¤ «мҐЈ® гЄ § ⥫п. ‚ § ўЁбЁ¬®бвЁ ®в § зҐЁп Ў ©в AR ўл§®ў
ўлЇ®«Ёв ®¤Ё Ё§ б«Ґ¤гойЁе вЁЇ®ў ЇҐаҐ¤ зЁ гЇа ў«ҐЁп:
- „ «мЁ© ўл§®ў Є ⮬㠦Ґ б ¬®¬г га®ўо § йЁвл
- „ «мЁ© ўл§®ў ¬Ґ¦¤г а §л¬Ё га®ўп¬Ё § йЁвл
- ЏҐаҐЄ«о票Ґ § ¤ зЁ
Ѓ®«ҐҐ Ї®¤а®Ўго Ёд®а¬ жЁо ® ЇҐаҐ¤ зҐ гЇа ў«ҐЁп ў § йЁйҐ®¬
०Ё¬Ґ б¬. ў Ј« ў е 6 Ё 7.
€§¬ҐпҐ¬лҐ д« ЈЁ
----------------
ЏаЁ ЇҐаҐЄ«о票Ё § ¤ зЁ Ё§¬Ґповбп ўбҐ д« ЈЁ; Ґб«Ё ¦Ґ
ЇҐаҐЄ«о票Ґ § ¤ зЁ Ґ Їа®Ёб室Ёв, в® д« ЈЁ Ґ Ё§¬Ґповбп.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
„«п ¤ «мЁе ўл§®ў®ў: #GP, #NP, #SS Ё #TS, Є Є гЄ § ® ў а §¤Ґ«Ґ
"ђ Ў®в Є®¬ ¤л".
„«п Ў«Ё¦Ёе Їап¬ле ўл§®ў®ў: #GP(0), Ґб«Ё Їа®жҐ¤га 室Ёвбп §
ЇаҐ¤Ґ« ¬Ё Ја Ёжл Є®¤®ў®Ј® ᥣ¬Ґв ; #SS(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
‹оЎ®© ¤ «мЁ© ўл§®ў Ё§ 32-а §а冷Ј® Є®¤®ў®Ј® ᥣ¬Ґв ў
16-а §ап¤л© Є®¤®ўл© ᥣ¬Ґв ¤®«¦Ґ 室Ёвмбп ў ЇҐаўле 64Љ
32-а §а冷Ј® Є®¤®ў®Ј® ᥣ¬Ґв , Ї®бЄ®«мЄг ваЁЎгв а §¬Ґа
®ЇҐа ¤ Є®¬ ¤л ў н⮬ б«гз Ґ гбв ў«Ёў Ґвбп 16, зв®
Ї®§ў®«пҐв б®еа Ёвм в®«мЄ® 16-ЎЁв®ў®Ґ ᬥ饨Ґ ¤аҐб ў®§ўа в .
Соседние файлы в папке I486