 22  ॠ ᮢ

 ० ॠ ᮢ  i486(TM) 믮 ணࠬ, ᠭ  ஢ 8086, 8088, 80186  80188   ० ॠ ᮢ ஢ 80286  386(TM).
⥪  i486   ०  筠 ⥪ ஢ 8086, 8088, 80186,  80188.  ணࠬ  i486, ࠡ騩  ० ॠ ᮢ, ।⠢ ᮡ    8086   ७    ॣ஢. ᭮ ᮡ ⥪ ᠭ   2  3.
 ⮩  ।⠢  ⥫ ᯥ ࠡ  i486  ० ॠ ᮢ  窨 ७ ⥬ ணࠬ:
- ନ஢ . - ७   ॣ஢. - ࠡ⪠ 뢠  ᪫祭. - 室  室  ० ॠ ᮢ. - ᪫祭  ० ॠ ᮢ. - ⫨   8086. - ⫨ ० ॠ ᮢ  ०  80286. - ⫨ ० ॠ ᮢ  ० ஢ 386. - ணࠬ । .

22.1 ८ࠧ .

 ० ॠ ᮢ  i486   ᥫ  8086 饭  ਯࠬ,  ⮣  ନ   ⠪ ,   ᤥ   8086.  ᤢ    , ନ 20-ࠧ來  . ᯮ⥫    ﬨ   ⮢   ਡ   , ࠧ  ,    㭪 22-1.

Ŀ
           19                                        3        0        
            Ŀ       
           16- ࠧ來 ᥫ ᥣ     0 0 0 0        
                   
     +      19        15                                       0       
            Ŀ       
   ᬥ饭  0 0 0 0  16- ࠧ來 ᯮ⥫           
                   
                                                                       
             20                                                 0      
    Ŀ       
        X X X X X X X X X X X X X X X X X X X X                 
                   
                                                                       

 㭮 22-1. ८ࠧ   8086

᪮   ७, १騩      21 饣 ࠧ鸞. ணࠬ  8086  ஢      0  10FFEFH ( 1   ⥫쭮 64 )  ᭮ ࠭⢠. ᪮ ࠧ  ࠭  ० ॠ쭮 ६ 㯭,   ᯮ  䨧᪨ .
 ⫨稥  ஢ 8086  80286,  i486  ࠬ 386,  ஢ 32-ࠧ來 ᯮ⥫ , ᯮ 䨪 ࠧ ;   ० ॠ ᮢ 祭 32-ࠧ來    ॢ 65.535,  ⨢ 砥  ᪫祭.
  ᮢ⨬  ० ॠ ᮢ  80286,  訡 ᥢ- ( 뢠 12  13   訡), ᫨ 祭 ᯮ⥫쭮  室  ।  0  65.535.

22.2   ॣ.

騩  ० ॠ ᮢ  ॣ஢ 砥  ॣ, ।   8086   ॣ,    386  ᮯ 387 (TM): FS, GS, ॣ ⫠, ॣ ࠢ, ॣ ஢,  ॣ  権  饩 窮.  ,   믮 樨  ॣࠬ ᥣ FS  GS   ,   䨪 ਭ㤨⥫쭮  ᥣ  ᯮ짮  饭   ॣࠬ FS  GS  ᫥ ᮢ   믮 .
 ,   ᪫祭 ।  樨    饭 ०,  ६   ᥫ ᥣ  ਯ ᥣ 業ࠫ쭮  i486, ..  VERR, VERW, LAR, LSL, LTR, STR, LLDT,  SLDT. ணࠬ, 믮塞  ० ॠ쭮 ,  ᯮ짮 २⢠   ਪ ਥ樨,   ⥪   ஢ 80186,80188,80286, 386 DX, SX  i486:
-  ,    80186, 80188  80286.
- PUSH ।⢥  -    㤠  (PUSHA  POPA) -  ।⢥  -   横᪨ ᤢ  ।⢥ 稪 - /뢮 ப -  ENTER  LEAVE -  BOUND
-  ,    386 DX.
-  LSS, LFS, LGS - ᫮ 室   ᬥ饭 -  ࠡ  ⤥묨 ⠬ -  ᪠஢ ⮢ -   ᤢ -  ⠭   ᫮ - 뫪  ࠭ / - 饭 樨 㬭 - MOV    ॣ஢ ࠢ - MOV    ॣ஢ ஢ - MOV    ॣ஢ ⫠
-  ,    i486.
-  BSWAP -  XADD -  CMPXCHG -  INVD -  WBINVD -  INVLPG

22.3 ࠡ⪠ 뢠  ᪫祭.

뢠  ᪫祭  i486  ० ॠ ᮢ ࠡ  ᭮ ⠪ ,    8086. 뢠  ᪫祭 뢠 楤 뢠  ⠡ 뢠.  ⨦   ⠡ 뢠  㬭 䨪 뢠  ᪫祭  . 室 ⠡ 뢠   㪠⥫  窨 室  楤 ࠡ⪨ 뢠  ᪫祭.   뢠  頥 ⥪騥 祭 ॣ஢ CS  IP  ⥪,  뢠, 頥 䫠 TF  । ࠢ  , । ⠡楩 뢠.  IRET   楤 ࠡ⪨ 뢠 믮  蠣  ⭮ 浪 । ⥬,   ࠢ ࢠ 楤. ᪫祭    訡  ० ॠ ᮢ.
᭮ ⫨稥 ࠡ⪨ 뢠  i486  ࠢ  ஬ 8086 ⮨  ࠧ饭  ࠧ ⠡ 뢠  ᨬ  ᮤঠ ॣ IDTR. 筮   ࠣ ணࠬ⮢ ᪮  樠樨 ᫥  ॣ IDTR ᮤন     ࠭ 3FFH ,  ᯥ稢 ᮢ⨬  ஬ 8086.   ,  LIDT  ᯮ짮  ० ॠ ᮢ     ࠭ 祭 ॣ IDTR.  LIDT  SIDT  ॣ IDTR ஡ ᠭ   9. ᫨   뢠  室  ⠡ 뢠 ॢ蠥 ࠭筮 祭, ᠭ  ॣ IDTR,   ᪫祭  ⪠.

22.4 室  室  ० ॠ ᮢ

 ॠ ᮢ ⠭ ⮬᪨ ᫥  १㧪.  ᫨ ⥬ । ᯮ짮  饭 ०, ணࠬ 樠樨 믮  ० ॠ ᮢ  o⠢ ४祭  饭 ०.

22.4.1 ४祭  饭 ०

⢥ ᯮᮡ 室  ० ॠ ᮢ - ४祭  饭 ०.  室  饭 ०,   MOV ⠭  ॣ CR0  PE (祭 ). ( ᮢ⨬  ஬ 80286  PE  ⠭    LMSW).
  10 "樠"  ᬮ७ 㣨 ᯥ⮢ ४祭  饭 ०.

22.5 ४祭 ⭮  ० ॠ ᮢ

 頥  ० ॠ ᮢ, ᫨ ணࠬ ᯥ祭   P E(祭 )  ॣ CR0  MOV  CR0 ( ᮢ⨬  ஬ 80286  PE  ⠭    LMSW,   ). 楤 饭  ० ॠ ᮢ  ᤥ ᫥饥:
1. ᫨ 祭 ࠧ  ࠭ 믮 ᫥饥:
- । ࠢ  ᠬ,   ⮦⢥ ⮡ࠦ, ..    䨧᪨.
-   PG  ॣ CR0.
-  ﬨ ॣ CR0   TLB.
2. । ࠢ ᥣ  ࠭楩 64 (0FFFFH).  㧨 ॣ CS  ॡ㥬  ॠ쭮 ० ࠭楩.
3. 㧨  ᥣ ॣ SS, DS, ES, FS,  GS ᥫ ਯ, ᮤঠ饣 ᮮ⢥騥 ॠ쭮 ० 祭:
- ࠭ = 64 (0FFFFH) - ⮢ ஡ (G = 0) - ७  (E = 0) -    (W = 1) - ⢨ (P = 1) -  =  祭
室 ,  ᫨ ॣ ᥣ   १㦥 믮 த, ᯮ ਯ, 㦥  宦  饭 ०.
4.  뢠.  CLI  뢠 INTR. 뢠 NMI    譥 ᪮ 楯.
5.   PE  ॣ CR0.
6. ३  ணࠬ ॠ쭮 ० ᯮ  쭥 室 (far JMP).  頥 ।   ⠭ ࠢ 祭 ࠢ 㯠  ॣ CS.
7. ᯮ  LIDT 㧨   ࠭ ⠡ ஢ 뢠 ॠ쭮 ०.
8.  뢠.
9. 㧨 ᥣ ॣ  ᮮ⢥⢨  ॡﬨ ணࠬ ॠ쭮 ०.

22.6 ᪫祭 ० ॠ ᮢ

  i486 ᮮ饭  ᪫祭 ࠧ  ᨬ  ⮣,   ᪫祭  饭 ०  ० ॠ ᮢ.  22-1  ᪫祭  ० ॠ ᮢ.
 22-1. ᪫祭  뢠

Ŀ
 ᠭ                  筨         뢠-   
                                ᪫祭          ,
                                                   맢     
                                                     ᪫祭       
Ĵ
        0      DIV  IDIV                       
⫠              1                              *(1)         
窠 ⠭       3      INT                             
९         4      INT                            
ॢ襭 ࠭-    5      BOUND                            
  ᨢ                                                    
ࠧ饭        6     १ࢨ஢                        
 樨                樨  -                     
                           쭮 ᯮ짮                      
                           䨪 LOCK                              
ன⢮ -    7      ESC  WAIT                     
                                                                
 ⪠        8                                         
१ࢨਢ       9                                                
ࠧ襭        10     JMP,CALL,IRET,                   
ᥣ ﭨ          뢠  ᪫-                        
                     祭                                      
 -     11     ,                    
                        ᥣ                          
᪫祭         12    室 樨                         
⥪                      ⥪  ࠭                          
                           ᮢ                                    
               13    ࠭                        
                           室  ࠭ -                     
                           ᮢ                            
                           ॢ蠥 15                           
 ࠭        14     ,                    
                           頥                          
१ࢨ஢       15                                               
訡 ᫥    16     ESC  WAIT          (2)        
 饩 窮                                                    
ணࠬ -  0-255   INT n                           
                                                                 


(1) -  ᪫祭 ⫠ 㪠뢠  , ᮤঠ 訡, 㣨  ᫥   . ࠡ稪 ᪫祭  ஢ ॣ DR6 ।,  ந諮. (2) - 訡 ᫥  饩 窮 뤠 ᮮ饭    ESC  WAIT,  ᫥  ESC,  ᣥ஢ 訡.

22.7 ⫨   8086.

 ᭮, 㦥  ROM, ணࠬ ᯥ祭, ࠧࠡ⠭  ஢ 8086, 8088, 80186,  80188 㤥 ४⭮ ࠡ  ० ॠ ᮢ  i486.  ਢ ᯨ᮪ ⥫ ࠧ稩  ணࠬ 믮塞묨   8086  i486.
1.  ᫠ ⠪⮢  믮 .
 i486 ॡ  믮 設⢠   設 ⠪⮢ 祬  8086.
   ⨢ ⢨  :
- ࠢ ன⢠ /뢮,  室 প  ﬨ /뢮. -  ࠡ⪥ ஢ থ  ணࠬ, ᯮ ࠫ ࠡ  8086  ᮯ 8087.
2. ᪫祭 訡  㪠뢠   DIV.
᪫祭 訡    i486 ᥣ ࠭ 祭 CS:IP, 㪠뢠饥  訡 .    8086 CS:IP 㪠뢠  ᫥ .
3.  権, ।   8086.
 権,   ।   8086,  ᪫祭 ।  樨  믮    ,    80286, 386 DX  i486.
4. 祭 뢠  PUSH SP.
  PUSH SP  i486 頥  ⥪ 㣮,   8086 祭.  i486  祭 ॣ SP ।  㬥襭   樨 ᥭ;  8086  祭 ॣ SP ᫥  㬥襭; ᫨ ᥭ 祭 ,   PUSH SP  ᫥⥫쭮   :
PUSH BP MOV BP, SP XCHG BP, [BP]
 ணࠬ 㭪樮   i486   PUSH SP  8086.
5.   横᪨ ᤢ , 祬  31 .  i486 ᪨  稪 e   横᪨ ᤢ   ஬  .   MOD 32 ࠭稢 稭 ᤢ 31 ⮬ , ᫥⥫쭮, ࠭稢 প ⪫  뢠, 饥 砭 믮 .
6. 䨪 㤫.
  i486 ⠭ ࠭祭  15    . ⢥  ८ ⮣ ࠭祭 - ᯮ짮 ।  䨪ᮢ 㤫. ᫨ ࠭祭 襭,  ᪫祭 饩 .   8086  ࠭祭   .
7. ࠭  ⭮⥫ ᮬ 0  ॢᨢ訬 65.535.
  8086 ⪠ 饭  ࠭    祭 ⭮⥫쭮  65.535 ( ਬ, 뫪 ᫮  MOV  ⭮⥫쭮  65.535)  ⭮⥫쭮  0 (ਬ, ᥭ  ⥪ ᫮  PUSH,  SP = 1) ਢ  横᪮  ⭮⥫쭮    65.536.  i486     ᪫祭: ᪫祭 饩 , ᫨ ᥣ  ᥣ⮬  (..  樨 ᥣ 뫨 ᯮ짮 ॣ CS, DS, ES, FS  GS )  ᪫祭 ⥪, ᫨ ᥣ  ᥣ⮬ ⥪ (.. ᫨  ᯮ짮 ॣ SS).
8. 室 १ ⭮⥫  65.535  ᫥⥫쭮 믮.
  8086 ᫨ ந襫 室 १ ⭮⥫  65.535  ᫥⥫쭮 믮 , ந 롮ઠ  ᫥饩   ⭮⥫쭮  0 ⮣  ᥣ.  i486  ⮬ 砥  ᪫祭 饩 .
9. ࠭祭 ᯮ짮 䨪 LOCK.
䨪 LOCK  ᮮ⢥騩  ᨣ 設 ᫥ ᯮ짮 ⮫쪮  ।饭 뢠 権 뫪  㣨 宧異 設. 䨪 LOCK  ᯮ짮 ⮫쪮  ᫥묨   i486,    . ᪫祭 ।  樨 㤥 १⮬ ᯮ짮 䨪 LOCK । 묨 㣨    , 塞묨 ,    믮  ,  .
-  ஢ન   ⮢ BTS, BTR  BTC.
-   XCHG, XADD,  CMPXCHG (䨪 LOCK  㦥   XCHG ).
- O࠭ 䬥᪨  ᪨  INC, DEC, NOT, NEG.
- 宯࠭ 䬥᪨  ᪨  ADD, ADC, SUB, SBB, AND, OR , XOR.
10. 蠣 ணࠬ ࠡ⪨ 譨 뢠.
ਮ⭮ 蠣 ᪫祭   i486 ⫨砥  ਮ⭮ ᪫祭   8086. ᥭ  ।० ࠡ 譥 뢠 蠣 ࠧ  砥,  뢠   蠣 ணࠬ.   i486 蠣 ᪫祭  ਮ , 祬  譥 뢠.    INT  ᪫祭  ⠢   i486 蠣  ணࠬ ࠡ⪨ 뢠.
11. ᪫祭  IDIV   80H  8000H.
 i486  ᨬ쭮 ⥫쭮 ᫮  ⢥ ⭮   IDIV.  8086  ⮣  ᪫祭 訡 .
12.   ⥪.
⠭ ࠭ 䫠  PUSHF, 뢠ﬨ  ᪫祭ﬨ ⫨砥   ⠭   8086    12  15 .  8086 뢠   1.   i486  ० ॠ ᮢ  15  ᥣ 0,     14  12 ࠭ ।騥 祭.
13. ࠡ⪠ 뢠 NMI.
᫥ 祭 ஬ i486 ଠ樨  뢠 NMI, 뢠 NMI ᪨  ६ 믮  IRET.
14. 訡 ᫥  饩 窮 뢠 ᪫祭 訡 ᫥  饩 窮.
  i486 ᪫祭 ᫥  饩 窮 뢠 ணࠬ ࠡ⪨ ᪫祭 訡 ᫥  饩 窮. ᫨   8086 ᯮ짮 㣮 ᪫祭  뢠 ᮯ 8087,    ᪫祭  뢠 ணࠬ ࠡ稪 ᪫祭 訡 ᫥  饩 窮.  i486 뤠 ᨣ, ,   譥 , ন । 짮⥫ ᮮ饭  訡  樨 堭 뢠, ᯮ㥬  設⢥ ᮭ ஢.
15. ணࠬ ࠡ⪨ ᫮ ᪫祭  ᪠ 䨪.
  i486 祭 ॣ஢ CS  IP, ࠭  ࠡ⪨ ᪫祭 ᫥  饩 窮, 㪠뢠   䨪 ।  ESC.   8086 ࠭ 祭 CS:IP 㪠뢠  ᠬ  ESC.
16. ன⢮ ᫥  饩 窮  ᯮ ஫ 뢠.
 訡 ᫥  饩 窮  i486  室 १ ஫ 뢠 ( ᨣ INT ᮯ 8087 ᯮ ஫ 뢠).  ॡ 㤠    ணࠬ ࠡ⪨ ᪫祭 訡 ᫥  饩 窮, ᫨ ᯮ ஫ 뢠.  i486 뤠 ᨣ, ,   譥 , ন । 짮⥫ ᮮ饭  訡  樨 堭 뢠, ᯮ㥬  設⢥ ᮭ ஢.
17.   ஢ 뢠.
  i486  ᥬ ᪫祭,    8086 ஢ ⮫쪮  ணࠬ 訡.    ணࠬ ࠡ⪨ ᪫祭,  ࠪ  ᪫祭  ࠢ 樨.  ⥫ ணࠬ   ⢥ ࠧ  ணࠬ  8086, ᪮ 筮 ⠪ 뢠  .   ணࠬ    祭  ணࠬ ᯥ祭  8086, ᪮  뫨 १ࢨ஢ ମ Intel(R).   22-2 뢠  ᪫祭  i486.
 22-2.  ᪫祭 業ࠫ쭮  i486(TM)

Ŀ
                            ᠭ                              
Ĵ
      5             BOUND 뫠 믮  ॣ஬, 祭   
                   ண  ॢ蠥 ⨬ 祭.             
                                                                        
      6            ⨫ १ࢨ஢  樨         
                   ᯮ짮 䨪 LOCK.                         
                                                                        
      7             믮  ESC  ⠭  EM     
                    ॣ CR0,   믮  WAIT      
                    ⠭  S.                               
                                                                        
      8             ஢  室  IDT  室  ࠭   
                   ᥣ.  砥,  ࠭,              
                   ⠭  㬮砭, 뫠 .           
                                                                        
     12            樨  ⥪, ਢ騥  室  ࠭  
                   ᮢ.                                             
                                                                        
     13            樨 ( 樨  ⥪), ॢ騥    
                    ࠭ ᥣ, , 믮 ,
                   ந襫 室  ࠭ ᮢ (0FFFFH),      
                    ॢ騥 15 .                         
                                                                        
     17            ஢ઠ ࠢ.  ந室  ।- 
                   쭮 ⠭ १ࢨ஢ ⮢.             


18.   i486 ᪫祭 ଠ ᫠ ࠡ뢠  㣮, 祬  ⥬᪮ ᮯ 8087.   16.2.4   ⠫쭮 .
19. ᪨  १  .
᭮ ࠭⢮  i486    横᪨  १    ० ॠ ᮢ. ᫨ 横᪨ ᤢ 饭,   ஢   譥 ᨣ A20M#. ਬ,  祭 ᥫ 0FFFFH  ᬥ饭 0FFFFH ᯮ⥫  㤥 10FFEFH (1  + 65.519 ).  8086,  ନ    20  १ ᠬ 訩 ,  "ᤢ"    0FFEFH. ,  i486  १   ᫨ A20#  ஢.
20. ⪫   ।   設.
 ⫨稥  ஢ 8086  80286  筮 ࠬ 386  i486 ⢥砥   ࠢ 設  㣨   楢 ⠪,  ஫ DMA,  뫪 ⥩ ஢ ࠭, ਬ  ᫮, ࠧ  ᫮.  ⫨稥  ஢ 386  i486 ॠ   ।   設  ६ 樠樨 ᫥ .
21. ࠭ ⠡ ஢ 뢠.
 LIDT  ᯮ짮  ⠭ ࠭ ࠧ ⠡ ஢ 뢠. ᫨ 뢠  ᪫祭 ⠥    ࠭楩, ந ⨥ ⥬. (  8086  ०  ⥬).
22. ᫨   ⥪ ந 横᪨ ᤢ ࠭ ,  ந ⨥ ⥬. (  8086  ०  ⥬).

22.8 ⫨   80286  ० ॠ ᮢ.

 ⫨,    ० ॠ ᮢ  i486  ० ॠ ᮢ  80286,     믮  ணࠬ   80286 ஬, , 楤 樠樨 ⥬.

22.8.1 ஢ 設.

  80286 㭪 ஢ 設 ॠ , 祬   i486. ணࠬ,  ᯮ ᯥ᪨   80286  ஢ ,   ७   i486 ࠡ ࠢ쭮.
䨪 LOCK  ᮮ⢥騩  ᨣ 設 ᫥ ᯮ짮 ⮫쪮  ।饭 뢠 権 뫪  㣨 宧異 設. 䨪 LOCK  ᯮ짮 ⮫쪮  ᫥묨   i486,    . ᪫祭 ।  樨 㤥 १⮬ ᯮ짮 䨪 LOCK । 묨 㣨    , 塞묨 ,    믮  ,   (.. ࠭-ਥ  ॣ ).
-  ஢ન   ⮢ BTS, BTR  BTC.
-   XCHG, XADD,  CMPXCHG (䨪 LOCK  㦥   XCHG ).
- O࠭ 䬥᪨  ᪨  INC, DEC, NOT, NEG.
- 宯࠭ 䬥᪨  ᪨  ADD, ADC, SUB, SBB, AND, OR , XOR.
 ஢ ࠭ ஢ ⮫쪮   ।  ࠭ ਥ,   ஢    . ਬ, ⨯ 䨣樨 ஢ 8086  80286   䨧᪮ ࠭⢮ .

22.8.2 ᯮ ⮢ 祩.

  i486 ⮢ 祩   0FFFFFFF0H (⮨  16   ࠭ 32-ࠧ來 ᭮ ࠭⢠).   80286  ⢥ ⮢ ᯮ 祩  ᮬ 0FFFFF0H (⮨  16   ࠭ 24-ࠧ來 ᭮ ࠭⢠). 設⢮ ணࠬ 樠樨  80286, ᠭ  , 㤥 ࠡ ࠢ쭮.    ਤ ८। 譨 ᨣ    31-20.

22.8.3 砫 祭 ॣ஢ 饣 祭.

  i486 ᫥ १᪠  ॣ 饣 祭  ᮤঠ  祭, 祬   80286. ஡ ᮢ⨬, ,  , ⠪  祭  ॣ஢   80286, ᫥ १᪠,  ।. ᫨   ᠬ஢  i486  १㧪 㦨 訡, ᮤন ॣ EAX ਭ 㫥 祭.  EDX ᮤন  䨪樨 (component)  ⨯ ய (revision identifier).   ஡ ଠ樨 ᬮ  10.

22.8.4  ।   設.

 ⫨稥  ஢ 8086  80286  筮 ࠬ 386  i486 ⢥砥   ࠢ 設  㣨   楢 ⠪,  ஫ DMA,  뫪 ⥩ ஢ ࠭, ਬ  ᫮, ࠧ  ᫮.

22.8.5 O⫨ ⥬᪮ ᮯ.

  i486 ᪫祭 ଠ ᫠ ࠡ뢠 , 祬  ⥬᪮ ᮯ 80287.   16.2.4   ⠫쭮 .
 MT ॣ MSW ᥣ   ⠭.   ॣ MSW  , ⠪    ⠭.  ய i486 ᪫祭 9    .

22.9 ⫨   386(TM) DX  ० ॠ ᮢ

 ० ॠ ᮢ   㯭   ᮡ ⥪, 訥   i486.     設⢮ ணࠬ, ᪮   権 ࠭ ஢ ᪫祭 ।  樨.  䫠   ॣ஢ ࠭ 뫨 १ࢨ஢, ⮬    ணࠬ,  ᯮ짮   ࠢ쭮.
 ० ॠ ᮢ 뫮  ஢.  ᨬ쭮 ந⥫쭮 ணࠬ 樠樨  ᯮ짮 ஢.

22.10 ணࠬ । ⨯ .
᫥騩 ணࠬ ࠣ (ᬮ 㭮 22-2)   ᯮ짮  । ஢ 8086, 80286,  386.  ணࠬ ࠣ ।祭  ਪ ணࠬ, 믮塞  ० ॠ ᮢ.

Ŀ
   is_386(TM)         proc         near                                
   ;                                                                   
   ;   ॣ AX 頥 ⨯ .                        
   ;                                                                   
                                                                       
     pushf               ; ࠭ ॣ FLAG  ⥪              
     pop bx              ;  FLAG    BX                       
     and bx, 0fffh       ;   12 - 15                       
     push bx             ;   ⥪                            
     popf                ; ⥭ ᫮  ⥪  ॣ FLAG        
     pushf               ;  ॣ FLAG  ⥪              
     pop ax              ;  ⭮ ᫮ ॣ FLAG        
                                                                       
     and ax, 0f000h      ; ᫨  12 - 15 ⠭,            
     cmp ax, 0f000h      ;   8086                          
     jz  is_8086         ;                                             
                                                                       
     or  bx, 0fffh       ; ஡㥬 ⠭  12-15 ॣ FLAG 
     push bx             ;   ⥪                            
     popf                ; ⥭ ᫮  ⥪  ॣ FLAG        
     pushf               ;  ॣ FLAG  ⥪              
     pop ax              ;  ⭮ ᫮ ॣ FLAG        
                                                                       
     and ax, 0f000h      ; ᫨  12 - 15 饭,             
     jz  is_80286        ;  80286                             
                                                                       
 is_80386:               ;    386 DX                  
     mov ax, 386h        ; ⠭ ਧ  386 DX         
     jmp done                                                          
 is_80286:                                                             
     mov ax, 286h        ; ⠭ ਧ  80286          
     jmp done                                                          
 is_8086:                                                              
     mov ax, 86h         ; ⠭ ਧ  8086           
                                                                       
 done:                                                                 
     popf                ; 稬 ⭮ ॣ FLAG                
     ret                                                               
                                                                       
 is_386     endp                                                       


 㭮 22-2. । ⨯   ० ॠ ᮢ
