			    - 200 -

	 	        	 	    
	       		   	       	
              	 	            
	      	 	 	      
	 	  	 		 	  
	      	 	  	      	
              	 	            	 
              	 	            	 
	       	      	       	
	 	         	 	    








		    INTEL 80386



			    - 201 -
	   ͻ
	         SII - ४ ᫥ ᫮.
	   ͼ
			    .
		       	00110111

			    .
IF ((L ND 0Fh)  9) R (F=1) N
GIN			 (砫 ன)
  L < (L+6) ND 0Fh;	 (ந 饭    L)
   < +1;		 (᫮  1  ᫥. . ࠧ鸞  )
  F < 1;
  F < 1;
ND;
LS
GIN			 (ன  ॡ)
  F < 0;
  F < 0;
ND;
			   .
             ᯮ짮  ᫥	᫮
  ࠧ鸞  㯠  筮  -      ᥫ
(㯠 筮 -  ᫠:   
 ᮤন  ࠧ 筮  -  筮  ᫠).  
  ।⢥  ᫥  믮  樨	᫮
 㯠 ࠧ鸞, 稭, 筮,    ᫥
饣   ࠧ鸞.   ᫨    १    ᫮	
㯠	祭   訬   9,   	 	뢠
ᮮ⢥饥  饭  筮  -  筮   ࠧ鸞   
ॣ L  ६  ᫥騩  騩  㯠
筮 -  ࠧ ( 襩  ॣ ).
.
     DD   L,L   ; ⬥,  L   ਭ騬.
     
     樨  DD             横
᪫뢠饣 㯠 筮 -  祭 ࠧ
 ࠧ冷.  ⮣, ⮡ ८ࠧ L  祭  SII,
᫥  믮  R L,30h.
 .
     4 ⠪; 0.2 ,  20 .
.
     F  F -  ᠭ   ࠧ "㭪". F, SF,  ZF
 F ।. 㣨 䫠  .
   .
     .
   .
     .
    8086.
     .

			    - 202 -
	   ͻ
	   D      SII - ४ । .
	   ͼ
			    .
	   0    1
	 -------- --------
D	 11010101 00001010

			    .
L < (  10) + L;
 < 0;
			   .
             ᯮ짮  ।	
ࠧ來	㯠	筮   -      ᥫ
(㯠 筮 -  ᫠:   
 ᮤন  ࠧ 筮  -  筮  ᫠).  D
⠢ ॣ    ⮬ 	室
㯠 筮 -  ࠧ冷    L.
.
     D	   ; ன .
     DIV    ,L  ; 믮   祭 筮
		   ; १.
 .
     19 ⠪⮢; 0.95 ,  20 .
.
     SF, ZF  F ࠡ    ᮮ⢥⢨    १⮬,  
ᠭ  ਫ . F, F  F ।.  㣨  䫠
 .
   .
     .
   .
     .
    8086.
     .

			    - 203 -
	 ͻ
	 	   SII - ४ ᫥ 㬭. 
	 ͼ
			    .
	   0    1
	 -------- --------
	 11010100 00001010

			    .
 < L / 10;
L < L D 10;
			   .
         ᯮ짮 ᫥ 㬭 
ࠧ來 㯠 筮 -  ᥫ
(㯠 筮 -  ᫠:   
 ᮤন  ࠧ 筮  -  筮  ᫠). 
१  100,    	ᯠ뢠  १
 L  10, ⠢ ⭮ (訩 騩 ࠧ)  
  ⮪ (訩 ࠧ)  L.
.
     UL    L,L  ;   㯠 ᥫ.
     	   ; ᯠ १    L.
 .
     17 ⠪⮢; 0.85 ,  20 .
.
     SF, ZF  F ࠡ    ᮮ⢥⢨    १⮬,  
ᠭ  ਫ . F, F  F ।.  㣨  䫠
 .
   .
     .
   .
     .
    8086.
     .

			    - 204 -
	 ͻ
	 S	   SII - ४ ᫥ ⠭. 
	 ͼ
			    .
		       S	00111111
.
IF ((L ND 0Fh)  9) R (F=1) N
GIN			 (砫 ன)
  L < (L-6) ND 0Fh;	 (ந 饭    L)
   < -1;		 ( 1  ᫥. . ࠧ鸞  )
  F < 1;
  F < 1;
ND;
LS
GIN			 (ன  ॡ)
  F < 0;
  F < 0;
ND;
			   .
             ᯮ짮  ᫥ ⠭
  ࠧ鸞  㯠  筮  -      ᥫ
(㯠 筮 -  ᫠:   
 ᮤন  ࠧ 筮  -  筮  ᫠).  S
  ।⢥  ᫥  믮  樨  ⠭
 㯠 ࠧ鸞, 稭, 筮,    ᫥
饣   ࠧ鸞.   ᫨    १    ᫮	
㯠	祭   訬   9,   	 S	뢠
ᮮ⢥饥  饭  筮  -  筮   ࠧ鸞   
ॣ L  ६  ᫥騩  騩  㯠
筮 -  ࠧ ( 襩  ॣ ).
.
     SU   L,L   ; ⬥,  L   ਭ騬.
     S	   ; ४ L  祭 㯠
		   ; 筮 - 筮 ଠ.
     樨  SU    S         横
饣 㯠 筮 -  祭 ࠧ
 ࠧ冷.  ⮣, ⮡ ८ࠧ L  祭  SII,
᫥ S 믮  R L,30h.
 .
     4 ⠪; 0.2 ,  20 .
.
     F  F -  ᠭ   ࠧ "㭪". F, SF,  ZF
 F ।. 㣨 䫠  .
   .
     .
   .
     .
    8086.
     .

			    - 205 -
	   ͻ
	   D    ᫥ ᫮  ७ᮬ.
	   ͼ
			    .
D
				   0	      1
			      - - - - - - - -	 - - - - - - - -
 - 	      0 0 0 1 0 0 d w	 md: reg : r/m
 - 	      0 0 0 1 0 0 0 w	 md: reg : r/m
	- 	      0 0 0 1 0 0 1 w	 md: reg : r/m
।⢥ ࠭ -    1 0 0 0 0 0 s w	 md:0 1 0: r/m
-  / 
			      ।⢥ -
			      ()  ()
			      .
।⢥ ࠭ -    0 0 0 1 0 1 0 w	 ।⢥ -
-  L, ,  			 ()  ()
(⪠ )				 .
			    .
     ਭ騩 < ਭ騩 + ।騩 + F ;
       ࠭	     ࠭	   ࠭
:
     ਭ騩 < ਭ騩 + ।⢥ + F ;
       ࠭	     ࠭	      
			   .
       ࠭ 	  䫠  ७.	  
࠭ 㦨  ਥ 祭 㬬.
.
     D    , D
     ᫨ F = 1,  =  00000034h    D  =  00000052h,    
१ 믮 樨 D    	ॣ
 㤥 ᢮ 祭 00000087h,  䫠 F - 0.
 .
 - :     2 ⠪;  0.1  ,  20 .
 - :      7 ⠪⮢; 0.35 ,  20 .
	- :     6 ⠪⮢; 0.3  ,  20 .
।⢥
࠭ - :     2 ⠪;  0.1  ,  20 .
।⢥
࠭ - :      7 ⠪⮢; 0.35 ,  20 .
.
     F, F, SF, ZF, F  F ࠡ  ᠭ   .
㣨 䫠   .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 206 -
	    ͻ
	    DD	      ᫥ ᫮.
	    ͼ
			    .
DD
				   0	      1
			      - - - - - - - -	 - - - - - - - -
 - 	      0 0 0 0 0 0 d w	 md: reg : r/m
 - 	      0 0 0 0 0 0 0 w	 md: reg : r/m
	- 	      0 0 0 0 0 0 1 w	 md: reg : r/m
।⢥ ࠭ -    1 0 0 0 0 0 s w	 md:0 0 0: r/m
-  / 
			      ।⢥ -
			      ()  ()
			      .
।⢥ ࠭ -    0 0 0 0 0 1 0 w	 ।⢥ -
-  L, ,  			 ()  ()
(⪠ )				 .
.
     ਭ騩 < ਭ騩 + ।騩 ;
       ࠭	     ࠭	   ࠭
:
     ਭ騩 < ਭ騩 + ।⢥ ;
       ࠭	     ࠭	      
			   .
        ࠭.	    ࠭  㦨  
ਥ 祭 㬬.
.
     DD    , D
     ᫨ F = 1,  =  00000034h    D  =  00000052h,    
१ 믮 樨 DD    	ॣ
 㤥 ᢮ 祭 00000086h,  䫠 F - 0.

			    - 207 -
 .
 - :     2 ⠪;  0.1  ,  20 .
 - :      7 ⠪⮢; 0.35 ,  20 .
	- :     6 ⠪⮢; 0.3  ,  20 .
।⢥
࠭ - :     2 ⠪;  0.1  ,  20 .
।⢥
࠭ - :      7 ⠪⮢; 0.35 ,  20 .
.
     F, F, SF, ZF, F  F ࠡ  ᠭ   .
㣨 䫠   .
   .
     뢠 13 , ᫨      ࠭  
  䥪⨢  訩, 祬  FFFFh    ᥣ
S, DS, S,  FS,    GS.  ᫨    	࠭  
 䥪⨢  訩, 祬 FFFFh   ⥪	ᥣ
SS,   뢠 12.
   .
      ᪫⥫쭠    (13)    
 訡 0000h  ࠭, ᯮ  ᥣ  S,
DS, S, FS,  GS  砥, ᫨ ਭ騩 ࠭ ᯮ
 ᥣ,    饭,   ।騩  ࠭
ᯮ  ᥣ,  ண 饭 뢠,  ⠪
᫨   ࠭  ᯮ	  䥪⨢  
 ࠭ ᥣ. ⥪ ᪫⥫쭠   (12)  
 訡  0000h    ࠭,  ᯮ  	⥪
ᥣ,   砥, ᫨   ࠭ 
䥪⨢   ࠭ ᥣ. ⥪ ᪫⥫쭠
     訡  ᥫ  ᥣ	,  ᫨
࠭   室   ⥪	ᥣ  SS  ,  
祭   騩    .	᪫⥫쭠	
⢨   訡 ᥫ ᥣ   砥,
᫨ ࠭  室   -     ᥣ⮢  DS,
S, FS, GS,  ⬥祭    騩.    
᪫⥫쭠  	࠭  (14)	    訡
  ᮬ 訡 ࠭  ॣ R2.
    8086.
      ,        ॠ쭮  ०,    ࠢ塞  
饭 ०  ஢ ਢ 0.  ଠ  ⥪  ஢
ਢ 0  ᫥    ᪫⥫쭮  樨  (
 訡)   뢠  (    訡)    
.  12.2.    ⠪  ᪫⥫쭠      訡
࠭   訡  ﭭ        ᮬ
訡 ࠭  ॣ R2.

			    - 208 -
		ͻ
		ND		᪮ "".
		ͼ
			    .
ND
				   0	      1
			      - - - - - - - -	 - - - - - - - -
 - 	      0 0 1 0 0 0 d w	 md: reg : r/m
 - 	      0 0 1 0 0 0 0 w	 md: reg : r/m
	- 	      0 0 1 0 0 0 1 w	 md: reg : r/m
।⢥ ࠭ -    1 0 0 0 0 0 s w	 md:1 0 0: r/m
-  / 
			      ।⢥ -
			      ()  ()
			      .
।⢥ ࠭ -    0 0 1 0 0 1 0 w	 ।⢥ -
-  L, ,  			 ()  ()
(⪠ )				 .
.
     ਭ騩 < ਭ騩  ।騩 ;
       ࠭	     ࠭	   ࠭
:
     ਭ騩 < ਭ騩  ।⢥ ;
       ࠭	     ࠭	      
			   .
     믮 ⮢   ""    ࠭.
  ࠭ 㦨  ਥ १.
.
     ND    , DI
     ᫨  = 00D9034h  DI =  0800052h,      १
믮 樨 ND, ᠭ ,  = 00800010h.
 .
 - :     2 ⠪;  0.1  ,  20 .
 - :      7 ⠪⮢; 0.35 ,  20 .
	- :     6 ⠪⮢; 0.3  ,  20 .
।⢥
࠭ - :     2 ⠪;  0.1  ,  20 .
।⢥
࠭ - :      7 ⠪⮢; 0.35 ,  20 .
.
     F = 0; F =0. SF, ZF, F	  F  ࠡ    ᠭ  
 . 㣨 䫠   .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 209 -
	   ͻ
	   RL	ன RL  ᥫ.
	   ͼ
			    .
		    RL     0 0 1 1 1 1 1 1

			    .
IF RL bits(1,0) ਭ饣  RL bits(1,0) ।饣
N
  ZF < 1 ;
  RL bits(1,0) ਭ饣 < RL bits(1,0) ।饣
LS
  ZF < 0 ;
			   .
     RL  樥 饭 ०.  RL  筮
砥  ணࠬ ᯥ祭  樮  ⥬. 
ᯮ  ࠭⨨ ⮣,  ⮡	ࠬ  ᥫ  
ணࠬ    ᨫ  訩  ஢   ਢ,   祬
  뢠騩.		࠭     16-   ⭮
६ ,  筮  ࠬ஬ ᥫ.
 ࠭ RL 筮  	ॣ,  ᮤঠ騩  S
祭  ᥫ   뢠饣.      롮஬   ࠭
樮 ⥬   㢥७  RL ᥫ 
 ࠢ L 뢠饣.
.
     V    , S
     V    , WRD R []	; 㧨 S 뢠饣 
				; ⥪  .
     RL   SLR_R, 	; ⪮४஢ RL
				; SLR_R -, ᫨ 
				; 室.
     ᫨ RL 뢠饣 S ࠢ 11b   RL  SLR_R  -
ࠢ 10b,  RL SLR_R - ४    ⠭
ࠢ 11b.
 .
 - :     20 ⠪⮢; 1    ,  20 .
 - :      21 ⠪	; 1.05 ,  20 .
.
     ZF -  ᠭ    ࠧ  "㭪".  㣨  䫠
  .
   .
     뢥 6. RL -   饭  ०    
  믮  ॠ쭮 ०.
   .
      ,    樨 DD.
    8086.
      ,        ॠ쭮  ०,    ࠢ塞  
饭 ०  ஢ ਢ 0.  ଠ  ⥪  ஢
ਢ 0  ᫥    ᪫⥫쭮  樨  (
 訡)   뢠  (    訡)    
.  12.2.    ⠪  ᪫⥫쭠      訡
࠭   訡  ﭭ        ᮬ
訡 ࠭  ॣ R2.

			    - 210 -
      ͻ
      UND  ஫  ᨢ  室  ࠭.
      ͼ
			    .
				   0	      1
			      - - - - - - - -	 - - - - - - - -
UND			      0 1 1 0 0 0 1 0	 md: reg : r/m

			    .
IF ((IND  LWR UND) R ((IND+RND SIZ)  URUND)))
N
  INRRU 5;
			   .
     UND    ஫஢  ᨢ,
࠭ ண । 孥     ࠭栬.  
࠭    ॣ,	ᮤঠ騩   祭	,
䥪⨢  ࠭. ࠢ ࠭  -      
, ᮤঠ 2 祭:  ࠭  ᫥  
.  ᫨	 	 	࠭,   	ண
।   祭           ࠧ஬    ࠭,
ᯮ	   ।   ࠭,      
뢠 5.   ⢨  ந.
.
     UND    DI, RRY_LIIS
 .
᫨ 뢠  : 10 ⠪⮢; 0.5 ,  20 .
᫨   뢠 5: 44 ⠪;  2.2 ,  20 .
.
      䫠   .
   .
       뢠  5  ᫨	    室   
࠭,  ᠭ   ࠧ "㭪",    ⠪  㣨
뢠,   樨 DD.
   .
       뢠  5  ᫨	    室   
࠭,  ⠪ 㣨 뢠,   樨 DD.
    8086.
       뢠  5  ᫨	    室   
࠭,  ⠪ 㣨 뢠,   樨 DD.

			    - 211 -
	   ͻ
	   SF 	 ⮢ ᪠஢ ।.
	   ͼ
			    .
	        0		   1	      2
	   - - - - - - - -    - - - - - - - -	 - - - - - - - -
SF	    0 0 0 0 1 1 1 1    1 0 1 1 1 1 0 0	  md: reg : r/m

			    .
騩 ॣ < ᬥ饭 ⮢    ।饬	࠭
		(⮢  ࠢ).
			   .
     믮	᪠஢  ।饣  ࠭  稭   
襣 饣  (᪠஢ ࠢ ).  ZF  =  0,
᫨     ࠢ 1;  ZF = 1,   ᬥ饭	襣
饣  ࠢ 㦠    ਭ騩  ॣ.  
塠⮢ ࠭  ⮢ ᬥ饭  0  31.
.
     SF    D, SUS_DWRD
᫨ ᮤন   ᮬ SUS_DWRD = 00D9034h,   
१ 믮 樨 SF,    ,  D  =
00000002h  ZF = 1.
 .
		10 + 3n ⠪⮢; [0.5 + 3(0.15)] ,  20 .
( n - ᫮  ⮢  権,	  室  ᪠஢
ࠢ	稭          ࠢ  訩  
.)
.
     ZF ࠡ⠥  ᠭ  ࠧ "ᠭ". 㣨  䫠
  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 212 -
	    ͻ
	    SR	  ⮢ ᪠஢ .
	    ͼ
			    .
	        0		   1	      2
	   - - - - - - - -    - - - - - - - -	 - - - - - - - -
BSR	   0 0 0 0 1 1 1 1    1 0 1 1 1 1 0 1	 md: reg : r/m

			    .
騩 ॣ < ᬥ饭 ⮢    ।饬	࠭
		(⮢  ᫥).
			   .
     믮	 ᪠஢	।饣   ࠭	 稭
 襣 饣  (᪠஢ ᫥ ࠢ). ZF = 0,
᫨     ࠢ 1;  ZF = 1,   ᬥ饭	襣
饣    㦠    ਭ騩  ॣ.  
塠⮢ ࠭  ⮢ ᬥ饭  0  31.
.
     SR    D, SUS_DWRD
᫨  ᮤন   ᮬ SUS_DWRD = 00D9034h,  
१ 믮 樨 SR,    ,  D  =
00000017h (筮 祭 23)  ZF = 1.
 .
		10 + 3n ⠪⮢; [0.5 + 3(0.15)] ,  20 .
( n - ᫮  ⮢  権,	  室  ᪠஢
᫥ 稭      訩  .)
.
     ZF ࠡ⠥  ᠭ  ࠧ "ᠭ". 㣨  䫠
  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 213 -
	      ͻ
	      T		 ஢ .
	      ͼ
			    .

	        0		   1	      2
	   - - - - - - - -    - - - - - - - -	 - - - - - - - -
/
,
।-  0 0 0 0 1 1 1 1    1 0 1 1 1 0 1 0	 md:1 0 0: r/m
⢥
࠭.
	   8 -  -
	   ।⢥ -
	   .
/
,
.   0 0 0 0 1 1 1 1    1 0 1 0 0 0 1 1	 md: reg : r/m

			    .
CF < (< > ࠭ 筨 );
			   .
    	   b   ।饣	࠭.        CF
⠭  뢠   ᮮ⢥⢨   ⮬  b.
䥪⨢    ।饣  ࠭   㪠뢠   
࠭,  ⮢ ᬥ饭 㪠뢠  ࠭  (
।⢥ ࠭).
    ⨬,   ࠭  b      
।⢥ ᫥  樨   騬  ॣ஬.
 ।⢥   稪	      32,
⠪  ࠧ	   ।⢥   ⮢	ᬥ饭
室  ࢠ  0...31.	  	    
 ॣ 饣 祭.  ⮢ ਭ  
।⢥   ⮫쪮 ⮢  ᬥ饭  	।
᫮   ᫮ (WORD  DWORD).

			    - 214 -
    ᥬ ন  ।⢥  ⮢  ᬥ饭
訥 31, ᯮ ।⢥  ⮢ ᬥ饭  
樨  樮騬  ࠭- 筨  .
ᥬ ࠡ뢠	।⢥  ⮢  ᬥ饭  
 32 ࠧ來 ᫮, 室饥    ।	2  .
訥   ।⢥  ⮢  ᬥ饭  	3    5
࠭   ।⢥ ⮢ ᬥ饭  訥
    29    27  ᤢ            ⮬
樮஢   ० 樨.
     ।騩  ࠭  室    ,  
80386  䠪᪨             ६	 ⠬,
稭騬   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 32))
 ࠧ ࠭ DWORD ( ᫮),      ,
稭   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 16))
 ࠧ ࠭  WORD  (᫮).  ⥫쭮  ணࠬ
   ⮬, ⮡  ᯮ짮  BT 
뫮	      ""  ,  ⠪      ॣ
/뢮, ᯮ  .   ⮣  ᯮ
樨  MOV    㧪	  ࠭  ⠪  ᮢ  
ॣ஢  樨  BT    㫨஢	⮢묨
묨.
.
          EA, 5
    ᭥ ਬ ࠧ㬨⥫쭮.
 .
஢ ࠭,
।⢥
⮢ ᬥ饭:	3 ⠪;  0.15 ,  20 .
࠭ ,
।⢥
⮢ ᬥ饭:	6 ⠪⮢; 0.3  ,  20 .
஢ ࠭,
ॣ஢
⮢ ᬥ饭:	3 ⠪;  0.15 ,  20 .
࠭ ,
ॣ஢
⮢ ᬥ饭:	12 ⠪⮢; 0.6	,  20 .
.
     F ࠡ⠥  ᠭ  ࠧ "ᠭ". 㣨  䫠
  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 215 -
   ͻ
   TC   ஢   ᫥騬  ஢.
   ͼ
			    .
C
	        0		   1	      2
	   - - - - - - - -    - - - - - - - -	 - - - - - - - -
/
,
।-  0 0 0 0 1 1 1 1    1 0 1 1 1 0 1 0	 md:1 1 1: r/m
⢥
࠭.
	   8 -  -
	   ।⢥ -
	   .
/
,
.   0 0 0 0 1 1 1 1    1 0 1 1 1 0 1 1	 md: reg : r/m

			    .
CF < (<⮢ ᫮> ࠭ 筨 );
<⮢ ᫮> 筨 < ~(<⮢ ᫮> 筨)
			   .
    	   b   ।饣	࠭.        CF
⠭   	뢠  ᮮ⢥⢨    ⮬  b.
⥬    b  .  䥪⨢      ।饣
࠭  㪠뢠    ࠭,    ⮢	ᬥ饭
㪠뢠  ࠭ ( ।⢥ ࠭).
    ⨬,      ࠭	   b      
祭 ।⢥ ᫥    樨    騬
ॣ஬. 	।⢥    稪    
	32,  ⠪  ࠧ    ।⢥  ⮢
ᬥ饭 室    ࢠ  0...31.  	  
   ॣ 饣 祭.  ⮢ ਭ
  ।⢥   ⮫쪮  ⮢  ᬥ饭  
। ᫮   ᫮ (WORD  DWORD).
    ᥬ ন  ।⢥  ⮢  ᬥ饭
訥 31, ᯮ ।⢥  ⮢ ᬥ饭  
樨  樮騬  ࠭- 筨  .
ᥬ ࠡ뢠	।⢥  ⮢  ᬥ饭  
 32 ࠧ來 ᫮, 室饥    ।	2  .
訥   ।⢥  ⮢  ᬥ饭  	3    5
࠭   ।⢥ ⮢ ᬥ饭  訥
    29    27  ᤢ            ⮬
樮஢   ० 樨.
     ।騩  ࠭  室    ,  
80386  䠪᪨             ६	 ⠬,
稭騬   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 32))
 ࠧ ࠭ DWORD ( ᫮),      ,
稭   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 16))

			    - 216 -
 ࠧ ࠭  WORD  (᫮).  ⥫쭮  ணࠬ
   ⮬, ⮡   ᯮ짮    BTC
 뫮      ""  ,  ⠪    ॣ
/뢮, ᯮ  .   ⮣  ᯮ
樨  MOV    㧪	  ࠭  ⠪  ᮢ  
ॣ஢   樨  BTC  㫨஢	⮢묨
묨.
.
     C     EA, 5
    ᭥ ਬ ࠧ㬨⥫쭮.
 .
஢ ࠭,
।⢥
⮢ ᬥ饭:	6 ⠪;  0.3  ,  20 .
࠭ ,
।⢥
⮢ ᬥ饭:	8 ⠪⮢; 0.4  ,  20 .
஢ ࠭,
ॣ஢
⮢ ᬥ饭:	6 ⠪;  0.3  ,  20 .
࠭ ,
ॣ஢
⮢ ᬥ饭:	13 ⠪⮢; 0.65 ,  20 .
.
     F ࠡ⠥  ᠭ  ࠧ "ᠭ". 㣨  䫠
  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 217 -
       ͻ
       TR   ஢   ᫥騬  ᮬ.
       ͼ
			    .
	        0		   1	      2
	   - - - - - - - -    - - - - - - - -	 - - - - - - - -
/
,
।-  0 0 0 0 1 1 1 1    1 0 1 1 1 0 1 0	 md:1 1 0: r/m
⢥
࠭.
	   8 -  -
	   ।⢥ -
	   .
/
,
.   0 0 0 0 1 1 1 1    1 0 1 1 0 0 1 1	 md: reg : r/m

			    .
CF < (<⮢ ᫮> ࠭ 筨 );
<⮢ ᫮> 筨 < 0;
			   .
    	   b   ।饣	࠭.        CF
⠭  뢠 ᮮ⢥⢨  ⮬ b.    b
뢠 ⥬  0.䥪⨢    ।饣	࠭
㪠뢠  ࠭,    ⮢  ᬥ饭  㪠뢠
 ࠭ ( ।⢥ ࠭).
    ⨬,      ࠭	   b      
祭 ।⢥ ᫥    樨    騬
ॣ஬. 	।⢥    稪    
	32,  ⠪  ࠧ    ।⢥  ⮢
ᬥ饭 室    ࢠ  0...31.  	  
   ॣ 饣 祭.  ⮢ ਭ
  ।⢥   ⮫쪮  ⮢  ᬥ饭  
। ᫮   ᫮ (WORD  DWORD).
    ᥬ ন  ।⢥  ⮢  ᬥ饭
訥 31, ᯮ ।⢥  ⮢ ᬥ饭  
樨  樮騬  ࠭- 筨  .
ᥬ ࠡ뢠	।⢥  ⮢  ᬥ饭  
 32 ࠧ來 ᫮, 室饥    ।	2  .
訥   ।⢥  ⮢  ᬥ饭  	3    5
࠭   ।⢥ ⮢ ᬥ饭  訥
    29    27  ᤢ            ⮬
樮஢   ० 樨.
     ।騩  ࠭  室    ,  
80386  䠪᪨             ६	 ⠬,
稭騬   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 32))
 ࠧ ࠭ DWORD ( ᫮),      ,
稭   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 16))
 ࠧ ࠭  WORD  (᫮).  ⥫쭮  ணࠬ
   ⮬, ⮡   ᯮ짮    BTR
 뫮      ""  ,  ⠪    ॣ
/뢮, ᯮ  .   ⮣  ᯮ
樨  MOV    㧪	  ࠭  ⠪  ᮢ  
ॣ஢   樨  BTR  㫨஢	⮢묨
묨.

			    - 218 -
.
     R     EA, 5
 .
z஢ ࠭,
।⢥
⮢ ᬥ饭:	6 ⠪;  0.3  ,  20 .
࠭ ,
।⢥
⮢ ᬥ饭:	8 ⠪⮢; 0.4  ,  20 .
஢ ࠭,
ॣ஢
⮢ ᬥ饭:	6 ⠪;  0.3  ,  20 .
࠭ ,
ॣ஢
⮢ ᬥ饭:	13 ⠪⮢; 0.65 ,  20 .
.
     F ࠡ⠥  ᠭ  ࠧ "ᠭ". 㣨  䫠
  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.
       ͻ
       TS   ஢   ᫥饩  ⠭
       ͼ
			    .
S
  z	        0		   1	      2
	   - - - - - - - -    - - - - - - - -	 - - - - - - - -
/
,
।-  0 0 0 0 1 1 1 1    1 0 1 1 1 0 1 0	 md:1 0 1: r/m
⢥
࠭.
	   8 -  -
   z	   ।⢥ -
	   .
/
,
.   0 0 0 0 1 1 1 1    1 0 1 0 1 0 1 1	 md: reg : r/m

			    - 219 -
			    .
CF < (<⮢ ᫮> ࠭ 筨 );
<⮢ ᫮> 筨 < 1;
			   .
        b  ।饣  ࠭.   CF
⠭  뢠 ᮮ⢥⢨  ⮬ b.    b
⠭ ⥬  1.䥪⨢  ।饣 ࠭
㪠뢠  ࠭,    ⮢  ᬥ饭  㪠뢠
 ࠭ ( ।⢥ ࠭).
    ⨬,      ࠭	   b      
祭 ।⢥ ᫥    樨    騬
ॣ஬. 	।⢥    稪    
	32,  ⠪  ࠧ    ।⢥  ⮢
ᬥ饭 室    ࢠ  0...31.  	  
   ॣ 饣 祭.  ⮢ ਭ
  ।⢥   ⮫쪮  ⮢  ᬥ饭  
। ᫮   ᫮ (WORD  DWORD).
    ᥬ ন  ।⢥  ⮢  ᬥ饭
訥 31, ᯮ ।⢥  ⮢ ᬥ饭  
樨  樮騬  ࠭- 筨  .
ᥬ ࠡ뢠	।⢥  ⮢  ᬥ饭  
 32 ࠧ來 ᫮, 室饥    ।	2  .
訥   ।⢥  ⮢  ᬥ饭  	3    5
࠭   ।⢥ ⮢ ᬥ饭  訥
    29    27  ᤢ            ⮬
樮஢   ० 樨.
     ।騩  ࠭  室    ,  
80386  䠪᪨             ६	 ⠬,
稭騬   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 32))
 ࠧ ࠭ DWORD ( ᫮),      ,
稭z   ,  ᫥騬 ࠧ
䥪⨢  + (4*(⮢_ᬥ饭 DIV 16))
 ࠧ ࠭  WORD  (᫮).  ⥫쭮  ணࠬ
   ⮬, ⮡   ᯮ짮    BTS
 뫮      ""  ,  ⠪    ॣ
/뢮, ᯮ  .   ⮣  ᯮ
樨  MOV    㧪	  ࠭  ⠪  ᮢ  
ॣ஢   樨  BTS  㫨஢	⮢묨
묨.
.
     S     EA, 4
 .
஢ ࠭,
।⢥
⮢ ᬥ饭:	6 ⠪;  0.3  ,  20 .
࠭ ,
।⢥
⮢ ᬥ饭:	8 ⠪⮢; 0.4  ,  20 .
஢ ࠭,
ॣ஢
⮢ ᬥ饭:	6 ⠪;  0.3  ,  20 .
࠭ ,
ॣ஢
⮢ ᬥ饭:	13 ⠪⮢; 0.65 ,  20 .

			    - 220 -
.
     F ࠡ⠥  ᠭ  ࠧ "ᠭ". 㣨  䫠
  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.
     ͻ
     CALL  楤 맮.( 饭 ० ).
     ͼ
			    .
		    0	       1	     ᫥騩()
	       - - - - - - - -	  - - - - - - - -	 ().
	⥪-  1 1 1 0 1 0 0 0	   
饣 
ᥣ -
    맮,
 .
	⥪-  1 1 1 1 1 1 1 1	  md:0 1 0: r/m
饣 
ᥣ  -
אַ	맮
 ᮫⭮-
 ᬥ饭.
אַ	 -  1 0 0 1 1 0 1 0	  ᮫⭮ ᬥ饭,
ᥣ.			  ᥫ ᥣ.
אַ -  1 1 1 1 1 1 1 1	  md:0 1 1: r/m
ᥣ.
			    .
IF (ࠧ_ = 32) THEN
BEGIN
  PUSH EIP;
  १㧪 EIP  ࠭;        (CALL ᥣ 
END						    EIP  IP)
ELSE
BEGIN
  PUSH IP;
  १㧪 EIP  ࠭;        (CALL ᥣ 
END						    EIP  IP)
IF CALL  ᥣ THEN
BEGIN
  PUSH CS;
  १㧪 CS  ࠭;	       (ᥣ CALL
END						    CS)

			    - 221 -
			   .
    CALL  ⥪饣  ᥣ    ᮤন
㪠⥫ 権    ⥪.	࠭    㪠⥫
権    砫  믮  ணࠬ.     CALL
ந   ᥣ ॣ  CS  ⠥  
.
     ᥣ CALL   ॠ쭮  ०  
० 㠫쭮 8086, 㪠⥫ 権  CS ॣ  
  ⥪  ⥬   祭ﬨ ࠭ 
砫 믮 ணࠬ.
     ᥣ CALL      饭  ०
⢨ ।ਭ  ஬  80386      祭
᫮묨    ᮮ⢥⢨    ⥬         ਭ騬
ᥫ஬
    1.  ᥣ  ⥪饬 ஢ ਢ,(DPL = CPL)
    2. 	  ᥣ              ਢ஢
஢,(DPL<=CPL)
    3. ४⥫ 맮,
    4.  ﭨ , 
    5. ४⥫ .
.
    CALL     SUBR_A
    .
   (.. ॣ)  
  RPL ਭ饣 ᥫ   ᫥ <=  CPL  
 ᪫⥫쭠  饩    (  訡
ᥫ  ᥣ).
  ਯ DPL   ᫥ = CPL    
᪫⥫쭠	  饩    (  訡  ᥫ
 ᥣ).
    室      ࠭,  ᠭ  
⠡ ਯ஢   ᪫⥫쭠	
饩   (  訡  ᥫ    ᥣ).
          ⢮	       
᪫⥫쭠	  饩    (  訡  ᥫ
 ᥣ).
  ⥪    筮  ࠭⢮	⮡  ࠭
    	  ⥪	뢠  (
訡 0000h).
  ⥫  樨     室   	
ᥣ   ᪫⥫쭠  饩 
( 訡 0000h).
  㧨 ਯ  ᥣ     CS  ਯ
(   ணࠬ).
  㧨 ॣ CS 祭 ᥫ  ᥣ.
  㧨 EIP ७ ﬨ ( ᬥ饭).
  IF ࠧ ࠭ = 16 THEN EIP := EIP AND
0000FFFFh.
  ⠭  RPL ॣ CS  CPL.
    
  DPL       ᫥	 <=   CPL      
᪫⥫쭠	  饩    (  訡  ᥫ
 ᥣ).
    室 	࠭,  ᠭ    ⠡
ਯ஢    ᪫⥫쭠    饩
 ( 訡 ᥫ  ᥣ).

			    - 222 -
    ᥣ    ⢮     
᪫⥫쭠	  饩    (  訡  ᥫ
 ᥣ).
  ⥪    筮  ࠭⢮	⮡  ࠭
    	  ⥪	뢠  (
訡 0000h).
  ⥫  樨     室   	
ᥣ   ᪫⥫쭠  饩 
( 訡 0000h).
  㧨 ਯ  ᥣ     CS  ਯ
(   ணࠬ).
  㧨 ॣ CS 祭 ᥫ  ᥣ.
  㧨 EIP ७ ﬨ ( ᬥ饭).
  IF ࠧ ࠭ = 16 THEN EIP := EIP AND 0000FFFFh.
  ⠭  RPL ॣ CS  CPL.
   :
  뢠騩 ४⥫ DPL   ᫥ >= CPL 
 ᪫⥫쭠  饩    (  訡
ᥫ 뢠饣 ४⥫).
  뢠騩 ४⥫ DPL   ᫥ >= RPL 
 ᪫⥫쭠  饩    (  訡
ᥫ 뢠饣 ४⥫).
  뢠騩   ४⥫   	 ⢮    
 ᪫⥫쭠  饩    (  訡
ᥫ 뢠饣 ४⥫).
  ஢ઠ   ᥫ    ᥣ    뢠饬
४⥫:
            㫥      
᪫⥫쭠  饩  ( 訡 0000h).
      室    ।  ⠡  
ਯ     ᪫⥫쭠    饩
 ( 訡 ᥫ  ᥣ).
   AR ࠭ ਯ  뢠 ᥣ  
  ᪫⥫쭠    饩    (
訡 ᥫ  ᥣ).
  DPL ࠭ ਯ      ࠢ(?)  CPL  
 ᪫⥫쭠  饩    (  訡
ᥫ  ᥣ).
  IF ᮮ⢥騩  ᥣ AND DPL < CPL
    THEN goto  
    ELSE goto   .
  ⠭  RPL ॣ CS  CPL.
 
      ᥫ  SS	  祭	    ஢
  ਢ  TSS ( ﭨ ).
   ப஫஢ ᥫ  ਯ:
   ᥫ            㫥       
᪫⥫쭠  訡 TSS ( 訡 0000h).
     室  । ⠡  ਯ
  ᪫⥫쭠    饩    (
訡 ᥫ  ᥣ).
    RPL  ᫥ = DPL    ᥣ  
 ᪫⥫쭠    訡  TSS  (  訡
ᥫ ⥪ ᥣ).
   ⥪ ᥣ DPL  ᫥ = DPL 	ᥣ
    ᪫⥫쭠    訡  TSS  (
訡 ᥫ ⥪ ᥣ).
   ਯ  㪠뢠  ,      
ந    	᪫⥫쭠	
訡 TSS ( 訡 ᥫ ⥪ ᥣ).

			    - 223 -
     ⢮  訡 ⥪ (  訡
ᥫ ⥪ ᥣ).
  IF ࠧ ࠭ =32
  THEN
     ⥪    ࠭⢮  	ᠬ
ࠬ஢ (  砥)    16      
᪫⥫쭠  饩  ( 訡 0000h).
    EIP  室   ।    ᥣ  
 ᪫⥫쭠  饩    (  訡
0000h).
    㧨  SS:ESP 祭  ᥣ ﭨ 
(TSS).
    㧨		 CS:EIP    祭        뢠饣
४⥫.
  ELSE
     ⥪    ࠭⢮  	ᠬ
ࠬ஢ (  砥)     8      
᪫⥫쭠  饩  ( 訡 0000h).
    IP	 室   ।    ᥣ  
 ᪫⥫쭠  饩    (  訡
0000h).
    㧨  SS:ESP 祭  ᥣ ﭨ 
(TSS).
    㧨		 CS:IP	  祭         뢠饣
४⥫.
   㧨 CS ਯ   CS ਯ.
  㧨 SS ਯ   SS ਯ.
    ᫮ 㪠⥫ ண ⥪   ⥪.
    稪   ᫮   	 뢠饣   ४⥫   
᪨஢   5  (祭  0  31).
       ⥪.
  ⠭ CPL  ⥪ ᥣ DPL.
  ⠭  RPL ॣ CS  CPL.
  :
  IF ࠧ ࠭ = 32
  THEN
   ⥪    	࠭⢮    6-  ⮢  
 (⮣  8 )  訡 ⥪ (  訡
0000h).
   EIP  室    ।    ᥣ  
 ᪫⥫쭠  饩    (  訡
0000h).
   㧨  CS:EIP 祭  뢠饣 ४⥫.
  ELSE
   ⥪    	࠭⢮    4-  ⮢  
 (⮣  8 )  訡 ⥪ (  訡
0000h).
    IP	 室   ।    ᥣ  
 ᪫⥫쭠  饩    (  訡
0000h).
    㧨		 CS:IP	  祭         뢠饣
४⥫.
  ⠭  RPL ॣ CS  CPL.
   :
  ४⥫  DPL   	᫥  >=  CPL  
 ᪫⥫쭠    訡  TSS  (  訡
ᥫ ४⥫).
  ४⥫   ᫥ >= RPL   
᪫⥫쭠	  訡  TSS  (   訡   ᥫ
४⥫).

			    - 224 -
  ४⥫   ⢮    
᪫⥫쭠	  ⢨   (   訡   ᥫ
४⥫).
  ஢ ᥫ  TSS   ⥪⥫ :
     ᠭ ⠡ 쭮 ਯ	(GDT)  
 ⠡筮 㪠⥫ (TI)   ᪫⥫쭠
 訡 TSS ( 訡 ᥫ  TSS).
     室  ।	GDT    
᪫⥫쭠  訡 TSS ( 訡 ᥫ TSS).
    ࠢ 㯠 ਯ TSS  뢠  
TSS   ᪫⥫쭠  訡  TSS  (
訡 ᥫ TSS).
     ﭨ		    ⢮   
  ᪫⥫쭠  	⢨  (  訡
ᥫ TSS).
  - ( , NT = 1  EFLAG)  ,
 ᥫ஬ TSS.
   EIP  室    ।    ᥣ  
 ᪫⥫쭠  饩    (  訡
0000h).
    :
  TSS  DPL      ᫥  >=	CPL    
᪫⥫쭠  訡 TSS ( 訡 ᥫ TSS).
  TSS  DPL      ᫥  >=	RPL    
z᪫⥫쭠  訡 TSS ( 訡 ᥫ TSS).
    ࠢ 㯠 ਯ TSS  뢠  
TSS   ᪫⥫쭠  訡  TSS  (
訡 ᥫ TSS).
  ४⥫   ⢮    
᪫⥫쭠	  ⢨   (   訡   ᥫ
४⥫).
  - ( , NT = 1  EFLAG)  ,
 ᥫ஬ TSS.
  EIP   室    ।    ᥣ  
 ᪫⥫쭠  饩    (  訡
0000h).
.
     䫠   ,    ᪫祭	砥
४祭   饭 ०.
   .
     뢠 13 , ᫨      ࠭  
  䥪⨢  訩, 祬  FFFFh    ᥣ
S, DS, S,  FS,    GS.  ᫨    	࠭  
 䥪⨢  訩, 祬 FFFFh   ⥪	ᥣ
SS,   뢠 12.
   .
      ᪫⥫쭠    (13)    
 訡 0000h  ࠭, ᯮ  ᥣ  S,
DS, S, FS,  GS  砥, ᫨ ਭ騩 ࠭ ᯮ
 ᥣ, 뢠  ண  饭  ,    ⠪  ᫨
  ࠭ ᯮ    䥪⨢    
࠭ ᥣ. ⥪ ᪫⥫쭠  (12)   
訡 0000h  ࠭, ᯮ   ⥪  ᥣ,
    砥,  ᫨			࠭   
䥪⨢   ࠭ ᥣ. ⥪ ᪫⥫쭠

			    - 225 -
     訡  ᥫ  ᥣ	,  ᫨
࠭   室   ⥪	ᥣ  SS  ,  
祭   騩    .	᪫⥫쭠	
⢨(11)   訡  ᥫ  ᥣ    
砥,  ᫨  ࠭		室      -	  
ᥣ⮢ DS, S, FS, GS, ⬥祭   騩.  
 ᪫⥫쭠   ࠭ (14)   
訡   ᮬ 訡 ࠭   ॣ  R2.
᪫⥫쭠  訡 ᥣ ﭨ   
訡 ᥫ    室    TSS      砥
믮 ४祭 .
    8086.
      ,        ॠ쭮  ०,    ࠢ塞  
饭 ०  ஢ ਢ 0.  ଠ  ⥪  ஢
ਢ 0  ᫥    ᪫⥫쭮  樨  (
 訡)   뢠  (    訡)    
.  12.2.    ⠪  ᪫⥫쭠      訡
࠭   訡  ﭭ        ᮬ
訡 ࠭  ॣ R2.
	    ͻ
	    CBW / CWDE ८ࠧ   ᫮
	    / ८ࠧ ᫮   ᫮.
	    ͼ
			    .
CBW / CWDE		 1 1 0 1 0 1 0 1

			    .
IF (ࠧ ࠭ - ᫮)		{  CBW }
THEN  AX <- ७  (AL);
ELSE  {ࠧ ࠭ -  ᫮  {  CWDE }
     EAX <- ७  (AX);
			   .
    CBW ८ࠧ    AL   ᫮    AX.
CWDE ८ࠧ  ᫮  AX    ᫮  
EAX. ⬥⨬,  CWDE ⫨砥    CWD,    ᯮ
DX:AX  EAX  ⢥ ਥ.
 .
      3 ⠪; 0.15 ,  20 .
.
      .
   .
     .
   .
     .
    8086.
     .

			    - 226 -
	    ͻ
	    CLC	     㫨 䫠 ७.
	    ͼ
			    .
CLC			 1 1 1 1 1 0 0 0

			    .
CF <- 0;
			   .
    CLC  䫠 ७.
.
    CLC
 .
      2 ⠪; 0.1 ,  20 .
.
    CF ࠡ⠥  ᠭ   ࠧ 㭪.   㣨
䫠   .
   .
     .
   .
     .
    8086.
     .

			    - 227 -
	   ͻ
	   CLD 	    㫨 䫠 ࠢ.
	   ͼ
			    .
CLD			1 1 1 1 1 1 0 0

			    .
DF <- 0;
			   .
    CLD    䫠  ࠢ.  ᫥   ᯮ   CLD
ਭ  樨	  騥  ਭ  樨
 ६஢  ॣ, ᯮ㥬 .
.
    CLD
 .
      2 ⠪; 0.1 ,  20 .
.
    DF ࠡ⠥  ᠭ   ࠧ 㭪.   㣨
䫠   .
   .
     .
   .
     .
    8086.
     .

			    - 228 -
    ͻ
    CLI   㫨 䫠 뢠 - 饭 뢠.
    ͼ
			    .
CLI			1 1 1 1 1 0 1 0

			    .
IF <- 0;
			   .
    CLI    䫠  ࠢ,  ᫨    ࠧ襭.  
ॠ쭮 ०  CLI ᥣ  ࠧ襭.    饭
०   ० 㠫쭮 8086, CPL  	᫥
<= IOPL  ⮣, ⮡  뫮 믮  CLI.
.
    CLI
 .
      3 ⠪; 0.15 ,  20 .
.
    IF ࠡ⠥  ᠭ   ࠧ 㭪.   㣨
䫠   .
   .
     .
   .
    ᪫⥫쭠  饩   (13)	  
 訡 0000h, ᫨ CPL ᫥  IOPL.
    8086.
    ᪫⥫쭠  饩   (13)	  
 訡 0000h, ᫨ IOPL ᫥  3,    ࠡ  
० 㠫쭮 8086 CPL ᥣ ࠢ 3.
    "⫠"  ⮩  樨    ६  ࠡ  ०
㠫쭮 8086  祭ﬨ  IOPL  2,  1,    0  
㯥ࢨ 饭  ०  㠫஢  ﭨ  IF
 ணࠬ ᯥ祭 㠫쭮 8086.

			    - 229 -
      ͻ
      CLTS	     c 䫠 ४⥫   CRO
      ͼ
			    :
			     0	      1
       CLTS		0 0 0 0 1 1 1 1  0 0 0 0 0 1 1 0

			    :
	TS < 0;
			   :
      ᮮ⢥⢨      ᫮   CLTS   ⠭   䫠
४祭 .  ॠ쭮 ० CLTS ᥣ ᪠  
, ᪮     ⥫    樠樨
 饭 ०.  饭 ० CPL      0
 ⮣, ⮡ CLTS 믮  .
:
       CLTS
 :
		 5 ⠪⮢;  0,25   20 .
:
   TS  ० CR0  뢠    ࠧ    .  
㣨 䫠  CR0  EFLAG  .
   :
.   믮  ॠ쭮 ०  樠樨
 饭 ०.
   :
᪫⥫쭠  " ⠭⭮ " (᪫祭  13)
	    訡  0000h,  ᫨	 CPL      0	(஢
㯥ࢨ).
    8086.
.

			    - 230 -
	 ͻ
	 CMC	        ७  EFLAG.
	 ͼ
			    :
	CMC	     1 1 1 1 0 1 0 1

			    :
	CF <  CF;
			   :
   CLC  ⥪騩 䫠.
:
       CMC
 :
		 2 ⠪; 0,1   20 .
:
CF 뢠  ࠧ    .    㣨  䫠  
.
   :
.
   :
.
    8086:
.

			    - 231 -
		  ͻ
		  CMP	   ࠢ ࠭
		  ͼ
			    .
				   0	      1
			      - - - - - - - -	 - - - - - - - -
 - 	      0 0 1 1 1 0 d w	 md: reg : r/m
 - 	      0 0 1 1 1 0 0 w	 md: reg : r/m
	- 	      0 0 1 1 1 0 1 w	 md: reg : r/m
।⢥ ࠭ -    1 0 0 0 0 0 s w	 md:1 1 1: r/m
-  / 
			      ।⢥ -
			      ()  ()
			      .
।⢥ ࠭ -    0 0 0 1 0 1 0 w	 ।⢥ -
-  L, ,  			 ()  ()
(⪠ )				 .
.
     e  筨;  ( ⮫쪮  EFLAG)
:
     ਥ  ।⢥ ;
			    ( ⮫쪮  EFLAG)
			   .
 ࠢ  ࠭    ࠭    ।⢥묨	묨.
   ࠢ   ࠭   ,   	१    
.  ⮫쪮 䫠.
.
     CMP    , D
 .
 - :     2 ⠪;  0.1  ,  20 .
 - :      6 ⠪⮢; 0.3 ,  20 .
	- :     5 ⠪⮢; 0.25 ,  20 .
।⢥
࠭ - :     2 ⠪;  0.1  ,  20 .
।⢥
࠭ - :      6 ⠪⮢; 0.3 ,  20 .
.
     F, F, SF, ZF, F  F ࠡ  ᠭ  ਫ .
㣨 䫠   .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 232 -
	ͻ
	CMPSB/CMPSW/CMPSD    ࠢ ப 
	ͼ
			    :
	CMPSB/CMPSW/CMPSD     1 0 1 0 0 1 1 w

			    :
   筨--ਥ;	(ࠢ  ⮫쪮  EFLAG)
   IF(ADRESS SIZE=32) THEN
      ADJUST ESI and EDI; (ॣ㫨஢ ᮢ  筨
			     ਥ)
   ELSE (ADRESS SIZE=16)
      ADJUST SI and DI;
			   :
ந室 ࠢ ࠭     ப  .
⠥,  ப ।⠢ ᮡ ᨢ  ,  ,
      ᨬ    ࠧ  ࠭   ப
. ᫥ ⮣  ࠢ ந,	ॣ  
筨  ॣ  ਥ ⮬᪨ த
(㢥稢	  㬥,  ᮣ᭮  DF)    ⨦
ࠧ ࠭. ᫨ ࠧ   ⠢  
, ࠭ ப 筨-[ESI], ⮣  ࠭  ப
ਥ-ES:[EDI]. 㣨 ᫮, ࠭  [SI]  
[DI]. 㧨	稭    ४樨  ।  믮
CMPS.
⨬,  ࠢ ⠭   	[ESI]-[EDI]  
[SI]-[DI].  ࠭- 筨,	  ࠢ-ਥ.  
⢨ ⭮ 筮 ᮣ襭  INTEL,  ᯮ㥬  
SUB,  SBB    CMP  ,         ࠭-ਥ,   
ࠢ-筨.
:
       CMPSB	    ;  ࠢ ࠭ BYTE  ப BYTE

 REPE CMPSB	    ;	  ,      㯠
			ࠢ,  ॣ ECX  
			(. .458)

 REPNE	 CMPSB;       ,   	 ࠢ    
		   稫,  ECX ॣ     (.
		   . 459)
᪮ ॣ 筨  ਥ     㦥
 믮 ⮩ ,  CMPSB/W/D  	横  
ᯮ  ᪮쪨 権.
 :
饥:    10 ⠪⮢;	0,5   20 
饥:	  5+9n ⠪⮢;	0,25+0,45n   20 
(n-᫮ 믮塞 権)
:
OF, CF, SF, ZF, AF,  PF ,  ᠭ  ਫ  .
㣨 䫠  .
   :
 ,    ADD.
   :
 ,    ADD.
    8086:
 ,    ADD.

			    - 233 -
       ͻ
       CWD/CDQ    ८ࠧ     /
        ८ࠧ      
       ͼ
			    :
       CWD/CDQ		1 0 0 1 1 0 0 1

			    :
IF(OPERAND SIZE IS WORD)	 ( CWD)
THEN  DX:AX < SIGN-EXTEND(AX);
ELSE			      ( ࠭-DWORD;-CDQ)
    EDX:EAX < SIGN-EXTEND(EAX);
			   :
CWD ८ࠧ  ᫮  AX   	᫮  
DX:AX. CWDE ८ࠧ   ᫮  EAX 	
⢥୮ ᫮    EDX:EAX.  ⨬,	  CWD  ⫨砥  
 CWDE,  ᯮ EAX,      DX:AX  	⢥
ਥ.
 :
2 ⠪; 0,1   20 
:
   ⢮.
   :
			      :
			 8086:
.
	ͻ
	DAA	   筠 ⠭ AL ᫥ ᫮
	ͼ
			    :
       DAA	     0 0 1 0 0 1 1 1

			    - 234 -
:
IF((AL AND 0Fh)>9) OR (AF=1) THEN
BEGIN				     ( ⠭)
  AL < (AL+6);		     (뢠 ॣ㯯஢ 
				       㡠 AL)
  AF < 1;
END;
ELSE
  AF < 0;		   (⠭   㡠  㦭)
  IF (AL > 9Fh) OR (CF=1) THEN
BEGIN				     ( ⠭)
  AL < (AL+60h);		     (뢠 ॣ㯯஢ 
				      孥 㡠 AL)
  CF < 1;
END;
ELSE
  CF < 0;		  (⠭  孥 㡠  㦭)
			   :
      ᯮ짮  ᫥  ᫮,  ஥
⠢ 2  BCD  ॣ AL. ᫨ १ ⠭ 
       㡠	 ॢ   9,   DAA	뢠
ᮮ⢥騩 १稪  㡠⮢   ॣ  AL  
⠭ ⠪ 䫠,          믮
᫮      ࠭.
:
ADC	 AL, BL    ; ⨬,  AL   ਥ
DAA		   ; ⠭ AL  㯠 BCD (-
		     ) ଠ
  ADC    DAA    祭		横,	 
᪫뢠 㯠 BCD 稭 (  稭)  
 ⮬, 稭   饣 .
 :
4 ⠪;  0,2   20 
:
CF    AF  ᠭ    ࠧ	  .	OF,SF,ZF     PF
।. 㣨 䫠  .
   :
			      :
			 8086:
.

			    - 235 -
	  ͻ
	  DAS	   筠 ⠭ ᫥ ⠭
	  ͼ
			    :
		  DAS	      0 0 1 0 1 1 1 1
			    :
IF((AL AND 0Fh)>9) OR (AF=1) THEN
BEGIN				     ( ⠭)
  AL < (AL-6);		     (뢠 ॣ㯯஢ 
				       㡠 AL)
  AF < 1;
END;
ELSE
  AF < 0;		   (⠭   㡠  㦭)
  IF (AL > 9Fh) OR (CF=1) THEN
BEGIN				     ( ⠭)
  AL < (AL-60h);		     (뢠 ॣ㯯஢ 
				      孥 㡠 AL)
  CF < 1;
END;
ELSE
  CF < 0;		  (⠭  孥 㡠  㦭)
			   :
      ᯮ짮  ᫥ ⠭,  ஥
⠢ 2  BCD  ॣ AL. ᫨ १ ⠭ 
       㡠	 ॢ   9,   DAS	뢠
ᮮ⢥騩 १稪  㡠⮢   ॣ  AL  
⠭ ⠪ 䫠,          믮
⠭      ࠭.
:
SBB	 AL, BL    ; ⨬,  AL   ਥ
DAS		   ; ⠭ AL  㯠 BCD (-
		     ) ଠ
  SBB    DAS    祭		横,	 
⠥   㯠 BCD 稭 (  稭)  
 ⮬, 稭   饣 .
 :
4 ⠪;  0,2   20 
:
CF    AF  ᠭ    ࠧ	  .	OF,SF,ZF     PF
।. 㣨 䫠  .
   :
			      :
			 8086:
.

			    - 236 -
	       ͻ
	       DEC		  襭  1
	       ͼ
			    :
	DEC			  0 	     1
/		      1 1 1 1 1 1 1 w  mod: 0 0 1 : r/m
 (WORD  DWORD)
(⪮ ஢)	      0 1 0 0 1 : reg

			    :
   ਥ < ਥ-1
			   :
DEC ⠥ 1  ࠭. DEC, ,     CF.
⮡ ⢮ ⠪   CF, ᯮ   SUB  
।⢥ 稭 1.
:
       DEC   EBX
᫨ EBX=FFAD9034h,   १ ᠭ     DEC
EBX ਯ뢠 祭 FFAD9033h.
 :
襭 :	2 ⠪;  0,1   20 
襭 :	6 ⠪⮢;  0,3   20 
:
OF, CF, SF, ZF, AF,  PF ,  ᠭ  ਫ  .
㣨 䫠  .
   :
 ,    ADD.
   :
 ,    ADD.
    8086:
 ,    ADD.

			    - 237 -
	  ͻ
	  DIV			     
	  ͼ
			    :
	DIV		     0	      1
      AL|AX|EAX
      ॣ஬-       1 1 1 1 0 1 1 w	mod: 1 1 0 r/m
      
			    :
	AL|AX|EAX < AX|DX:AX|EDX:EAX	/ SOURCE;
		      (⭮  )
	AH|DX|EDX < REMAINDER;
			   :
   DIV 믮   . ࠭ 뢠 ⥫.
 ᨬ  ࠧ ࠭, .. BYTE,  WORD    DWORD,
 DIV ᯮ ॣ() AX|DX:AX|EDX:EAX 	筨
,  ॣ AL|AX|EAX   ⭮.    AH|DX|EDX
ᮤন ⮪ .
:
       DIV    ECX
᫨ EDX=000005D2h  EAX=60F40000h,  	ECX=00BC5200h,	⮣  
१  DIV	EAX=00075A00h  (⭮),  EDX=00000000h
(⮪). ECX .
 :
⢮ ६, ॡ㥬  믮 ,  
ࠧ .
16-⮢ :	 19 ⠪⮢;  0,95   20 
32-⮢ :	 27 ⠪⮢;  1,35   20 
62-⮢ :	 43 ⠪;   2,15   20 
:
OF  CF ,   ᠭ    ਫ . SF,ZF,AF  PF
।. 㣨 䫠  .
   :
뢠   0,   ᫨	 ⭮    ᫨誮    讥,    ⮡
ᮮ⢥⢮  ॣ,   祭   AL|AX|EAX.   㣨
᪫祭 ⠪ ,    ADD.
   :
᪫祭  (᪫祭 0), ᫨ ⭮ ᫨誮 讥,
⮡ ᮮ⢥⢮  ॣ,  祭  AL|AX|EAX.  
᪫祭 0  訡  뫠  ⥪. 㣨  ᪫祭
⠪ ,    ADD.
    8086.
. ᪫祭 饭 ०.

			    - 238 -
   ͻ
   ENTER    ⠭ ⥪ ࠬ  ࠬ஢ 楤
   ͼ
			    :
	ENTER		 1 1 0 0 1 0 0 0   16-⮢ ᬥ饭
					   8-⮢ ஢
			    :
   LEVEL < LEVEL MOD 32
   IF OPERAND SIZE=16 THEN PUSH(BP) ELSE PUSH(EBP);
   FRAME POINTER < ESP;
   IF LEVEL > 0 THEN
   BEGIN
      FOR I=1 TO (LEVEL-1)
      DO    IF OPERAND SIZE=16 THEN
	BEGIN
	  BP < BP-2;
	  PUSH(BP);
	END
	ELSE
	BEGIN
	  EBP < EBP-4;
	  PUSH(EBP);
	END
      END
      PUSH(FRAME POINTER);
   END
   IF (OPERAND SIZE=16) THEN
     BP < FRAME POINTER;
   ELSE
     EBP < FRAME POINTER;
   IF ADRESS SIZE=16 THEN
     SP < SP-FIRST OPERAND;
   ELSE
     ESP < ESP-FIRST OPERAND;
			   :
ENTER  ᮧ	ࠬ  ⥪,  ॡ㥬   設⢮   몮
᮪ ஢  筮 ன.  ࠭  ⫨砥
⢮ ⮢ ᪮ ,  ᯮ	  ⥪
 室 ணࠬ. ன ࠭  ᪨  
஢ (0-31) ணࠬ  筨    몠	᮪
஢.  । ᫮ 祪 ⥪ ࠬ, 㥬  
 ࠬ ⥪  ।饩 ࠬ ⥪. BP (  EBP,  ᫨
ਧ ࠧ ࠭ 32 )-⥪騩 㪠⥫ ࠬ ⥪.

			    - 239 -
   ᫨ ਧ ࠧ ࠭-16 ,  ᯮ BP
 㪠⥫ ࠬ,  SP  㪠⥫ ⥪.
   ᫨ ࠧ ࠭ 32 ,   ᯮ	EBP  
㪠⥫ ࠬ,  ESP  㪠⥫  ⥪.
   ᫨ ன ࠭-0, ENTER 뫠 㪠⥫ ࠬ (BP 
EBP)  ⥪. ENTER ⮣ ⠥  ࠭    㪠⥫
⥪    ⠭  㪠⥫  ࠬ    ⥪饥	祭
㪠⥫ ⥪.
:
       ENTER	12,0
ਬ, 楤  12-  ⠬  쭮  ६  㤥
 ENTER 12  0 ( ਢ ENTER 12  0)  
 室   LEAVE-  ।    RET.  12  
⮢   ⥫쭮 ᬥ饭  㪠⥫ ࠬ.
 :
 5 ⠪⮢;  0,2   20 
:
   ⢮.
   :
.
   :
᪫祭   0,   ᫨	 ⭮    ᫨誮    讥,    ⮡
ᮮ⢥⢮   ॣ,   祭    AL|AX|EAX.    
᪫祭 0  訡  뫠  ⥪. 㣨  ᪫祭
⠪ ,    ADD.
    8086.
᪫⥫쭠  " ⠭⭮ " (᪫祭  13)
    	訡	0000h.	HLT    ਢ஢
,    믮 ⮫쪮  ਮ  0.
 ० 㠫쭮 8086 80386 ࠡ⠥  ஢ ਢ 3.

			    - 240 -
	       ͻ
	       HLT	   ⠭  뢠
	       ͼ
			    :
	HALT	     1 1 1 1 0 1 0 0
			    :
	 室  ﭨ ⠭.
			   :
    㣨   믮      ,	  
祭  뢠        ,         
⠭. ᪨㥬  뢠  (뢮  INTR)    
㧭. ᪨㥬 뢠 ᥣ 㧭.
:
       HLT
   HALT 80386 ⠭ ।     ,  
뢠  ᯮ.   筮  ᯮ㥬  ⮫쪮
      㣮  ࠡ,	  ⥬   
믮   ,   㯨 譥 뢠.
 :
		 5 ⠪⮢; 0,25   20 .
:
   ⢮.
   :
.
   :
᪫⥫쭠  " ⠭⭮  "      
訡 0000h, ᫨ ⥪騩 ஢ ਢ  0.
    8086.
᪫⥫쭠  " ⠭⭮ " (᪫祭  13)
    	訡	0000h.	HLT    ਢ஢
,    믮 ⮫쪮  ਮ  0.
 ० 㠫쭮 8086 80386 ࠡ⠥  ஢ ਢ 3.

			    - 241 -
	   ͻ
	   IDIV	       () 
	   ͼ
			    :
       IDIV		     0	      1
		       1 1 1 1 0 1 1 w	mod: 1 1 0 r/m
			    :
	AL|AX|EAX < AX|DX:AX|EDX:EAX	/ SOURCE;
		      (⭮  )
	AH|DX|EDX < REMAINDER;
			   :
  IDIV 믮  .  ࠭ 뢠 ⥫.
 ᨬ  ࠧ ࠭, .. BYTE,  WORD    DWORD,
 IDIV ᯮ ॣ() AX|DX:AX|EDX:EAX  筨
,  ॣ AL|AX|EAX   ⭮.    AH|DX|EDX
ᮤন ⮪ .
:
      IDIV    ECX
᫨ EDX=000005D2h  EAX=60F40000h,  	ECX=00BC5200h,	⮣  
१  IDIV EAX=00075A00h  (⭮),  EDX=00000000h
(⮪). ECX  .
 :
⢮ ६, ॡ㥬  믮 ,  
ࠧ .
16-⮢ :	 19 ⠪⮢;  0,95   20 
32-⮢ :	 27 ⠪⮢;  1,35   20 
62-⮢ :	 43 ⠪;   2,15   20 
:
OF  CF ,   ᠭ    ਫ A. SF,ZF,AF  PF
।. 㣨 䫠  .
   :
뢠   0,   ᫨	 ⭮    ᫨誮    讥,    ⮡
ᮮ⢥⢮   ॣ,   祭    AL|AX|EAX.    
᪫祭   0	 	訡	  	뫠        ⥪.
㣨 ᪫祭 ⠪ ,    ADD.
   :
᪫祭  (᪫祭 0), ᫨ ⭮ ᫨誮 讥,
⮡ ᮮ⢥⢮  ॣ,  祭  AL|AX|EAX.  
᪫祭 0  訡  뫠  ⥪. 㣨  ᪫祭
⠪ ,    ADD.
    8086.
. ᪫祭 饭 ०.

			    - 242 -
	  ͻ
	  IMUL 	         㬭
	  ͼ
			    .
IMUL
		       0		  1        2
		 - - - - - - - -  - - - - - - - -  - - - - - - -
-
/	 0 0 0 0 1 1 1 1  1 0 1 0 1 1 1 1  md: reg : r/m
AL|AX|EAX c
/	 1 1 1 1 0 1 1 w   md: 1 1 0 r/m
(⪮
 ஢)
/	 0 1 1 0 1 0 s 1   md: reg : r/m
।⢥
࠭  
				   ।⢥ -
				   ()  ()
				   .

			    .
     DESTINATION < DESTINATION * SOURCE;  ( 㬭)
:
 DESTINATION  <  DESTINATION	*  IMMEDIATE   DATA;   (
						       㬭)
			   .
IMUL  믮    㬭.      
,     .
.
    IMUL    , D
᫨ ECX=00000034h,  EDX=FFFFFF52h, ⮣  १  
IMUL ECX ᢠ FFFFDCA8h.
 .
IMUL ᯮ  ࠭  砭.  筮  ⢮
横, ॡ㥬  襭 믮 ,   
樨 饣   ⨬饬 㬭⥫.
 - :     9-41 ⠪⮢;  0.45-2.05 ,  20 .
 - :      12-44 ⠪⮢; 0.6-2.2 ,  20 .
	- :     12-44 ⠪⮢; 0.6-2.2 ,  20 .
।⢥
࠭ - :     9-38 ⠪⮢;  0.45-1.9  ,  20 .
।⢥
࠭ - :      12-41 ⠪⮢; 0.6-2.05 ,  20 .
.
OF  CF ,   ᠭ    ਫ A. SF,ZF,AF  PF
।. 㣨 䫠  .
   .
      ,    樨 DD.
   .
      ,    樨 DD.
    8086.
      ,    樨 DD.

			    - 243 -
	      ͻ
	      IN	  室   /뢮
	      ͼ
			    :
	IN
 ।⢥	   1 1 1 0 0 1 0 w  8-⮢  
 (00-FFh)
 ,  DX    1 1 1 0 1 1 0 w
(0000-FFFFh)
			    :
   [PORT DX] < SOURCE;    (室 )
			   :
࠭   ,   DX  ॣ஬    
।⢥  .  ࠭        AL|AX|EAX   
ᨬ  ࠧ	࠭    ப:  BYTE,  WORD,
DWORD.
 ᥣ 㯭  ॠ쭮 ०.   饭  ०
  ᥣ ࠧ襭,  CPL < IOPL.  CPL > IOPL
 饭 ०, ࠧ襭  /뢮  ⮢  ᨢ
࠭稢, ᫨  ࠧ襭.  ᮮ⢥騥 
⮢ ᨢ  ࠧ襭  /뢮      0  
த /뢮.  ० 㠫쭮	8086  ࠧ襭
/뢮 ⮢ ᨢ ᥣ ।, ᫨  IN
ࠧ襭.
:
       IN	;  ࠭  

			    - 244 -
 :
 ०:
।⢥ :	12 ⠪⮢;  0,6   20 
६ :	13 ⠪⮢;  0.65   20 
饭 ०, CPL < IOPL
।⢥ :	6 ⠪⮢; 0.3   20 
६ :	7 ⠪⮢; 0.35   20 
饭 ०, CPL > IOPL
।⢥ : 26 ⠪⮢; 1.3   20 
६ :       27 ⠪⮢; 1.35   20 
 㠫 8086:
।⢥ : 26 ⠪⮢; 1.3   20 
६ :       17 ⠪⮢; 1.35   20 
:
   ⢮.
   .
 ,    樨 DD.
   :
᫨ CPL > IOPL, ࠧ襭 /뢮 ⮢ ᨢ 
  /뢮    ⢮  ⮢	 ⮢.
㣨 ᪫祭 ⠪     ADD.
    8086:
襭  /뢮  ⮢  ᨢ      
/뢮     ⢮   ⮢	⮢.   㣨
᪫祭 ⠪     ADD.

			    - 245 -
	       ͻ
	       INC		  祭  1
	       ͼ
			    :
	INC			  0 	     1
/		      1 1 1 1 1 1 1 w  mod: 0 0 0 : r/m
 (WORD  DWORD)
(⪮ ஢)	      0 1 0 0 0 : reg

			    :
   ਥ < ਥ+1
			   :
INC  1  ࠭. INC, ,     CF.
⮡ ⢮ ⠪   CF, ᯮ   ADD  
।⢥ 稭 1.
:
       INC   EBX
᫨ EBX=FFAD9034h,   १ ᠭ     INC
EBX ਯ뢠 祭 FFAD9035h.
 :
祭 :	2 ⠪;  0,1   20 
祭 :	6 ⠪⮢;  0,3   20 
:
OF, CF, SF, ZF, AF,  PF ,  ᠭ  ਫ  .
㣨 䫠  .
   :
 ,    ADD.
   :
 ,    ADD.
    8086:
 ,    ADD.

			    - 246 -
  ͻ
  INSB/INSW/INSD   室 ப    /뢮
  ͼ
			    :
	INSB/INSW/INSD	1 0 1 0 0 1 1 w

			    :
   [PORT DX] < [SOURCE];    (室 )
   IF (ADRESSSIZE = 32) THEN
     ADJUST EDI;
   ELSE      (adresssize = 16)
     ADJUST DI;
			   :
࠭   ,   DX  ॣ஬,    ப
 ਥ. ⠥,  ப  筨    
ᨢ BYTE, WORD, DWORD,   ᨬ  	ࠧ  ࠭
 ப.  ᫥	⮣,      ந,  
ॣ ਥ ⮬᪨  த  (㬥蠥  
㢥稢 ᮣ᭮ DF)  ᫮, ࠢ ࠧ ࠭.
᫨ ࠧ     -	  ,  ࠭  ப
ਥ  -  ES:[EDI].    ⨢  砥  ࠭	ES:[DI].
㧪 ࠢ  ᥫ ந室 । 믮
INS.
:
       INS	;  ࠭ .   DX

REP    INSD	; ७ INS   ,  ECX  祭
᪮  ॣ 筨    㦥  
ᯮ짮  ⮩  ,  INSB/W/D  	 横   
ᯮ  ᪮쪨 権.
 :
 ०:
騩:  15 ⠪⮢;  0,75   20 
騩:	  13+6n ⠪⮢;  0.65+0.3n   20 
饭 ०, CPL < IOPL
騩:  9 ⠪⮢;  0,45   20 
騩:	  7+6n ⠪⮢;	0.35+0.3n   20 
饭 ०, CPL > IOPL
騩:  29 ⠪⮢;  1,45   20 
騩:	  27+6n ⠪⮢;  1.35+0.3n   20 
 㠫 8086:
騩:  29 ⠪⮢;  1,45   20 
騩:	  27+6n ⠪⮢;  1.35+0.3n   20 
n - ᫮ 믮塞 権.
:
   ⢮.
   .
 ,    樨 DD.
   :
᫨ CPL > IOPL, ࠧ襭 /뢮 ⮢ ᨢ 
  /뢮    ⢮  ⮢	 ⮢.
㣨 ᪫祭 ⠪     ADD.
    8086:
襭  /뢮  ⮢  ᨢ      
/뢮     ⢮   ⮢	⮢.   㣨
᪫祭 ⠪     ADD.

			    - 247 -
	 ͻ
	 INT 3 	뢠 3 (窠 뢠)
	 ͼ
			    :
	INT 3	      1 1 0 0 1 1 0 0

			    :
	뢠 3.
			   :
   INT 3 뢠 뢠 3.    믮塞  
 室 窮 ணࠬ  뢠  3.    饭
०  ணࠬ 뢠	INT  n	⢨⥫쭠  
IOPL. ,  ⤥쭠  ணࠬ 뢠  INT
3 ᥣ 㯭; 	  ⢨⥫쭠    IOPL.  ⭠
 INT  3	ਣ    樨  祪  뢠  
ॠ樨 ணࠬ ⫠ (⫠ ணࠬ).
:
INT 3	  ;뢠 3; ஫쭠 窠 뢠
  :
   .  INT n.
 :
		33 ⠪; 1,65   20 .
:
  ⢮.  䫠  .
   :
.
   :
᪫祭 ⨯ "⪠ ࠭" (᪫祭 14)      
訡 ⪠ ,  ⪠ ࠭   ᮬ 
ॣ CR2.
    8086.
.    .

			    - 248 -
	 ͻ
	 INTO		 뢠 4, ᫨ ९
	 ͼ
			    ଠ:
       INTO	    1 1 0 0 1 1 1 0

			    :
	IF ( OF=1) THEN
	 INTERRUPT 4;
			   :
INTO ᪠ ⥪饥 뢠   砥  ९.  ᫨
OF=1,  INTO 믮,  ⢨  ந.	INTO  
⢨⥫쭠  IOPL, ⮬ ᥣ 㯭;	    
祭    ਪ   ணࠬ      	⥪饣
९.
:
INTO	; 뢠 4, ᫨ 䫠 ९ ⠭.
  :
.  INT n.
 :
᫨ 뢠  : 3 ⠪; 0.15   20 
᫨ 뢠 4 : 35 ⠪⮢; 0.5   20 
:
  ⢮.  䫠  .
   :
뢠 4, ᫨ OF=1.
   :
뢠  4,	᫨  OF=1.  ᪫祭  ⨯  "⪠  ࠭"
(᪫祭 14)        訡  ⪠  ,	  ⪠
࠭   ᮬ  ॣ CR2.
    8086.
.    .

			    - 249 -
		ͻ
		INT n		    뢠 n
		ͼ
			    :
	INT n		    0	      1
			0 1 1 0 0 0 1 0        n

			    :
	PUSH EFLAGS;
	PUSH CS;
	PUSH EIP;
	RELOAD EIP FROM OPERAND;    (  ४⥫ n)
	RELOAD CS FROM OPERAND;     (  ४⥫ n)
	CLEAR INTERRUPT FLAG IN EFLAG REGISTER;
			   :
    INT n     	ॠ쭮  ०      ०
㠫쭮 8086, 㪠⥫      ॣ  	ᥣ
㦠  ⥪.    뢠    ॣ  䫠  ᥭ,
⮬ ᫥騥 뢠   ᯮ.    㪠⥫
, ⠪  ॣ  ᥣ 	⮬  砥  
묨 稭      뢠    ⮣,  ⮡
 믮 㦨饩 ணࠬ.
 砥,  INT n   饭 ०,  ⢨,
믮塞 80386,   쭮 ᫮묨  ᮮ⢥⢨ 
  3 ﭨ ᥫ ਥ:
1) ४⥫ 맮    ᥣ      ஢  ⥪饩
   ਢ (DPL=CPL);
2) ४⥫ 맮  ᥣ    襩  ਢ
   (DPL<CPL);
3) ४⥫ .
:
INT 34h   ; १   ४⥫ 34h (52 dec)
  :
 :
    뢠   	    ।	 
    ਯ 뢠 (IDT)  ELSE	᪫⥫쭠	
    " ⠭⭮ " ( 訡   ; 8 + 2 +
     EXT).
   ࠢ 㯠 ४⥫ (AR)  
   ४⥫ 뢠, ४⥫ ७ 뢠
    ४⥫  ELSE ᪫⥫쭠	 "
   ⠭⭮ " ( 訡   ;  8  +  2  +
   EXT).
  IF ணࠬ 뢠 (.. 맢 INT 3, INTO, INT n)
  THEN

			    - 250 -
     IF  ਯ  ४⥫  DPL  	  >CPL  ELSE
     ᪫⥫쭠  " ⠭⭮ " ( 訡
       *8 + 2 + EXT).
  ४⥫  ⢮ ELSE ᪫⥫쭠 
  " " ( 訡   + 2 + EXT).
  IF  ४⥫  ७  뢠  OR   ४⥫
  뢠
  THEN go to (३)    	
  .
  ELSE go to  ४⥫ .
    :
  ஢ CS ᥫ  ਯ,  ᠭ    ਯ
  ४⥫.
      㫥 ELSE ᪫⥫쭠  "
  ⠭⭮ " ( 訡  EXT).
    ᥫ       	।   	 ⠡
  ਯ  ELSE  ᪫⥫쭠    "   ⠭⭮
  " ( 訡 ᥫ + EXT)
   ࠢ 㯠 ਯ (AR)    ᥣ
   ELSE ᪫⥫쭠  " ⠭⭮ " (
  訡 ᥫ ᥣ⭮  + EXT).
   	 ⢮ ELSE ᪫⥫쭠 
  " " ( 訡 ᥫ + EXT).
  IF ᥣ  ᮮ⢥騩 AND ᥣ  DPL < CPL
  THEN go to     
  ELSE
  IF ((ᥣ ᮮ⢥騩 AND ᥣ  DPL  <	CPL)  OR
  (ᥣ DPL=CPL))
  THEN go to      
  ELSE ᪫⥫쭠    "  ⠭⭮  "  (
  訡 ᥫ ᥣ⭮  + EXT).
    
 ᥫ  ਯ   ⥪  ⥪饬 TSS:
     㫥 ELSE ᪫⥫쭠  "
 ⠭⭮ " ( 訡  EXT).
    ᥫ         ।   	⠡
 ਯ  ELSE  ᪫⥫쭠    "   ⠭⭮
 " ( 訡 ᥫ + EXT)
   RPL		=  DPL	ᥣ  	ELSE  ᪫祭
 "⨬ TSS" ( 訡 ᥫ ᥣ ⥪ + EXT)
  ⥪ DPL  = DPL ᥣ  ELSE ᪫祭
 "⨬ TSS" ( 訡 ᥫ ᥣ ⥪ + EXT)
  ࠢ 㯠 ਯ  (AR)    ࠧ  
 ᥣ  ELSE  ᪫祭   "⨬  TSS"  (   訡
 ᥫ  ᥣ ⥪ + EXT)
   ⥪    ⢮  ELSE  ᪫祭   "⪠
 ⥪"(   訡  ᥫ  ᥣ ⥪ + EXT)
IF 32-⮢ ४⥫
 THEN    ⥪          20  ⮢   ELSE
 ᪫祭 "⪠ ⥪" ( 訡 0000h).
 ELSE    ⥪          10  ⮢   ELSE
 ᪫祭 "⪠ ⥪" (  訡  0000h).(᫨  16-⮢
 ४⥫)
⥫     । CS ELSE ᪫祭  "
⠭⭮ " ( 訡 0000h)
㧨  SS  ESP, ⫨騩  TSS.

			    - 251 -
IF 32-⮢ ४⥫
 THEN 㧨 CS  EIP  ४⥫
 ELSE  㧨  CS      IP	   ४⥫   (16-⮢
 ४⥫)
㧨 ਯ ᥣ    ਯ CS.
㧨 ਯ ᥣ    ਯ SS.
IF 32-⮢ ४⥫
 THEN
   	⥪  (  㪠⥫        ⥪)
 ( 6   8)
   ⥪ (EFLAG).
   ⥪ ( 㪠⥫  ) (
 6   8)
ELSE (16-⮢ ४⥫)
   ⥪  (	㪠⥫      ⥪)  (4
 )
   ⥪ (EFLAG).
   ⥪ ( 㪠⥫  ) (4 )
⠭ CPL  ᥣ   DPL.
⠭  RPL ॣ CS  CPL.
IF ४⥫ 뢠, then   뢠  (IF)
 EFLAG. ( 뢠)
  蠣 ७ 뢠 (TF)  EFLAG.
    (NT)  EFLAG.
뢠  ० 㠫쭮 8086.
TempEFLAGS :=EFLAGS.
 䫠 ० 㠫쭮 8086 (VM)  EFLAG. (뢠
뢠 室  ० 㠫쭮 8086)
  蠣 ७ 뢠 (TF)  EFLAG.
IF 㦨 १ ४⥫ 뢠 THEN 
 뢠  (IF)  EFLAG.
Temp SS := SS.
Temp ESP := ESP.
SS := TSS.SS0.	(  ᥣ  ⥪,    ࠭  
 ﭨ ,  ஢ 0)
ESP := TSS.ESP.( 㪠⥫ ⥪,    ࠭  
 ﭨ ,  ஢ 0)
  ⥪ (GS). ( 2   4)
  ⥪ (FS). ( 2   4)
  ⥪ (DS). ( 2   4)
  ⥪ (ES). ( 2   4)
GS :=0.
FS :=0.
DS :=0.
ES :=0.
  ⥪ (TempSS). ( 2   4)
  ⥪ (TempESP).
  ⥪ (TempEFLAGS).
  ⥪ (CS). ( 2   4)
  ⥪ (EIP).
㧨 CS:EIP  ४⥫ 뢠.
( 믮 ணࠬ 뢠  饭 ०)

			    - 252 -
     :
IF 32-⮢ ४⥫
THEN । ⥪饣 ⥪   饭	  ⥪
10  ELSE ᪫祭 "⪠ ⥪" ( 訡 0000h).
ELSE । ⥪饣 ⥪   饭	  ⥪
6  ELSE ᪫祭 "⪠ ⥪" ( 訡 0000h).
IF 뢠 뫮  맢  ᪫⥫쭮  樥	  
訡
THEN । ⥪   饭    ⥪  2-
 ELSE ᪫祭 "⪠ ⥪" ( 訡 0000h).
⥫       ।  ᥣ    ELSE
᪫祭 " ⠭⭮ " ( 訡 0000h).
IF 32-⮢ ४⥫
   THEN
      ⥪(EFLAG).
      ⥪ ( 㪠⥫  ) (6 
      8)
    㧨 CS:EIP  ४⥫.
   ELSE (16-⮢ ४⥫)
      ⥪(EFLAG).
      ⥪ ( 㪠⥫  ) 4 
    㧨 CS:IP  ४⥫.
㧨 ਯ ᥣ    ਯ CS.
⠭  RPL ॣ CS  CPL.
IF ४⥫ 뢠, then   뢠  (IF)
 EFLAG. ( 뢠).
  蠣 ७ 뢠 (TF)  EFLAG.
    (NT)  EFLAG.
 :
஢ ᥫ TSS, ᠭ  ४⥫ :
  ।  쭮 ਯ (GDT)   
   (TI) ELSE ᪫祭 "⨬ TSS (
 訡 ᥫ TSS).
     । GDT ELSE ᪫祭 "⨬
 TSS ( 訡 ᥫ TSS)
   ࠢ  㯠	ਯ  TSS        ⫨
  TSS ELSE ᪫祭 "⨬ TSS" ( 訡
 ᥫ TSS).
  ﭨ    ⢮	ELSE  ᪫祭
 " " ( 訡 ᥫ TSS).
  ( , ⠭  NT  EFLAG)
 , ᠭ ᥫ஬ TSS.
IF 뢠 뫮 맢 ⪠   訡
THEN
 । ⥪   饭    ⥪  2-
  ELSE ᪫祭 "⪠ ⥪" ( 訡 0000h).
   ⥪  訡.
EIP        ।	ᥣ  	ELSE  ᪫祭
"⨬ TSS" ( 訡 0000h).
:
     ,  ४⥫    
  饭 ०.

			    - 253 -
   :
뢠 13  , ᫨    ࠭    
 ᯮ⥫ ᮬ, 訬, 祬 FFFFh   ᥣ
CS, DS, ES, FS  GS. 뢠 12    ,  ᫨  
  ࠭         ᯮ⥫	ᮬ,
訬, 祬 FFFFh  ⥪ ᥣ SS.
   :
᪫⥫쭠	   " ⠭⭮  "   (᪫祭
13)     訡  0000h   ࠭	ᥣ⮢  
CS, DS, ES,  FS    GS,  ᫨  ࠭   筨	 
⠥  ᥣ⮬  ,    ᫨        ࠭
   ᯮ⥫   ᮬ      ।	ᥣ.
᪫祭  ⥪      訡  0000h	  ࠭	
ᥣ   ⥪,   ᫨          ࠭	 
ᯮ⥫ ᮬ  । ᥣ. ᪫祭 ⥪	
 訡 ᥫ	ᥣ    ,  ᫨  ࠭	
 室  ᥣ SS  ન஢,    騩.
᪫⥫쭠	  "  "  (᪫祭  11)
    訡 ᥫ  ᥣ,  ᫨  ࠭	
	室    ᥣ	DS,  ES,   FS,	 GS      ⬥祭
騬. ᪫⥫쭠  " "
    訡 ᥫ  ᥣ,  ᫨  ࠭	
	室    ᥣ	DS,  ES,   FS,	 GS      ⬥祭
騬.   ᪫⥫쭠      "⪠    ࠭"
(᪫祭 14)   訡   ⪠  	  ᮬ
⪠ 室  ॣ CR2. ᪫⥫쭠  
ﭨ  (᪫祭 10)      訡  ᥫ  
ᮣᮢ⥩   ﭨ    ,  ᫨
⢮ ४⥫ .
    8086:
 ,    饭  ०,      饭
०  ஢ ਢ 0. ଠ ⥪  ஢ ਢ
0 ᫥ ᪫祭 (   訡)    뢠  (  
訡)   .12.2. ᪫⥫쭠  "⪠"
࠭"   訡  ⪠     ᮬ  ⪠
室  ॣ CR2.
