
MOV - 뫪 

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|88 /r     MOV r/m8,r8      1      뫪 ⮢ ॣ |
|                                    r/m                   |
|89 /r     MOV r/m16,r16    1      뫪 ॣ - ᫮   |
|                                   ᫮ r/m                  |
|89 /r     MOV r/m32,r32    1      뫪 ॣ - |
|                                  ᫮   ᫮ r/m    |
|8A /r     MOV r8,r/m8      1      뫪  r/m          |
|                                   ⮢ ॣ           |
|8B /r     MOV r16,r/m16    1      뫪 ᫮ r/m          |
|                                   ॣ - ᫮            |
|8B /r     MOV r32,r/m32    1      뫪  ᫮ r/m |
|                                   ॣ -  ᫮    |
|8C /r     MOV r/m16,Sreg   3/3    뫪 ᥣ⭮        |
|                                  ॣ  ᫮ r/m         |
|8E /r     MOV Sreg,r/m16   3/9    뫪 ᫮ r/m          |
|                                   ᥣ ॣ         |
|A0        MOV AL,moffs8    1      뫪              |
|                                  (ᥣ:ᬥ饭)  AL      |
|A1        MOV AX,moffs16   1      뫪 ᫮             |
|                                  (ᥣ:ᬥ饭)  AX      |
|A1        MOV EAX,moffs32  1      뫪  ᫮    |
|                                  (ᥣ:ᬥ饭)  EAX     |
|A2        MOV moffs8, AL   1      뫪 AL                |
|                                  (ᥣ:ᬥ饭)           |
|A3        MOV moffs16,AX   1      뫪 AX                |
|                                  (ᥣ:ᬥ饭)           |
|A3        MOV moffs32,EAX  1      뫪 EAX               |
|                                  (ᥣ:ᬥ饭)           |
|B0 + rb   MOV reg8,imm8    1      뫪 ।⢥  |
|                                    ॣ              |
|B8 + rw   MOV reg16,imm16  1      뫪 ।⢥  |
|                                  ᫮  ॣ              |
|B8 + rd   MOV reg32,imm32  1      뫪 ।⢥  |
|                                   ᫮  ॣ     |
|C6        MOV r/m8,imm8    1      뫪 ।⢥  |
|                                     r/m             |
|C7        MOV r/m16,imm16  1      뫪 ।⢥  |
|                                  ᫮  ᫮ r/m            |
|C7        MOV r/m32,imm32  1      뫪 ।⢥  |
|                                   ᫮              |
|                                    ᫮  r/m         |

ਬ砭: moffs8, moffs16  moffs32   ⮣ ᬥ饭 ⭮⥫쭮  ᥣ. 8, 16  32  ࠧ . ਡ ࠧ   । ࠧ ᬥ饭, 16  32 .
 
DEST <- SRC;
ᠭ
 MOV  ன ࠭  .
᫨ ࠭ 祭  ᥣ ॣ (DS, ES, SS  ..),   ॣ ⠪ 㦠   ਯ.   ॣ    ਯ୮ ⠡, ᮮ⢥饣 ᥫ. ⮩ ᥫ (祭 0000-0003)   㦥  ॣ DS  ES,  뢠 ᪫祭; , ᯮ짮 ॣ஢ DS  ES 맮 ᮡ  #GP(0),  뫪    ந.
 MOV 뫪  SS 頥  뢠   믮 ᫥饩  (  ᥣ   MOV  ESP).
㧪 ᥣ⭮ ॣ  饭 ० ਢ  ᯥ樠 ஢ઠ  ⢨,  ᠭ  ᫥饬 ⨭:

IF SS 㦥;
THEN
  IF ᥫ ⮩ THEN #GP(0);
FI;
   ᥫ        ࠭    ਯ୮
      ⠡  #GP(ᥫ);
  RPL ᥫ   ࠢ CPL  #GP(ᥫ);
 AR   ᥣ ,  㯭  
       #GP(ᥫ);
  DPL   AR   ࠢ CPL  #GP(ᥫ);
         ⬥祭      騩  
    #SS(ᥫ);
  㧪 SS ᥫ஬;
  㧪 SS ਯ஬;
FI;
IF DS, ES, FS  GS 㦥 - ᥫ஬;
THEN
   ᥫ        ࠭    ਯ୮
      ⠡  #GP(ᥫ);
   AR   ᥣ    ᥣ,
      㯭  ⥭  #GP(ᥫ);
  IF ᥣ   -ଭ  ᥣ
  THEN  RPL,  CPL     ࠢ DPL   AR;
  ELSE #GP(ᥫ);
  FI;
         ⬥祭      騩  
    #NP(ᥫ);
  㧪 ᥣ⭮ ॣ ᥫ஬;
  㧪 ᥣ⭮ ॣ ਯ஬;
FI;
IF DS, ES, FS  GS 㦥  ᥫ஬;
THEN
  㧪 ᥣ⭮ ॣ ᥫ஬;
  ⪠  ⮢୮ ਯ;
FI;

塞 䫠

᪫祭 饭 ०

#GP, #SS  #NP, ᫨ 㦠 ᥣ ॣ; #GP(0),
᫨ 祭  ᥣ, 㯭  ;
#GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭
  ᥣ CS, DS, ES, FS  GS; #SS(0)  砥
⨬   ᥣ SS; #PF( ᡮ)  砥
࠭筮 ᡮ; #AC  ࠢ 뫪   
⥪饬 ஢ ਢ஢, ࠢ 3.

᪫祭 ० ॠ ᮢ

뢠 13, ᫨ -  ࠭  
࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.

᪫祭 㠫쭮 ० 8086

  ᪫祭,    ० ॠ ᮢ: #PF (
ᡮ)  ࠭ ᡮ. #AC  ࠢ 뫪 
  ⥪饬 ஢ ਢ஢, ࠢ 3.


MOV - 뫪   ᯥ樠 ॣ   

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|0F 22 /r  MOV CR0,r32      16     뫪 (ॣ)        |
|                                  ࠢ騩 ॣ          |
|0F 20 /r  MOV r32,CR0/     4      뫪 (ࠢ饣 ॣ-|
|              CR1/CR2             )  (ॣ)            |
|0F 22 /r  MOV CR2/CR3,r32  4      뫪 (ॣ)        |
|                                  (ࠢ騩 ॣ)        |
|0F 21 /r  MOV r32,DR0 - 3  10     뫪 (⫠筮 ॣ- |
|                                  )  (ॣ)            |
|0F 21 /r  MOV r32,DR6/DR7  10     뫪 (⫠筮 ॣ- |
|                                  )  (ॣ)            |
|0F 23 /r  MOV DR0 - 3,r32  11     뫪 (ॣ)        |
|                                  (⫠ ॣ)         |
|0F 23 /r  MOV DR6/DR7,r32  11     뫪 (ॣ)        |
|                                  (⫠ ॣ)         |
|0F 24 /r  MOV r32,TR4/TR5/ 4      뫪 (⮢ ॣ-   |
|              TR6/TR7             )  (ॣ)            |
|0F 26 /r  MOV TR4/TR5/TR6/        뫪 (ॣ)         |
|              TR7,r32              (⮢ ॣ)         |
|0F 24 /r  MOV r32,TR3      4      뫪 (⮢ ॣ-   |
|                                  3)  (ॣ)           |
|0F 26 /r  MOV TR3,r32      6      뫪 (ॣ)         |
|                                   (⮢  ॣ3)       |

 
DEST <- SRC;
ᠭ
    MOV ࠭  㦠 ᫥騥 ᯥ樠 ॣ / ॣ஢ 饣 祭:

     - ࠢ騥 ॣ CR0, CR2  CR3

     - ⫠ ॣ DR0, DR1, DR2, DR3, DR6  DR7

     - ⮢ ॣ TR3, TR4, TR5, TR6  TR7

 ⨬  ᥣ ᯮ 32-ࠧ來 ࠭, ᨬ  ਡ ࠧ ࠭.
塞 䫠
 OF, SF, ZF, AF, PF  CF ।.
᪫祭 饭 ०
#GP, ᫨ ⥪騩 ஢ ਢ஢  ࠢ 0.
᪫祭 ० ॠ ᮢ

᪫祭 㠫쭮 ० 8086
#GP(0)  ⪥ 믮 .
ਬ砭
  믮  ஢ ਢ஢ 0  ० ॠ ᮢ;  ⨢ 砥  ᪫祭 .
 reg   ModR/M ,   ᯥ樠 ॣ஢   ⥣ਨ .    mod ᥣ ࠢ 11.  r/m  騩 ॣ 饣 祭.
।  १ࢨ஢ ⠬ ᥣ   ᢮ ﭨ,    室  ।饬 뢠.

MOVS/MOVSB/MOVSW/MOVSD - 뫪   ப  ப

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|A4        MOVS m8,m8       7      뫪               |
|                                  [(E)SI]  ES:[(E)DI]         |
|A5        MOVS m16,m16     7      뫪 ᫮              |
|                                  [(E)SI]  ES:[(E)DI]         |
|A5        MOVS m32,m32     7      뫪  ᫮     |
|                                  [(E)SI]  ES:[(E)DI]         |
|A4        MOVSB            7      뫪               |
|                                  DS:[(E)SI]  ES:[(E)DI]      |
|A5        MOVSW            7      뫪 ᫮              |
|                                  DS:[(E)SI]  ES:[(E)DI]      |
|A5        MOVSD            7      뫪  ᫮     |
|                                  DS:[(E)SI]  ES:[(E)DI]      |

 

IF ( = MOVSD) OR (  ࠭ - ᫮)
THEN OperandSize <- 32;
ELSE OperandSize <- 16;
IF AddressSize = 16
THEN ᯮ짮    SI        -筨      DI   
         -祭;
ELSE (* AddressSize = 32 *)
  ᯮ짮   ESI        -筨      EDI   
         -祭;
FI;
IF ⮢ ⨯ 
THEN
  [-祭] <- [-筨];(* 祭  *)
  IF DF = 0 THEN IncDec <- 1 ELSE IncDec <- -1; FI;
ELSE
  IF OperandSize = 16
  THEN
    [-祭] <- [-筨];(*祭 ᫮*)
    IF DF = 0 THEN IncDec <- 2 ELSE IncDec <- -2; FI;
  ELSE
    [-祭] <- [-筨];(*祭
                                                 ᫮*)
    IF DF = 0 THEN IncDec <- 4 ELSE IncDec <- -4; FI;
  FI;
FI;
-筨 <- -筨 + IncDec;
-祭 <- -祭 + IncDec;

ᠭ

 MOVS    ᫮  [(E)SI]    ᫮
 ES:[(E)DI]. ࠭ 祭  ᮢ  ॣ
ES: ८। ᥣ  ࠭ 祭 .
८। ᥣ   ᯮ짮 
࠭-筨 (室 ࠭):  㬮砭
ਭ ॣ DS.

 ࠭ 筨  祭 । ᪫⥫쭮 ᮤন ॣ஢ (E)SI  (E)DI. । 믮  MOVS   㧨  ॣ (E)SI  (E)DI ࠢ 祭.  MOVS, MOVSW  MOVSD  ᨭ  MOVS  ࠡ  ⠬, ᫮  묨 ᫮, ᮮ⢥⢥.

᫥ 뫪  ந室 ⮬᪮ த ॣ஢ (E)SI  (E)DI. ᫨ 䫠 DF ࠢ 0 (뫠 믮  CLD),  믮 ६ ॣ஢; ᫨  䫠 DF ࠢ 1 (뫠 믮  STD),  믮 ६ ॣ஢.  ६  ६  , ᫨ 믮﫠 뫪 ,  2, ᫨ 믮﫠 뫪 ᫮,   4 -  ᫮.

 MOVS  ।⢮ 䨪 REP  뫪 ࠧ CX ⮢  ᫮. ஡  ⮬ .  ᠭ 䨪 REP.

塞 䫠

᪫祭 饭 ०

#GP(0), ᫨ 祭  ᥣ, 㯭  ; #GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ. #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

MOVSX - 뫪  ७ 

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|0F BE /r  MOVSX r16,r/m8   3/3    뫪   ᫮      |
|                                   ७          |
|0F BE /r  MOVSX r32,r/m8   3/3    뫪       |
|                                  ᫮  ७    |
|0F BF /r  MOVSX r32,r/m16  3/3    뫪 ᫮      |
|                                  ᫮  ७    |

 
DEST <- SignExtend(SRC);
ᠭ
 MOVSX 뢠 ᮤন ᯮ⥫쭮   ॣ    ᫮,   祭   ᮮ⢥⢨  ਡ⮬ ࠧ ࠭  (16  32 )  뢠 १  ॣ 祭.

塞 䫠

᪫祭 饭 ०
#GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ. #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

MOVZX - 뫪  ७ 㫥

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|0F B6 /r  MOVZX r16,r/m8   3/3    뫪   ᫮      |
|                                   ७ 㫥          |
|0F B6 /r  MOVZX r32,r/m8   3/3    뫪       |
|                                  ᫮  ७ 㫥    |
|0F B7 /r  MOVZX r32,r/m16  3/3    뫪 ᫮      |
|                                  ᫮  ७ 㫥    |

 
DEST <- ZeroExtend(SRC);
ᠭ
 MOVZX 뢠 ᮤন ᯮ⥫쭮   ॣ    ᫮,   祭 㫥  ᮮ⢥⢨  ਡ⮬ ࠧ ࠭  (16  32 )  뢠 १  ॣ 祭.


塞 䫠

᪫祭 饭 ०
#GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ. #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

MUL -    AL  AX

|         ᫮      ᠭ                         |
|樨           ⠪⮢                                    |
|                   横                                      |
|                                                               |
|F6 /4   MUL AL,r/m8   13/18,13/18             |
|                                   (AX <- AL *  r/m)       |
|F7 /4   MUL AX,r/m16  13/26,13/26             |
|                                   (DX:AX <- AX * ᫮ r/m)   |
|F7 /4   MUL EAX,r/m32 13/42,13/42             |
|                                   (EDX:EAX <- EAX *           |
|                                    ᫮ r/m)          |

ਬ砭:  i486 ᯮ  㬭 ⨯ "early-out". ᪮ ᫮ ⠪⮢ 横   樨  饣   ⨬㥬 ⥫. ⨬ 믮   ⥫, ⠪   ⥫ 祭. ᫥⢨  ⬠    ᨬ ⢠ ⠪⮢ 横.  ᫥ 䠪᪮ ᫠ ⠪⮢ 横 ᯮ ᫥ 㫠:
᪮ ᫮ ⠪⮢ 横 = ᫨ m <> 0  max(襥 楫 ᫮, 襥 (log |m|)) + 6 横. 2 ᪮ ᫮ ⠪⮢ 横 = ᫨ m = 0  9 横.
( m  ⥫)
 

IF  ⮢ ࠧ
THEN AX <- AL * r/m8
ELSE (*  ࠧ஬  ᫮   ᫮ *)
  IF OperandSize = 16
  THEN DX:AX <- AX * r/m16
  ELSE (* OperandSize = 32 *)
    EDX:EAX <- EAX * r/m32
  FI;
FI;

ᠭ
 IMUL 믮 㬭  .  ⢨   ࠧ ࠭ ᫥騬 ࠧ:
- ࠭ ࠧ஬   㬭  祭 AL; १ 頥  ॣ AX. ᫨ 祭 AH ࠢ 0,  䫠 CF  OF ;  ⨢ 砥  ⠭.
- ࠭ ࠧ஬  ᫮ 㬭  祭 AX; १ 頥   ॣ஢ DX:AX.  DX ᮤন  ⮬ 訥 16 ⮢ ந. ᫨ 祭 DX ࠢ 0,  䫠 CF  OF ;  ⨢ 砥  ⠭.
- ࠭ ࠧ஬   ᫮ 㬭  祭 EAX; १ 頥   ॣ஢ EDX:EAX.  EDX ᮤন  ⮬ 訥 32  ந. ᫨ 祭 EDX ࠢ 0,  䫠 CF  OF ;  ⨢ 砥  ⠭.
塞 䫠
᫨   १ ࠢ 0,  䫠 OF  CF ;  ⨢ 砥  ⠭; 䫠 SF, ZF, AF, PF  CF ।.
᪫祭 饭 ०
#GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

NEG - 栭    

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|F6 /3     NEG r/m8        1/3     栭      |
|                                    r/m               |
|F7 /3     NEG r/m16       1/3     栭      |
|                                   ᫮ r/m               |
|F7 /3     NEG r/m32       1/3     栭      |
|                                    ᫮ r/m      |

 

IF r/m = 0 THEN CF <- 0 ELSE CF <- 1; FI;
r/m <- - r/m

ᠭ
 NEG 頥 祭 ॣ  ࠭  ᮮ⢥騬   . ࠭ ⠥  ,  १ 頥 ⭮  ࠭.
 CF ⠭, ᫨ ࠭  ࠢ ,  䫠 CF 頥.
塞 䫠
 CF ⠭, ᫨ ࠭  ࠢ ,  䫠 CF 頥; 䫠 OF, SF, ZF  PF ⠭  ᮮ⢥⢨  १⮬.
᪫祭 饭 ०
#GP(0), ᫨ 祭  ᥣ, 㯭  ; #GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ. #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

NOP -  樨

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|90        NOP             1        樨                 |

ᠭ
 NOP  믮  樨.  NOP  - ⮢ ,     ,     ⥪ 設,  ᪫祭 ॣ (E)IP.

 NOP ।⠢ ᮡ ᪨    XCHG (E)AX,(E)AX.

塞 䫠

᪫祭 饭 ०

᪫祭 ० ॠ ᮢ

᪫祭 㠫쭮 ० 8086


NOT - 栭     (ࠧ來 )

|               ᫮      ᠭ                   |
|樨                 ⠪⮢                              |
|                         横                                |
|                                                               |
|F6 /2     NOT r/m8        1/3       ⨢ |
|                                  祭         |
|                                   r/m                    |
|F7 /2     NOT r/m16       1/3       ⨢ |
|                                  祭         |
|                                  ᫮ r/m                    |
|F7 /2     NOT r/m32       1/3       ⨢ |
|                                  祭         |
|                                   ᫮ r/m            |

 
r/m <- NOT r/m;
ᠭ
 NOT  ࠭:  1 ⠭ 0,  .
塞 䫠

᪫祭 饭 ०
#GP(0), ᫨ 祭  ᥣ, 㯭  ; #GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ. #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

OR - ᪮ ᪫饥 

|            ᫮      ᠭ                     |
|樨              ⠪⮢                                |
|                      横                                  |
|                                                              |
|0C ib     OR AL,imm8     1    ᪮    -|
|                             ।⢥   AL          |
|0D iw     OR AX,imm16    1    ᪮    -|
|                             ।⢥ ᫮  AX          |
|0D id     OR EAX,imm32   1    ᪮    -|
|                             ।⢥  ᫮  EAX|
|80 /1 ib  OR r/m8,imm8   1/3  ᪮    -|
|                             ।⢥     r/m |
|81 /1 iw  OR r/m16,imm16 1/3  ᪮    -|
|                             ।⢥ ᫮  ᫮  r/m |
|81 /1 id  OR r/m32,imm32 1/3  ᪮    -|
|                             ।⢥  ᫮     |
|                              ᫮  r/m             |
|83 /1 ib  OR r/m16,imm8  1/3  ᪮    -|
|                             ।⢥ ७  |
|                               ᫮  r/m              |
|83 /1 ib  OR r/m32,imm8  1/3  ᪮    -|
|                             ।⢥ ७  |
|                             ᫮   ᫮  r/m     |
|08 /r     OR r/m8,r8     1/3  ᪮          |
|                             ⮢ ॣ    r/m |
|09 /r     OR r/m16,r16   1/3  ᪮          |
|                             ॣ-᫮  ᫮  r/m     |
|09 /r     OR r/m32,r32   1/3  ᪮          |
|                             ॣ- ᫮         |
|                              ᫮  r/m             |
|0A /r     OR r8,r/m8     1/2  ᪮     |
|                              r/m  ⮢ ॣ       |
|OB /r     OR r16,r/m16   1/2  ᪮    ᫮ |
|                              r/m  ॣ-᫮           |
|OB /r     OR r32,r/m32   1/2  ᪮          |
|                              ᫮  r/m  ॣ- |
|                              ᫮                   |

 

DEST <- DEST OR  SRC;
CF <- 0;
OF <- 0;

ᠭ
 OR  ᪫饥     ࠭  頥 १   ࠭.   १ ࠢ 0, ᫨  ᮮ⢥  ࠭ ࠢ 0;  ⨢ 砥  १ ࠢ 1.
塞 䫠
 CF  OF  ; 䫠 PF, SF  ZF ⠭  ᮮ⢥⢨  १⮬; 䫠 AF ।.
᪫祭 饭 ०
#GP(0), ᫨ १    ᥣ,  ண 饭 ; #GP(0)  砥 ⨬ ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; #PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
  ᪫祭,    ० ॠ ᮢ: #PF ( ᡮ)  ࠭ ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

OUT - 뢮  

|         ᫮      ᠭ                         |
|樨           ⠪⮢                                    |
|                   横                                      |
|                                                               |
|E6 ib   OUT imm8,AL  16,pm=11*/    뢮  AL  ।-|
|                     31**,vm=29         |
|E7 ib   OUT imm8,AX  16,pm=11 */   뢮 ᫮ AX  ।-|
|                     31**,vm=29         |
|E7 ib  OUT imm8,EAX  16,pm=11*/    뢮  ᫮ EAX   |
|                     31**,vm=29    ।⢥     |
|                                                    |
|EE      OUT DX,AL    16,pm=11*/    뢮  AL  ,      |
|                     31**,vm=29     ண   DX   |
|EF      OUT DX,AX    16,pm=11*/    뢮 ᫮ AX  ,      |
|                     31**,vm=29     ண   DX   |
|EF     OUT DX,EAX    16,pm=11*/    뢮  ᫮ EAX   |
|                     31**,vm=29    , ண  DX|
     ਬ砭: * ᫨ CPL <= IOPL
                ** ᫨ CPL > IOPL

 

IF (PE = 1) AND ((VM = 1) OR (CPL > IOPL))
THEN (* 㠫 ० 8086  饭  ०    CPL  >
        IOPL *)
  IF NOT I-O-Permission(SRC, width(SRC))
  THEN #GP(0);
  FI;
FI;
[DEST] <- SRC; (*ᯮ㥬 ᭮ ࠭⢮ /뢮*)

ᠭ
 IN 뫠   ᫮     ࠭ ॣ (AL, AX  EAX)  室 ,  ண   ࠭.      0  65535 믮 ⥬ 饭    ॣ DX  ᯮ짮  OUT  ॣ஬ DX  ⢥ ࢮ ࠭. ᫨  ᮤন 䨪 쬨-⮢ ,  祭  㫥  16 ⮢.
塞 䫠

᪫祭 饭 ०
#GP(0), ᫨ ⥪騩 ஢ ਢ஢  (.. ਢ஢ ) ஢ ਢ஢ /뢮 (IOPL)  ᫨   ᮮ⢥ ⮢ ࠧ襭 /뢮  TSS ࠢ 1.
᪫祭 ० ॠ ᮢ

᪫祭 㠫쭮 ० 8086
 #GP(0), ᫨   ᮮ⢥ ⮢ ࠧ襭 /뢮  TSS ࠢ 1.

OUTS/OUTSB/OUTSW/OUTSD  - 뢮 ப  

|         ᫮      ᠭ                         |
|樨           ⠪⮢                                    |
|                   横                                      |
|                                                               |
|6E     OUTS DX,r/m8  17,pm=10*/    뢮  [(E)SI]  , |
|                     32**,vm=30      DX               |
|6F     OUTS DX,r/m16 17,pm=10*/    뢮 ᫮ [(E)SI]  , |
|                     32**,vm=30      DX               |
|6F     OUTS DX,r/m32 17,pm=10*/    뢮  ᫮ [(E)SI]|
|                     32**,vm=30     ,   DX       |
|6E     OUTSB         17,pm=10*/  뢮  DS:[(E)SI]  ,|
|                     32**,vm=30      DX               |
|6F     OUTSW         17,pm=10*/  뢮 ᫮ DS:[(E)SI]  ,|
|                     32**,vm=30      DX               |
|6F     OUTSD         17,pm=10*/  뢮 . ᫮ DS:[(E)SI] |
|                     32**,vm=30     ,   DX       |

     ਬ砭: * ᫨ CPL <= IOPL
                ** ᫨ CPL > IOPL

 

IF AddressSize = 16
THEN ᯮ짮 SI  -筨;
ELSE (* AddressSize = 32 *)
     ᯮ짮 ESI  -筨;
FI;

IF (PE = 1) AND ((VM = 1) OR (CPL > IOPL))
THEN (* 㠫 ० 8086  饭  ०    CPL  >
        IOPL *)
  IF NOT I-O-Permission(DEST, width(DEST))
  THEN #GP(0);
  FI;
FI;
IF  ⮢ ⨯
THEN
  [DX] <-[-筨];  (*    ᭮
      ࠭⢮ /뢮 ᮣ᭮ DX *)
  IF DF = 0 THEN IncDec <- 1 ELSE IncDec <- -1; FI;
FI;
IF OperandSize = 16
THEN
  [DX] <- [-筨];  (*  ᫮  ᭮
      ࠭⢮ /뢮 ᮣ᭮ DX *)
  IF DF = 0 THEN IncDec <- 2 ELSE IncDec <- -2; FI;
FI;
IF OperandSize = 32
THEN
  [DX] <- [-筨] <- [DX];  (*   ᫮
       ᭮ ࠭⢮ /뢮 ᮣ᭮ DX *)
  IF DF = 0 THEN IncDec <- 4 ELSE IncDec <- -4; FI;
FI;
-筨 <- -筨 + IncDec;


ᠭ
 OUTS 뫠   , ᫮   ᫮ ,  ॣ஬ -筨   뢮, 㥬 ॣ஬ DX. ᫨ ਡ ࠧ     ࠢ 16 ⠬,   ⢥ ॣ -筨 ᯮ ॣ SI;  ⨢ 砥,  ਡ ࠧ  ࠢ 32 ⠬, ॣ஬ -筨  ESI.
 OUTS      ।⢥ 祭.   ᮢ 祭  ॣ DX. । 믮  OUTS  DX   㦥 ࠢ쭮 祭.
 筨  । ᮤন ॣ  筨. । 믮  OUTS  ॣ  筨   㦥 ࠢ쭮 祭 .
᫥ 믮 뫪 ॣ  筨 ᮮ⢥⢥ ࠧ ⮬᪨ த. ᫨ 䫠 DF ࠢ 0 (뫠 믮  CLD),  ந室 ६ ॣ; ᫨ 䫠 DF ࠢ 1 (뫠 믮  STD),  ந室  ६. ६  ६ ॣ ࠢ 1  뢮 , 2  뢮 ᫮  4  뢮  ᫮.
 OUTSB, OUTSW  OUTSD -  ᨭ  OUTS, ࠡ騥  ⮬, ᫮   ᫮, ᮮ⢥⢥.  OUTS  ।⢮ 䨪 REP  뢮 , ࠢ CX ⮢  ᫮.   ᠭ   REP.
塞 䫠

᪫祭 饭 ०
#GP(0), ᫨ ⥪騩 ஢ ਢ஢ ᫥  ஢ ਢ஢ /뢮 (IOPL)  ᫨   ᮮ⢥ ⮢ ࠧ襭 /뢮  TSS ࠢ 1. ᯮ⥫쭮  ࠭   ᥣ CS, DS, ES, FS  GS; #SS(0)  砥 ⨬   ᥣ SS; # PF( ᡮ)  砥 ࠭筮 ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.
᪫祭 ० ॠ ᮢ
뢠 13, ᫨ -  ࠭   ࠭⢠ ᯮ⥫ ᮢ  0  0FFFFH.
᪫祭 㠫쭮 ० 8086
 #GP(0), ᫨   ᮮ⢥ ⮢ ࠧ襭 /뢮  TSS ࠢ 1. #PF ( ᡮ)  ࠭ ᡮ; #AC  ࠢ 뫪    ⥪饬 ஢ ਢ஢, ࠢ 3.

