Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Микропроцессор 486 / I486 / CH26-06
.TXTFRSTOR - ‚®ббв ®ўЁвм б®бв®пЁҐ FPU
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|DB /4 FRSTOR m94/ 131 ॠ«мл© ‡ Јаг§Є б®бв®пЁп FPU Ё§ |
| 108byte Ё«Ё ўЁав./ m94byte Ё«Ё m108byte |
| 120 § йЁй. |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
‘®бв®пЁҐ FPU <- SRC;
ЋЇЁб ЁҐ
--------
FRSTOR ЇҐаҐ§ Јаг¦ Ґв б®бв®пЁҐ FPU (Є®вҐЄбв Ё ॣЁбва®ўл© б⥪)
Ё§ ®Ў« бвЁ Ї ¬пвЁ, § ¤ ®© Ёбе®¤л¬ ®ЇҐа ¤®¬. ќвЁ ¤ лҐ
¤®«¦л Ўл«Ё Ўлвм § ЇЁб л вг¤ ЇаҐ¤л¤г饩 Є®¬ ¤®© FSAVE Ё«Ё
FNSAVE.
Љ®вҐЄбв FPU б®бв®Ёв Ё§ гЇа ў«по饣® б«®ў FPU, б«®ў б®бв®пЁп,
б«®ў ⥣ Ё гЄ § ⥫Ґ© ®иЁЎЄЁ (¤ ле Ё Є®¬ ¤). Њ ЄҐв
Є®вҐЄбв ў Ї ¬пвЁ § ўЁбЁв ®¤®ўаҐ¬Ґ® ®в а §¬Ґа ®ЇҐа ¤ Ё
⥪г饣® ०Ё¬ а Ў®вл Їа®жҐбб®а . ЂваЁЎгв USE ⥪г饣® Є®¤®ў®Ј®
ᥣ¬Ґв ®ЇаҐ¤Ґ«пҐв а §¬Ґа ®ЇҐа ¤ : 14-а §ап¤л© ®ЇҐа ¤
®в®бЁвбп Є ᥣ¬Ґвг USE16, 28-а §ап¤л© ®ЇҐа ¤ ®в®бЁвбп Є
ᥣ¬Ґвг USE32. Ќ аЁбгЄ е 15-5 - 15-8 Ї®Є § ¬ ЄҐв Є®вҐЄбв
¤«п ®Ў®Ёе а §¬Ґа®ў ®ЇҐа ¤®ў ў ०Ё¬ е ॠ«мле ¤аҐб®ў Ё
§ йЁйҐ®¬. (‚ ўЁав㠫쮬 ०Ё¬Ґ 8086 ЁбЇ®«м§гҐвбп ¬ ЄҐв
Є®вҐЄбв ॠ«м®Ј® ०Ё¬ ). ђҐЈЁбвал б⥪ , зЁ п б ST Ё
Є®з п ST(7), 室пвбп ў 80 Ў ©в е, ҐЇ®б।б⢥® б«Ґ¤гойЁе
§ ®Ўа §®¬ Є®вҐЄбв . FRSTOR ¤®«¦ ўлЇ®«пвмбп ў ⮬ ¦Ґ а Ў®зҐ¬
०Ё¬Ґ, зв® Ё ᮮ⢥вбвўгойЁҐ Є®¬ ¤л FSAVE Ё FNSAVE.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3 ў ᮮ⢥вбвўЁЁ б § Јаг§Є®©.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов, § ЁбЄ«о票Ґ¬ § Јаг§ЄЁ Ґ¬ бЄЁа㥬®Ј® ЁбЄ«о票п.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј® ¤аҐб ®ЇҐа ¤
Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
…б«Ё ®Ўа § Є®вҐЄбв ᮤҐа¦Ёв Ґ¬ бЄЁа㥬®Ґ ЁбЄ«о票Ґ, § Јаг§Є
ҐЈ® ЇаЁўҐ¤Ґв Є гб«®ўЁо ®иЁЎЄЁ ®ЇҐа жЁЁ б Ї« ў о饩 в®зЄ®©.
-----------------------------------------------------------------
FSAVE/FNSAVE - ‘®еа Ёвм б®бв®пЁҐ FPU
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|DB DD /6 FSAVE m94/ 154 ॠ«мл© ‘®еа ҐЁҐ б®бв®пЁп FPU ў |
| 109byte Ё«Ё ўЁав./ m94byte Ё«Ё m108byte Ї®б«Ґ |
| 143 § йЁй.+ Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг- |
| ¬ЁЁ¬г¬ 3 Ґ¬®© ®иЁЎЄЁ б Ї« ў о饩 |
| ¤«п FWAIT в®зЄ®©. ‡ ⥬ аҐ-ЁЁжЁ «Ё§ -|
| жЁп FPU. |
|DD /6 FNSAVE m94/ 154 ॠ«мл© ‘®еа ҐЁҐ б®бв®пЁп FPU ў |
| 109byte Ё«Ё ўЁав./ m94byte Ё«Ё m108byte ЎҐ§ |
| 143 § йЁй. Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг- |
| Ґ¬®© ®иЁЎЄЁ б Ї« ў о饩 |
| в®зЄ®©. ‡ ⥬ аҐ-ЁЁжЁ «Ё§ -|
| жЁп FPU. |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- б®бв®пЁҐ FPU;
ЁЁжЁ «Ё§ жЁп FPU; (* ќЄўЁў «Ґв® FNINIT *)
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л б®еа ҐЁп § ЇЁблў ов ⥪г饥 б®бв®пЁҐ FPU (Є®вҐЄбв Ё
ॣЁбвал б⥪ ) Ї® § ¤ ®¬г § зҐЁо Ё § ⥬
аҐ-ЁЁжЁ «Ё§Ёагов FPU. Љ®вҐЄбв FPU б®бв®Ёв Ё§ гЇа ў«по饣®
б«®ў FPU, б«®ў б®бв®пЁп, б«®ў ⥣ Ё гЄ § ⥫Ґ© ®иЁЎЄЁ
(¤ ле Ё Є®¬ ¤).
Њ ЄҐв Є®вҐЄбв ў Ї ¬пвЁ § ўЁбЁв ®¤®ўаҐ¬Ґ® ®в а §¬Ґа
®ЇҐа ¤ Ё ⥪г饣® ०Ё¬ а Ў®вл Їа®жҐбб®а . ЂваЁЎгв USE
⥪г饣® Є®¤®ў®Ј® ᥣ¬Ґв ®ЇаҐ¤Ґ«пҐв а §¬Ґа ®ЇҐа ¤ :
94-а §ап¤л© ®ЇҐа ¤ ®в®бЁвбп Є ᥣ¬Ґвг USE16, 108-а §ап¤л©
®ЇҐа ¤ ®в®бЁвбп Є ᥣ¬Ґвг USE32. Ќ аЁбгЄ е 15-5 - 15-8
Ї®Є § ¬ ЄҐв Є®вҐЄбв ¤«п ®Ў®Ёе а §¬Ґа®ў ®ЇҐа ¤®ў ў ०Ё¬ е
ॠ«мле ¤аҐб®ў Ё § йЁйҐ®¬. (‚ ўЁав㠫쮬 ०Ё¬Ґ 8086
ЁбЇ®«м§гҐвбп ¬ ЄҐв Є®вҐЄбв ॠ«м®Ј® ०Ё¬ ). ђҐЈЁбвал б⥪ ,
зЁ п б ST Ё Є®з п ST(7), 室пвбп ў 80 Ў ©в е,
ҐЇ®б।б⢥® б«Ґ¤гойЁе § ®Ўа §®¬ Є®вҐЄбв .
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3 ®зЁй овбп.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
FSAVE Ё FNSAVE Ґ б®еа пов б®бв®пЁп FPU ¤® вҐе Ї®а, Ї®Є Ґ
Ўг¤гв § ўҐаиҐл ¤Ґ©бвўЁп FPU. ’ ЄЁ¬ ®Ўа §®¬, б®еа Ґл© ®Ўа §
®ва ¦ Ґв б®бв®пЁҐ FPU Ї®б«Ґ ўлЇ®«ҐЁп «оЎ®© а ҐҐ
¤ҐЄ®¤Ёа®ў ®© Є®¬ ¤л.
…б«Ё Їа®Ја ¬¬ ¤®«¦ зЁв вм ®Ўа § ў Ї ¬пвЁ б®бв®пЁп,
б«Ґ¤го饣® § Є®¬ ¤®© б®еа ҐЁп, в® ® ¤®«¦ ўл¤ вм Є®¬ ¤г
FWAIT, зв®Ўл Ј а вЁа®ў вм, зв® б®еа ҐЁҐ § ўҐа襮.
Љ®¬ ¤л б®еа ҐЁп ®Ўлз® ЁбЇ®«м§говбп, Є®Ј¤ ®ЇҐа жЁ®®©
бЁб⥬Ґ Ґ®Ўе®¤Ё¬® ўлЇ®«Ёвм ЇҐаҐЄ«о票Ґ Є®вҐЄбв , Ё«Ё
®Ўа Ў®взЁЄг ЁбЄ«о票п вॡгҐвбп ЁбЇ®«м§®ў вм FPU, «ЁЎ®
Є®Ј¤ ЇаЁЄ« ¤ п Їа®Ја ¬¬ б®ЎЁа Ґвбп ЇҐаҐ¤ вм ў Ї®¤Їа®Ја ¬¬г
"зЁбвл©" FPU.
-----------------------------------------------------------------
FSCALE - “¬®¦ҐЁҐ ¬ бив Ўл© Є®нддЁжЁҐв
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D9 FD FSCALE 31(30-32) 2 “¬®¦ҐЁҐ ST ¬ бив Ў- |
| л© Є®нддЁжЁҐв ў ST(1) |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
ST <- ST x 2**ST(1);
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ ¬ бив ЎЁа®ў Ёп ЁвҐаЇаҐвЁагҐв § 票Ґ ў ST(1) Є Є
楫®Ґ Ё ЇаЁЎ ў«пҐв ҐЈ® Є нЄбЇ®ҐвҐ ST. ’ ЄЁ¬ ®Ўа §®¬, FSCALE
®ЎҐбЇҐзЁў Ґв Ўлбв஥ 㬮¦ҐЁҐ Ё«Ё ¤Ґ«ҐЁҐ 楫®зЁб«ҐлҐ
б⥯ҐЁ 2.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў в Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
P, U, O, D, I, IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
Љ®¬ ¤ FSCALE ¬®¦Ґв ЁбЇ®«м§®ў вмбп Є Є Є®¬ ¤ , ®Ўа в п Ї®
®в®иҐЁо Є FXTRACT. Џ®бЄ®«мЄг FSCALE Ґ Ё§ў«ҐЄ Ґв Ё§ б⥪
нЄбЇ®Ґвго з бвм, § FSCALE ¤®«¦ б«Ґ¤®ў вм Є®¬ ¤ FSTP
ST(1), зв®Ўл Ї®«®бвмо ®в¬ҐЁвм ¤Ґ©бвўЁҐ ЇаҐ¤л¤г饩 Є®¬ ¤л
FXTRACT.
ЋЈа ЁзҐЁ© ¤Ё Ї §® ¬ бив Ў®Ј® Є®нддЁжЁҐв ў ST(1) Ґ
бгйҐбвўгҐв. …б«Ё § 票Ґ Ґ пў«пҐвбп 楫®зЁб«Ґл¬, в® FSCALE
ЁбЇ®«м§гҐв Ў«Ё¦ ©иҐҐ 楫®Ґ, ¬Ґм襥 ¤ ®© ўҐ«ЁзЁл; в.Ґ. нв®
§ 票Ґ ®ЄагЈ«пҐвбп ў бв®а®г г«п. …б«Ё १г«мвЁаго饥 楫®Ґ
а ў® г«о, в® § 票Ґ ў ST Ґ Ё§¬ҐпҐвбп.
-----------------------------------------------------------------
FSIN - ‘Ёгб
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D9 FE FSIN 241(193-279) 2 ‡ ¬Ґ ST ҐЈ® бЁгᮬ |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
IF ®ЇҐа ¤ ў ¤®ЇгбвЁ¬®¬ ¤Ё Ї §®Ґ
THEN
C2 <- 0;
ST <- sin(ST);
ELSE
C2 <- 1;
FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ FSIN § ¬ҐпҐв ᮤҐа¦Ё¬®Ґ ST sin(ST). ‡ 票Ґ ST,
ўла ¦Ґ®Ґ ў а ¤Ё е, ¤®«¦® «Ґ¦ вм ў ¤Ё Ї §®Ґ | O | < 2**63.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1,C2 Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
P, U, D, I, IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
…б«Ё ®ЇҐа ¤ 室Ёвбп ўҐ ¤®ЇгбвЁ¬®Ј® ¤Ё Ї §® , в® д« Ј C2
гбв ®ў«Ґ, ST ®бв Ґвбп ҐЁ§¬ҐҐл¬. Џа®Ја ¬¬Ёбв б ¬
®вўҐвб⢥Ґ § в®, зв®Ўл 㬥миЁвм ®ЇҐа ¤ ¤® Ўб®«ов®Ј®
§ 票п, ¬ҐЎиҐЈ® 祬 2**63, ўлзЁв п ᮮ⢥вбвўго饥 зЁб«®,
Єа ⮥ 2 ЇЁ. ‘¬. а §¤Ґ« 17.5, Ј¤Ґ ®ЇЁб ®, Є Є Їа ўЁ«м®
§ ЇЁб вм § 票Ґ зЁб« ЇЁ ЇаЁ ўлЇ®«ҐЁЁ в Є®Ј® த ўлзЁв Ёп.
ЏаЁ ўлЇ®«ҐЁЁ ¤ ®© Є®¬ ¤л Їа®жҐбб®а i486 Їа®ўҐапҐв «ЁзЁҐ
ЇаҐалў Ё©. „«п ®Ўб«г¦Ёў Ёп ЇаҐалў Ёп ўлЇ®«ҐЁҐ Є®¬ ¤л
®в¬ҐпҐвбп (abort).
-----------------------------------------------------------------
FSINCOS - ‘Ёгб Ё Є®бЁгб
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D9 FB FSINCOS 291(243-329) 2 ‚лзЁб«ҐЁҐ бЁгб Ё |
| Є®бЁгб ST; § ¬Ґ ST |
| бЁгб Ё § ⥬ Ї®¬ҐйҐЁҐ |
| Є®бЁгб ў б⥪ FPU |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
IF ®ЇҐа ¤ ў ¤®ЇгбвЁ¬®¬ ¤Ё Ї §®Ґ
THEN
C2 <- 0;
ўаҐ¬ <- cos(ST);
ST <- sin(ST);
„ҐЄаҐ¬Ґв гЄ § вҐ«п ўҐаиЁл б⥪ FPU;
ST <- ўаҐ¬;
ELSE
C2 <- 1;
FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ FSINCOS ўлзЁб«пҐв ба §г sin(ST) Ё cos(ST), § ¬ҐпҐв ST
бЁгб Ё § ⥬ Ї®¬Ґй Ґв Є®бЁгб ў б⥪ FPU. ‡ 票Ґ ST,
ўла ¦Ґ®Ґ ў а ¤Ё е, ¤®«¦® «Ґ¦ вм ў ¤Ё Ї §®Ґ | O | < 2**63.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1,C2 Є Є ®ЇЁб ® ў в Ў«ЁжҐ 15-1; C0, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
P, U, D, I, IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
…б«Ё ®ЇҐа ¤ 室Ёвбп ўҐ ¤®ЇгбвЁ¬®Ј® ¤Ё Ї §® , в® д« Ј C2
гбв ®ў«Ґ, ST ®бв Ґвбп ҐЁ§¬ҐҐл¬. Џа®Ја ¬¬Ёбв б ¬
®вўҐвб⢥Ґ § в®, зв®Ўл 㬥миЁвм ®ЇҐа ¤ ¤® Ўб®«ов®Ј®
§ 票п, ¬ҐЎиҐЈ® 祬 2**63, ўлзЁв п ᮮ⢥вбвўго饥 зЁб«®,
Єа ⮥ 2ЏЁ. ‘¬. а §¤Ґ« 17.5, Ј¤Ґ ®ЇЁб ®, Є Є Їа ўЁ«м®
§ ЇЁб вм § 票Ґ зЁб« ЇЁ ЇаЁ ўлЇ®«ҐЁЁ в Є®Ј® த ўлзЁв Ёп.
Љ®¬ ¤ FSINCOS ўлЇ®«пҐвбп Ўлбв॥, 祬 FSIN Ё FCOS Ї®
®в¤Ґ«м®бвЁ.
ЏаЁ ўлЇ®«ҐЁЁ ¤ ®© Є®¬ ¤л Їа®жҐбб®а i486 Їа®ўҐапҐв «ЁзЁҐ
ЇаҐалў Ё©. „«п ®Ўб«г¦Ёў Ёп ЇаҐалў Ёп ўлЇ®«ҐЁҐ Є®¬ ¤л
®в¬ҐпҐвбп (abort).
-----------------------------------------------------------------
FSQRT - Љў ¤а вл© Є®аҐм
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D9 FA FSQRT 85.5(83-87) 70 ‡ ¬Ґ ST ҐЈ® Єў ¤а вл¬ |
| Є®аҐ¬ |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
ST <- Єў ¤а вл© Є®аҐм ST
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ FSQRT § ¬ҐпҐв § 票Ґ ў ST ҐЈ® Єў ¤а вл© Є®аҐм.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
P, D, I, IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
Љў ¤а вл© Є®аҐм -0 а ўҐ -0.
-----------------------------------------------------------------
FST/FSTP - ‘®еа Ёвм ¤Ґ©б⢨⥫쮥 зЁб«®
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|D9 /2 FST m32real 7 Љ®ЇЁа®ў ЁҐ ST ў m32real |
|DD /2 FST m64real 8 Љ®ЇЁа®ў ЁҐ ST ў m64real |
|DD D0+i FST ST(i) 3 Љ®ЇЁа®ў ЁҐ ST ў ST(i) |
|D9 /3 FSTP m32real 7 Љ®ЇЁа®ў ЁҐ ST ў m32real |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DD /3 FSTP m64real 8 Љ®ЇЁа®ў ЁҐ ST ў m64real |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DB /7 FSTP m80real 6 Љ®ЇЁа®ў ЁҐ ST ў m80real |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DD D8+i FSTP ST(i) 3 Љ®ЇЁа®ў ЁҐ ST ў ST(i) |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- ST(0);
IF Є®¬ ¤ = FSTP THEN Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST; FI;
ЋЇЁб ЁҐ
--------
FST Є®ЇЁагҐв ⥪г饥 § 票Ґ ॣЁбва ST ў ®ЇҐа ¤ § 票п,
Є®в®ал© ¬®¦Ґв пў«пвмбп «ЁЎ® ¤агЈЁ¬ ॣЁбв஬, «ЁЎ® ®ЇҐа ¤®¬
Ї ¬пвЁ ¤Ґ©б⢨⥫쮣® д®а¬ в ®¤Ё а®© Ё«Ё ¤ў®©®© в®з®бвЁ.
FSTP ўлЇ®«пҐв б з « Є®ЇЁа®ў ЁҐ, § ⥬ Ё§ў«ҐзҐЁҐ Ё§ б⥪
ST; Ї®¬Ё¬® вЁЇ®ў, а §аҐиҐле ў FST, ® а Ў®в Ґв Ё б
а биЁаҐл¬Ё ¤Ґ©б⢨⥫мл¬Ё ®ЇҐа ¤ ¬Ё.
…б«Ё Ёбв®зЁЄ пў«пҐвбп ॣЁбв஬, в® ЁбЇ®«м§гҐвбп ®¬Ґа
ॣЁбва , Є®в®ал© Ўл« ¤® Ё§ў«ҐзҐЁп Ё§ б⥪ .
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
ЋЇҐа ¤л § зҐЁп Ё«Ё а биЁаҐ®Ј® ¤Ґ©б⢨⥫쮣® д®а¬ в :
IS.
ЋЇҐа ¤л § зҐЁп ¤Ґ©б⢨⥫쮣® д®а¬ в ®¤Ё а®© Ё«Ё
¤ў®©®© в®з®бвЁ: P, U, O, D, I, IS.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
…б«Ё ®ЇҐа ¤ § 票п нв® ¤Ґ©б⢨⥫쮥 зЁб«® ®¤Ё а®© Ё«Ё
¤ў®©®© в®з®бвЁ, в® ¬ вЁбб ®ЄагЈ«пҐвбп ¤® иЁаЁл ®ЇҐа ¤
§ зҐЁп ў ᮮ⢥вбвўЁЁ б Ї®«Ґ¬ RC гЇа ў«по饣® б«®ў ,
нЄбЇ®Ґв ЇаҐ®Ўа §гҐвбп Є иЁаЁҐ Ё е а ЄвҐаЁбвЁЄҐ д®а¬ в
§ 票п. ’ Є¦Ґ ўлЇ®«пҐвбп Їа®ўҐаЄ гб«®ўЁп
ЇҐаҐЇ®«ҐЁп/Ї®вҐаЁ § зЁ¬®бвЁ.
…б«Ё ST ᮤҐа¦Ёв ST, +- ЎҐбЄ®Ґз®бвм Ё«Ё NaN, в® ¬ вЁбб Ґ
®ЄагЈ«пҐвбп, гᥪ Ґвбп (бЇа ў ) в ЄЁ¬ ®Ўа §®¬, зв®Ўл
Ї®¬Ґй вмбп ў ®ЇҐа ¤ § 票п. ’ Є¦Ґ Ґ ўлЇ®«пҐвбп
ЇаҐ®Ўа §®ў Ёп нЄбЇ®Ґвл: ® гᥪ Ґвбп бЇа ў . ќвЁ ®ЇҐа жЁЁ
б®еа пов Ё¤ҐвЁз®бвм § зҐЁп ЎҐбЄ®Ґз®бвЁ Ё«Ё NaN
(нЄбЇ®Ґвл).
Љ®Ј¤ ®ЇҐа ¤ § 票п пў«пҐвбп ҐЇгбвл¬ н«Ґ¬Ґв®¬ б⥪ , в®
ЁбЄ«о票Ґ ҐўҐа®© ®ЇҐа жЁЁ Ґ ЈҐҐаЁагҐвбп.
-----------------------------------------------------------------
FSTCW/FNSTCW - ‘®еа Ёвм гЇа ў«по饥 б«®ў®
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|9B D9 /7 FSTCW m2byte 3+¬ЁЁ¬г¬ ‘®еа ҐЁҐ гЇа ў«по饣® |
| 3 ¤«п FWAIT б«®ў FPU ў m2byte Ї®б«Ґ |
| Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг-|
| Ґ¬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б |
| Ї« ў о饩 в®зЄ®© |
|99 /7 FNSTCW m2byte 3 ‘®еа ҐЁҐ гЇа ў«по饣® |
| б«®ў FPU ў m2byte ЎҐ§ |
| Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг-|
| Ґ¬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б |
| Ї« ў о饩 в®зЄ®© |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- CW;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л FSTCW Ё FNSTCW § ЇЁблў ов ⥪г饥 § 票Ґ гЇа ў«по饣®
б«®ў FPU Ї® § ¤ ®¬г § 票о.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
FSTCW Їа®ўҐапҐв гб«®ўЁп Ґ¬ бЄЁа㥬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б
Ї« ў о饩 в®зЄ®©, ЇаҐ¦¤Ґ 祬 б®еа Ёвм гЇа ў«по饥 б«®ў®; FNSTCW
нв®Ј® Ґ ¤Ґ« Ґв.
-----------------------------------------------------------------
FSTENV/FNSTENV - ‘®еа Ёвм Є®вҐЄбв FPU
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|9B D9 /6 FSTENVm14/ 67 ॠ«мл© ‘®еа ҐЁҐ Є®вҐЄбв FPU ў |
| 28byte Ё«Ё ўЁав./ m14byte Ё«Ё m28byte Ї®б«Ґ |
| 56 § йЁй.+ Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг- |
| ¬ЁЁ¬г¬ 3 Ґ¬®© ®иЁЎЄЁ б Ї« ў о饩 |
| ¤«п FWAIT в®зЄ®©. ‡ ⥬ ¬ бЄЁа®ў ЁҐ |
| ўбҐе ЁбЄ«о票© б |
| Ї« ў о饩 в®зЄ®©. |
|D9 /6 FNSTENVm14/ 67 ॠ«мл© ‘®еа ҐЁҐ Є®вҐЄбв FPU ў |
| 28byte Ё«Ё ўЁав./ m14byte Ё«Ё m28byte ЎҐ§ |
| 56 § йЁй. Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг- |
| Ґ¬®© ®иЁЎЄЁ б Ї« ў о饩 |
| в®зЄ®©. ‡ ⥬ ¬ бЄЁа®ў ЁҐ |
| ўбҐе ЁбЄ«о票© |
| Ї« ў о饩 в®зЄ®©. |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- Є®вҐЄбв FPU;
CW[0..5] <- 111111B;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л б®еа ҐЁп Є®вҐЄбв § ЇЁблў ов ⥪гйЁ© Є®вҐЄбв FPU Ї®
§ ¤ ®¬г § зҐЁо Ё § ⥬ ¬ бЄЁаго⠢ᥠЁбЄ«озҐЁп ®ЇҐа жЁ© б
Ї« ў о饩 в®зЄ®©. Љ®вҐЄбв FPU б®бв®Ёв Ё§ гЇа ў«по饣® б«®ў
FPU, б«®ў б®бв®пЁп, б«®ў ⥣ Ё гЄ § ⥫Ґ© ®иЁЎЄЁ (¤ ле Ё
Є®¬ ¤).
Њ ЄҐв Є®вҐЄбв ў Ї ¬пвЁ § ўЁбЁв ®¤®ўаҐ¬Ґ® ®в а §¬Ґа
®ЇҐа ¤ Ё ⥪г饣® ०Ё¬ а Ў®вл Їа®жҐбб®а . ЂваЁЎгв USE
⥪г饣® Є®¤®ў®Ј® ᥣ¬Ґв ®ЇаҐ¤Ґ«пҐв а §¬Ґа ®ЇҐа ¤ :
14-а §ап¤л© ®ЇҐа ¤ ®в®бЁвбп Є ᥣ¬Ґвг USE16, 28-а §ап¤л©
®ЇҐа ¤ ®в®бЁвбп Є ᥣ¬Ґвг USE32. Ќ аЁбгЄ е 15-5 - 15-8
Ї®Є § ¬ ЄҐв Є®вҐЄбв ¤«п ®Ў®Ёе а §¬Ґа®ў ®ЇҐа ¤®ў ў ०Ё¬ е
ॠ«мле ¤аҐб®ў Ё § йЁйҐ®¬. (‚ ўЁав㠫쮬 ०Ё¬Ґ 8086
ЁбЇ®«м§гҐвбп ¬ ЄҐв Є®вҐЄбв ॠ«м®Ј® ०Ё¬ ).
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
FSTENV Ё FNSTENV Ґ б®еа пов Є®вҐЄбв FPU ¤® вҐе Ї®а, Ї®Є Ґ
Ўг¤гв § ўҐаиҐл ¤Ґ©бвўЁп FPU. ’ ЄЁ¬ ®Ўа §®¬, б®еа Ґл©
Є®вҐЄбв ®ва ¦ Ґв б®бв®пЁҐ FPU Ї®б«Ґ ўлЇ®«ҐЁп «оЎ®© а ҐҐ
¤ҐЄ®¤Ёа®ў ®© Є®¬ ¤л.
Љ®¬ ¤л б®еа ҐЁп Є®вҐЄбв з бв® ЁбЇ®«м§говбп ў ®Ўа Ў®взЁЄ е
ЁбЄ«о票©, Ї®бЄ®«мЄг ®Ё ®ЎҐбЇҐзЁў ов ¤®бвгЇ Є гЄ § ⥫п¬
®иЁЎЄЁ FPU. Љ®вҐЄбв ®Ўлз® б®еа пҐвбп ў б⥪Ґ ®ЇҐа вЁў®©
Ї ¬пвЁ. Џ®б«Ґ нв®Ј® FSTENV Ё FNSTENV гбв ў«Ёў о⠢ᥠ¬ бЄЁ
ЁбЄ«о票© ў гЇа ў«по饬 б«®ўҐ FPU. ќв® ЇаҐ¤®вўа й Ґв ЇаҐалў Ёп
®Ўа Ў®взЁЄ ЁбЄ«о票© ўб«Ґ¤бвўЁҐ ®иЁЎЄ®Є ®ЇҐа жЁЁ б Ї« ў о饩
в®зЄ®©.
FSTENV Їа®ўҐапҐв гб«®ўЁп Ґ¬ бЄЁа㥬®Ј® ЁбЄ«о票п б Ї« ў о饩
в®зЄ®©, ЇаҐ¦¤Ґ 祬 б®еа Ёвм Є®вҐЄбв FPU; FNSTENV нв®Ј® Ґ
¤Ґ« Ґв.
-----------------------------------------------------------------
FSTSW/FNSTSW - ‘®еа Ёвм б«®ў® б®бв®пЁп
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|9B DF /7 FSTSW m2byte 3+¬ЁЁ¬г¬ ‘®еа ҐЁҐ б«®ў б®бв®пЁп |
| 3 ¤«п FWAIT FPU ў m2byte Ї®б«Ґ |
| Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг-|
| Ґ¬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б |
| Ї« ў о饩 в®зЄ®© |
|9B DF E0 FSTSW 3+¬ЁЁ¬г¬ ‘®еа ҐЁҐ б«®ў б®бв®пЁп |
| 3 ¤«п FWAIT FPU ў ॣЁбва AX Ї®б«Ґ |
| Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг-|
| Ґ¬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б |
| Ї« ў о饩 в®зЄ®© |
|9F /7 FNSTSW m2byte 3 ‘®еа ҐЁҐ б«®ў б®бв®пЁп |
| FPU ў m2byte ЎҐ§ |
| Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг-|
| Ґ¬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б |
| Ї« ў о饩 в®зЄ®© |
|9F E0 FNSTSW AX 3 ‘®еа ҐЁҐ б«®ў б®бв®пЁп |
| FPU ў ॣЁбвॠAX ЎҐ§ |
| Їа®ўҐаЄЁ гб«®ўЁп Ґ¬ бЄЁаг-|
| Ґ¬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б |
| Ї« ў о饩 в®зЄ®© |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- SW;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л FSTSW Ё FNSTSW § ЇЁблў ов ⥪г饥 § 票Ґ б«®ў
б®бв®пЁп FPU Ї® § ¤ ®¬г § 票о, Є®в®а®Ґ ¬®¦Ґв пў«пвмбп
«ЁЎ® ¤ўге-Ў ©в®ўл¬ ¤аҐб®¬ Ї ¬пвЁ, «ЁЎ® ॣЁбв஬ AX.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0), Ґб«Ё १г«мв в ¤®«¦Ґ Ї®¬Ґй вмбп ў ᥣ¬Ґв, ¤«п Є®в®а®Ј®
§ ЇаҐйҐ § ЇЁбм; #GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј®
¤аҐб ®ЇҐа ¤ Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0)
ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў
б«гз Ґ бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ
ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
FSTSW Їа®ўҐапҐв гб«®ўЁп Ґ¬ бЄЁа㥬®© ®иЁЎЄЁ ®ЇҐа жЁЁ б
Ї« ў о饩 в®зЄ®©, ЇаҐ¦¤Ґ 祬 б®еа Ёвм б«®ў® б®бв®пЁп; FNSTSW
нв®Ј® Ґ ¤Ґ« Ґв.
FSTSW Ё FNSTSW ЁбЇ®«м§говбп ў ®б®ў®¬ ў Є®бвагЄжЁпе гб«®ў®Ј®
ЇҐаҐе®¤ (Ї®б«Ґ ўлЇ®«ҐЁп ба ўҐЁп Є®¬ ¤ ¬Ё FPREM, FPREMI Ё«Ё
FXAM). ЋЁ в Є¦Ґ ¬®Јгв ЁбЇ®«м§®ў вмбп ¤«п ЄвЁўЁ§ жЁЁ
®Ўа Ў®взЁЄ®ў ЁбЄ«о票© (Їг⥬ ®Їа®б ЎЁв®ў ЁбЄ«о票©) ў
Є®вҐЄбв е, Ґ ЁбЇ®«м§гойЁе ЇаҐалў Ё©.
ЏаЁ ўлЇ®«ҐЁЁ Є®¬ ¤л FNSTSW AX ॣЁбва AX ®Ў®ў«пҐвбп ¤® в®Ј®,
Є Є Їа®жҐбб®а i486 ўлЇ®«Ёв «оЎго ¤агЈго Є®¬ ¤г. ‘®еа 塞®Ґ
б®бв®пЁҐ - нв® б®бв®пЁп Ї® § ўҐа襨Ё ЇаҐ¤л¤г饩 Є®¬ ¤л ESC.
-----------------------------------------------------------------
FSUB/FSUBP/FISUB - ‚лзЁв ЁҐ
------------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D8 /4 FSUB m32real 10(8-20) 7(5-17) ‚лзЁв ЁҐ m32real Ё§ ST |
|DC /4 FSUB m64real 10(8-20) 7(5-17) ‚лзЁв ЁҐ m64real Ё§ ST |
|D8 E0+i FSUB ST,ST(i) 10(8-20) 7(5-17) ‚лзЁв ЁҐ ST(i) Ё§ ST |
|DC E8+i FSUB ST(i),ST 10(8-20) 7(5-17) ‡ ¬Ґ ST(i) ST-ST(i)|
|DE E8+i FSUBP ST(i),ST 10(8-20) 7(5-17) ‡ ¬Ґ ST(i) ST-ST(i)|
| Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DE E9 FSUB 10(8-20) 7(5-17) ‡ ¬Ґ ST(1) ST-ST(1)|
| Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DA /4 FISUB m32int 22.5(19-32)7(5-17) ‚лзЁв ЁҐ m32int Ё§ ST |
|DE /4 FISUB m16int 24(20-35) 7(5-17) ‚лзЁв ЁҐ m16int Ё§ ST |
------------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- ST - „агЈ®© ®ЇҐа ¤;
IF Є®¬ ¤ = FSUBP THEN Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST; FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л ўлзЁв Ёп ўлзЁв ов Ё§ ўҐаиЁл б⥪ ¤агЈ®© ®ЇҐа ¤ Ё
ў®§ўа й ов а §®бвм ў ॣЁбва § 票п.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
P, U, O, D, I, IS.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј® ¤аҐб ®ЇҐа ¤
Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
…б«Ё Ёбе®¤л© ®ЇҐа ¤ 室Ёвбп ў Ї ¬пвЁ, ® ўв®¬ вЁзҐбЄЁ Ўг¤Ґв
ЇаҐ®Ўа §®ў Є а биЁаҐ®¬г ¤Ґ©б⢨⥫쮬г д®а¬ вг.
-----------------------------------------------------------------
FSUBR/FSUBPR/FISUBR - ЋЎа ⮥ ўлзЁв ЁҐ
------------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D8 /5 FSUBR m32real 10(8-20) 7(5-17) ‡ ¬Ґ ST m32real-ST |
|DC /5 FSUBR m64real 10(8-20) 7(5-17) ‡ ¬Ґ ST m64real-ST |
|D8 E8+i FSUBR ST,ST(i) 10(8-20) 7(5-17) ‡ ¬Ґ ST ST(i) - ST |
|DC E0+i FSUBR ST(i),ST 10(8-20) 7(5-17) ‚лзЁв ЁҐ ST Ё§ ST(i) |
|DE E0+i FSUBRP ST(i), 10(8-20) 7(5-17) ‚лзЁв ЁҐ ST Ё§ ST(i) Ё |
| ST Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DE E1 FSUBR 10(8-20) 7(5-17) ‚лзЁв ЁҐ ST Ё§ ST(1) Ё |
| Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DA /5 FISUBR m32int 22.5(19-32)7(5-17) ‡ ¬Ґ ST m32int-ST |
|DE /5 FISUBR m16int 24(20-35) 7(5-17) ‡ ¬Ґ ST m16int-ST |
------------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
DEST <- „агЈ®© ®ЇҐа ¤ - ST;
IF Є®¬ ¤ = FSUBRP THEN Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST; FI;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л ®Ўа в®Ј® ўлзЁв Ёп ўлзЁв ов ўҐаиЁг б⥪ Ё§ ¤агЈ®Ј®
®ЇҐа ¤ Ё ў®§ўа й ов а §®бвм ў ॣЁбва § 票п.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
P, U, O, D, I, IS.
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#GP(0) ў б«гз Ґ Ґ¤®ЇгбвЁ¬®Ј® ЁбЇ®«ЁвҐ«м®Ј® ¤аҐб ®ЇҐа ¤
Ї ¬пвЁ ў ᥣ¬Ґв е CS, DS, ES, FS Ё«Ё GS; #SS(0) ў б«гз Ґ
Ґ¤®ЇгбвЁ¬®Ј® ¤аҐб ў ᥣ¬ҐвҐ SS; #PF(Є®¤ бЎ®п) ў б«гз Ґ
бва Ёз®Ј® бЎ®п; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є Ї ¬пвЁ ЇаЁ
⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 13, Ґб«Ё Є Є п-«ЁЎ® з бвм ®ЇҐа ¤ «Ґ¦Ёв ўҐ
Їа®бва бвў ЁбЇ®«ЁвҐ«мле ¤аҐб®ў ®в 0 ¤® 0FFFFH; ЏаҐалў ЁҐ 7
ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
’Ґ ¦Ґ ЁбЄ«о票п, зв® Ё ¤«п ०Ё¬ ॠ«мле ¤аҐб®ў: #PF (Є®¤
бЎ®п) ¤«п бва Ёзле бЎ®Ґў; #AC ¤«п Ґўла ўҐ®© ббл«ЄЁ Є
Ї ¬пвЁ ЇаЁ ⥪г饬 га®ўҐ ЇаЁўЁ«ҐЈЁа®ў ®бвЁ, а ў®¬ 3.
ЏаЁ¬Ґз Ёп
----------
…б«Ё Ёбе®¤л© ®ЇҐа ¤ 室Ёвбп ў Ї ¬пвЁ, ® ўв®¬ вЁзҐбЄЁ Ўг¤Ґв
ЇаҐ®Ўа §®ў Є а биЁаҐ®¬г ¤Ґ©б⢨⥫쮬г д®а¬ вг.
-----------------------------------------------------------------
FTST - ’ҐбвЁа®ў ЁҐ
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|D9 E4 FTST 4 1 ‘а ўҐЁҐ ST б 0.0 |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
CASE (®в®иҐЁҐ ®ЇҐа ¤®ў) OF
ЌҐ ба ўЁ¬л: C3, C2, C0 <- 111;
ST > SRC: C3, C2, C0 <- 000;
ST < SRC: C3, C2, C0 <- 001;
ST = SRC: C3, C2, C0 <- 100;
-----------------------------------------------------------------
”« ЈЁ FPU | EFlags
-----------------------------------------------------------------
C0 CF
C1 ®вбгвбвўгҐв
C2 PF
C3 ZF
-----------------------------------------------------------------
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ вҐбвЁа®ў Ёп ба ўЁў Ґв ўҐаиЁг б⥪ б 0.0. Џ®б«Ґ
ўлЇ®«ҐЁп Є®¬ ¤л гб«®ўлҐ Є®¤л ®ва ¦ ов १г«мв в ба ўҐЁп.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
D,I,IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
…б«Ё ST Ё¬ҐҐв § 票Ґ NaN, Ё«Ё ®ЎкҐЄв, Ё¬ҐойЁ© Ґ®ЇаҐ¤Ґ«Ґл©
д®а¬ в, «ЁЎ® ЇаЁ бЎ®Ґ ў б⥪Ґ, в® ЈҐҐаЁагҐвбп ЁбЄ«о票Ґ
ҐўҐа®© ®ЇҐа жЁЁ, ЎЁвл гб«®ўЁп гбв ў«Ёў овбп ў § 票Ґ
"ҐгЇ®а冷зҐ".
‡ Є г«Ґў®Ј® § зҐЁп ЁЈ®аЁагҐвбп, в ЄЁ¬ ®Ўа §®¬ зв® -0.0 = -
+0.0.
------------------------------------------------------------------
FUCOM/FUCOMP/FUCOMPP - ЌҐгЇ®а冷祮Ґ ба ўҐЁҐ ¤Ґ©б⢨⥫мле
зЁбҐ«
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® Џ а «- ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле «Ґ«м®Ґ |
| жЁЄ«®ў ўлЇ®«- |
| ҐЁҐ |
|DD E0+i FUCOM ST(i) 4 1 ‘а ўҐЁҐ ST б ST(i) |
|DD E1 FUCOM 4 1 ‘а ўҐЁҐ ST б ST(1) |
|DD E8+i FUCOMP ST(i) 4 1 ‘а ўҐЁҐ ST б ST(i) |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DD E9 FUCOMP 4 1 ‘а ўҐЁҐ ST б ST(1) |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST |
|DD E9 FUCOMPP 5 1 ‘а ўҐЁҐ ST б ST(1) |
| Ё Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST ¤ў ¦¤л|
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
CASE (®в®иҐЁҐ ®ЇҐа ¤®ў) OF
ЌҐ ба ўЁ¬л: C3, C2, C0 <- 111;
ST > SRC: C3, C2, C0 <- 000;
ST < SRC: C3, C2, C0 <- 001;
ST = SRC: C3, C2, C0 <- 100;
IF Є®¬ ¤ = FUCOMP THEN Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST; FI;
IF Є®¬ ¤ = FUCOMPP THEN Ё§ў«ҐзҐЁҐ Ё§ б⥪ ST;Ё§ў«ҐзҐЁҐ Ё§
б⥪ ST; FI;
-----------------------------------------------------------------
”« ЈЁ FPU | EFlags
-----------------------------------------------------------------
C0 CF
C1 ®вбгвбвўгҐв
C2 PF
C3 ZF
-----------------------------------------------------------------
ЋЇЁб ЁҐ
--------
Љ®¬ ¤л ҐгЇ®а冷祮Ј® ба ўҐЁп ¤Ґ©б⢨⥫мле зЁбҐ«
ба ўЁў ов ўҐаиЁг б⥪ б Ёбв®зЁЄ®¬, Є®в®ал© ¤®«¦Ґ пў«пвмбп
ॣЁбв஬. …б«Ё ®ЇҐа ¤ Ґ § ¤ , в® ST ба ўЁў Ґвбп б ST(1).
Џ®б«Ґ ўлЇ®«ҐЁп Є®¬ ¤л гб«®ўлҐ Є®¤л ®ва ¦ ов ®в®иҐЁҐ ¬Ґ¦¤г
ST Ё Ёбе®¤л¬ ®ЇҐа ¤®¬.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
D, I, IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
…б«Ё «оЎ®© Ё§ ®ЇҐа ¤®ў Ё¬ҐҐв § 票Ґ SNaN, Ё«Ё Ё¬ҐҐв
Ґ®ЇаҐ¤Ґ«Ґл© д®а¬ в, «ЁЎ® ЇаЁ бЎ®Ґ ў б⥪Ґ, ЈҐҐаЁагҐвбп
ЁбЄ«о票Ґ ҐўҐа®© ®ЇҐа жЁЁ, ЎЁвл гб«®ўЁп гбв ў«Ёў овбп ў
§ 票Ґ "ҐгЇ®а冷зҐ".
…б«Ё «оЎ®© Ё§ ®ЇҐа ¤®ў Ё¬ҐҐв § 票Ґ QNaN , ЎЁвл гб«®ўЁп
гбв ў«Ёў овбп ў § 票Ґ "ҐгЇ®а冷зҐ". ‚ ®в«ЁзЁҐ ®в ®Ўлзле
Є®¬ ¤ ба ўҐЁп (FCOM Ё в.¤.), ҐгЇ®а冷зҐлҐ Є®¬ ¤л
ба ўҐЁп Ґ ¤ ов ЁбЄ«озҐЁп ҐўҐа®© ®ЇҐа жЁЁ ўб«Ґ¤бвўЁҐ
«ЁзЁп ®ЇҐа ¤ QNaN.
‡ Є г«Ґў®Ј® § зҐЁп ЁЈ®аЁагҐвбп, в ЄЁ¬ ®Ўа §®¬ зв® -0.0 = -
+0.0.
------------------------------------------------------------------
FWAIT - Ћ¦Ё¤ ЁҐ
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|9B FWAIT (1-3) Ђ«Ё б Є®¬ ¤л WAIT |
-----------------------------------------------------------------
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ FWAIT § бв ў«пҐв Їа®жҐбб®а Їа®ўҐаЁвм «ЁзЁҐ Ї®¤ўҐиҐле
Ґ¬ бЄЁа㥬ле зЁб«®ўле ЁбЄ«о票©, ЇаҐ¦¤Ґ 祬 ЇҐаҐ©вЁ Є
¤ «мҐ©иҐ¬г ўлЇ®«ҐЁо.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
Љ Є Ї®Є §лў Ґв ҐҐ Є®¤ ®ЇҐа жЁЁ, Є®¬ ¤ FWAIT Ґ пў«пҐвбп
д ЄвЁзҐбЄ®© Є®¬ ¤®© ESC, Їа®бв® «мвҐа вЁў®© ¬Ґ¬®ЁзҐбЄ®©
д®а¬®© Є®¬ ¤л WAIT.
Љ®¤Ёа®ў ЁҐ Є®¬ ¤л FWAIT Ї®б«Ґ Є®¬ ¤л ESC ®ЎҐбЇҐзЁў Ґв
®Ўа Ў®вЄг «оЎле Ґ¬ бЄЁа㥬ле ЁбЄ«о票© б Ї« ў о饩 в®зЄ®©,
ўл§лў Ґ¬ле Є®¬ ¤®©, ¤® в®Ј®, Є Є Їа®жҐбб®а ᬮ¦Ґв Є ЄЁ¬-«ЁЎ®
®Ўа §®¬ Ё§¬ҐЁвм १г«мв в Є®¬ ¤л.
€д®а¬ жЁп ®Ў ЁбЇ®«м§®ў ЁЁ Є®¬ ¤л FWAIT ¤ Ґвбп ў Ј« ўҐ 18, ў
а §¤Ґ«Ґ "Џ а ««Ґ«м п ®Ўа Ў®вЄ ".
------------------------------------------------------------------
FXAM - ђ бᬮваҐвм
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|D9 E5 FXAM 8 ‘®®ЎйЁвм ® вЁЇҐ ®ЎкҐЄв ў ॣЁбвॠST|
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
C1 <- § Є®ўл© ЎЁв ST; (* 0 ¤«п Ї®«®¦ЁвҐ«мле, 1 ¤«п
®ваЁж ⥫мле *)
CASE (вЁЇ ®ЎкҐЄв ў ST) OF
ЌҐ Ї®¤¤Ґа¦Ёў Ґвбп: C3, C2, C0 <- 000;
NaN: (Ґ-зЁб«®) C3, C2, C0 <- 001;
Ќ®а¬Ёа®ў л©: C3, C2, C0 <- 010;
ЌҐ®ЇаҐ¤Ґ«Ґ®бвм: C3, C2, C0 <- 011;
Ќ®«м: C3, C2, C0 <- 100;
Џгбв®©: C3, C2, C0 <- 101;
„Ґ®а¬Ёа®ў л©: C3, C2, C0 <- 111;
-----------------------------------------------------------------
”« ЈЁ FPU | EFlags
-----------------------------------------------------------------
C0 CF
C1 ®вбгвбвўгҐв
C2 PF
C3 ZF
-----------------------------------------------------------------
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ б®®Ўй Ґв ® вЁЇҐ ®ЎкҐЄв , ᮤҐа¦ 饣®бп ў ॣЁбвॠST,
гбв ў«Ёў п д« ЈЁ FPU.
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C0, C1, C2, C3, Є Є Ї®Є § ® ўлиҐ.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
Ћвбгвбвўгов
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
-----------------------------------------------------------------
FXCH - Џ®¬Ґпвм ¬Ґбв ¬Ё ᮤҐа¦Ё¬®Ґ ॣЁбва®ў
-----------------------------------------------------------------
|Љ®¤ Љ®¬ ¤ —Ёб«® ЋЇЁб ЁҐ |
|®ЇҐа жЁЁ в Єв®ўле |
| жЁЄ«®ў |
| |
|D9 C8+i FXCH ST(i) 4 Џ®¬Ґпвм ¬Ґбв ¬Ё ᮤҐа¦Ё¬®Ґ ST Ё|
| ST(i) |
|D9 C9 FXCH 4 Џ®¬Ґпвм ¬Ґбв ¬Ё ᮤҐа¦Ё¬®Ґ ST Ё|
| ST(1) |
-----------------------------------------------------------------
ђ Ў®в Є®¬ ¤л
--------------
ўаҐ¬ <- ST;
ST <- DEST;
DEST <- ўаҐ¬;
ЋЇЁб ЁҐ
--------
Љ®¬ ¤ ¬ҐпҐв ¬Ґбв ¬Ё ᮤҐа¦Ё¬®Ґ ॣЁбва®ў § зҐЁп Ё ўҐаиЁл
б⥪ . …б«Ё § 票Ґ пў® Ґ § ¤ ®, в® ЁбЇ®«м§гҐвбп ST (1).
€§¬ҐпҐ¬лҐ д« ЈЁ ¬®¤г«п ®ЇҐа жЁ© б Ї« ў о饩 в®зЄ®©
---------------------------------------------------
C1, Є Є ®ЇЁб ® ў ’ Ў«ЁжҐ 15-1; C0, C2, C3 Ґ ®ЇаҐ¤Ґ«Ґл.
€бЄ«о票п зЁб«®ўле ®ЇҐа жЁ©
---------------------------------
IS
€бЄ«озҐЁп § йЁйҐ®Ј® ०Ё¬
----------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«о票п ०Ё¬ ॠ«мле ¤аҐб®ў
---------------------------------------
ЏаҐалў ЁҐ 7 ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
€бЄ«озҐЁп ўЁавг «м®Ј® ०Ё¬ 8086
----------------------------------------
#NM ЇаЁ гбв ®ў«Ґ®¬ EM Ё«Ё TS ў CR0.
ЏаЁ¬Ґз Ёп
----------
Њ®ЈЁҐ зЁб«®ўлҐ Є®бв вл а Ў®в ов в®«мЄ® б ўҐаиЁ®© б⥪ ; FXCH
®ЎҐбЇҐзЁў Ґв Їа®б⮥ б।бвў® ЁбЇ®«м§®ў Ёп нвЁе Є®¬ ¤ ў
®в®иҐЁЁ Ё¦Ёе н«Ґ¬Ґв®ў б⥪ . Ќ ЇаЁ¬Ґа, б«Ґ¤гой п
Ї®б«Ґ¤®ў ⥫м®бвм ЎҐаҐв Єў ¤а вл© Є®аҐм Ё§ ᮤҐа¦Ё¬®Ј®
ваҐв쥣® ॣЁбва ᢥаег (ЇаҐ¤Ї®« Ј п, зв® ST ҐЇгбв®©):
FXCH ST(3)
FSQRT
FXCH ST(3)
-----------------------------------------------------------------
Соседние файлы в папке I486