                         2 

                            N 6

              _     

      ᬥ蠭 ணࠬ஢  몥 ᮪  ஢  
ᥬ  ४᭮ 室 ࡮ .  ꥤ  -
ᥬ     ।ᬮ७  ,  楫   堭.
।⢮ ஥ ᥬ  ࡮  ᯥ稢  
㤮 ᯮᮡ  祭   ᥬ  ।⢥  
㭪 .  ,  ।⠥  ணࠬ஢  -
ᥬ ᯮ짮 ⤥  㫨,  楫  ᠭ  
⮬  몥,  ⠪ 㫨  ᥬ஢ ⤥쭮,  ⥬
  ணࠬ ࡮ .
     ஥ ᥬ  -       ,   
⠢ ࠪ᪨   ᥬ  ணࠬ  .
      ࠧ,  ࡮  㦨 祢 ᫮  asm,
㪠뢠饥,   ப ᥬ,  頥  ப
ᥬ ।⢥  ᪮஢    -
:  뫪    ६   ८ࠧ  ᮮ⢥騩
  ᥬ.  ।ᬮ७   ꥤ
権  ஥ ᥬ    ᯮ짮 -
樨 asm {...} .

     ࡮    ᢮  ⠪ ࠧ, ⮡ 
 ⥭樠쭮  ⢨  ஥  ᥬ-
஬.    ,  ࠢ쭮 㭪樮騩 ஥ 
ᥬ ।  ਢ  쥧 訡. 
訡  ஥  ᥬ ࠧ  ,  祬
 ணࠬ, 楫 ᠭ  ᥬ, ᪮ ࡮ 
  ᥡ ⢮ 祩,  ⠪,    室    㭪樨 
室  , । ࠬ஢  뤥   ६-
.
.
                              - 2 -

                 ࠡ⠥ ஥ ᥬ

     筮 ࡮    䠩  室    
몥      ꥪ  䠩,  ⥬ 뢠 ⨫ TLINK 
 ꥪ 䠩  믮塞 ணࠬ.

	       Ŀ
	          室 䠩  몥    
	       
			       V
			ͻ
			  ࡮         
			ͼ
			       V
	       Ŀ
	               ꥪ 䠩         
	       
			       V
			ͻ
			    TLINK         
			ͼ
			       V
	       Ŀ
	               믮塞 䠩       
	       

          . 1  樨   ࡮ .

       ᯮ짮 ஥ ᥬ ࡮  -
  横 樨   ⥫ 蠣.
      ࠡ⪥ ࡮   ,  ᮤন -
   ᥬ, ᭠砫     室-
 䠩  몥 ᥬ,  ⥬  ࠭樨  祭
 ᥬ  ꥪ  뢠 ࡮ ᥬ. ᫥
⮣   ꥪ 䠩 뢠  ⨫  TLINK.
.
                              - 3 -


	       Ŀ
	          室 䠩  몥    
	       
			       V
			ͻ
			  ࡮         
			ͼ
			       V
	       Ŀ
	         室 䠩  ᥬ  
	       
			       V
		      ͻ
		       ࡮ ᥬ    ᥬ஢
		      ͼ
			       V
	       Ŀ
	               ꥪ 䠩         
	       
			       V
			ͻ
			    TLINK         
			ͼ
			       V
	       Ŀ
	               믮塞 䠩       
	       

 . 2.  樨, ᥬ஢   ࡮ .

     ஥  ᥬ  । ࡮    䠩
 몥 ᥬ.  ࡮   㦭 祣   ᥬ-
஢  ஥  ,    ⮣  ࡮   
室  몠   ஢ ᥬ,    ⥬  
࡮ ᥬ 믮 ࠭.
     筮 ࡮   室   ।⢥  
ꥪ  .   ᪮쪮 ᯮᮡ,   
 ᮮ ࡮ ,  㦭 ন ஥ ᥬ-
  ⥬  樨    ᥬ  ᫥饣 맮
⨫ TLINK.
     ࠬ  ப -s 㪠뢠 ࡮ ,    㦭
࠭᫨஢  室     ᥬ, ᫥ 祣 ४-
 ࠡ.   ७ .ASM,  ᣥ஢  ࡮  
  ᯮ짮  ࠬ -s,  ⤥쭮 ᥬ஢ 
᪮  㣨 ﬨ    ᥬ.
     ࠬ -b  ⠢  ணࠬ  C ४⨢:
#pragma inline

                              - 4 -

㪠뢠 ࡮ ,    㦭 믮 ࠭  ᥬ,
 ⥬  祭 ꥪ⭮   맢  ࡮  ᥬ.
  㪠  #pragma inline      砫
室  몠 ,  ⠪      室  몠 ,
᫥  ᫥ ᫥  ४⨢,  㤥 -
 :  ࠧ  筮 ०,    㣮 ࠧ  ०
 -> ᥬ.

		஥  ࡮ ᥬ

     ஥  ᥬ  室    ᥣ 
 ᥣ  ࡮ .  ᥬ, ࠧ饭  㭪-
樨, ᥬ  ᥣ  ࡮ ,    ஥  ,
ࠧ饭  㭪樨,  ᥬ    ᥣ  ࡮
.

     ਬ, ணࠬ:

//  ⮢ 祭
asm SquareLookUpTable   label  word;
asm dw  0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100;

// 㭪  ᪠  祭  0  10
int LookUpSquare(int Value)
{
asm mov bx,Value; //  祭    
asm shl bx,1; // 㬭  2  ᪠  ⠡ ⮢ ࠧ஬  ᫮
asm mov ax,[SquareLookUpTable+bx]; //   ⠡
return(_AX);
}

頥   ⠡ SquareLookUpTable    ᥣ  
࡮  ,    ஥   ᥬ  LookUpTable  ᥣ
 ࡮ .  ࠢ ᯥ宬   뫮    
ᥣ  .  ᬮਬ  ᫥    LookUpSquare,  
SquareLookUpTable 室  ᥣ  ࡮ :

int LookUpSquare(int Value)
{
  asm  jmp   SkipAroundData /* ய ⠡  */
  asm  SquareLookUpTable   label  word;
  asm  dw  0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100;
SkipAroundData:
  asm  mov bx,Value;
  asm  shl bx,1;
  asm  mov ax,[SquareLookUpTable+bx];
return(_AX);
}

                              - 5 -

       SquareLookUpTable 室  ⠡  ࡮ ,
  ⮡     뫮 뢠,   ॡ -
짮 䨪 ८। ᥣ CS:.  ᪨  
㯠   SquareLookUpTable   ⮬᪨ ᥬ-
  䨪ᮬ CS:. ࡮   ४    ᥬ-
,  ⮡  ࡮  ᥬ  ,   ᥣ 室
SquareLookUpTable,  ࡮ ᥬ ⥬  室
䨪 ८। ᥣ⮢.

        ଠ ஥ ஢  몥 ᥬ

     ஥   몥 ᥬ   宦 
 ப ᥬ,  稭  祢 ᫮ asm.
     窠  ⮩  ⫨稥  㣨 ஢     -
 ஥  ᥬ    易⥫쭮,  
 ᯮ짮   襭.
     ஢  ஥  ᥬ    ⮫쪮  
 ਥ .
       ࠭  ᮤঠ  뫪    ᨬ᪨
   ६ .

          饭  ⠬ /ꥤ

     ஥  ᥬ  뫠 ।⢥ 
 . ਬ,  ᫥饬 ࠣ ணࠬ:
    .
    .
struct  Student {
    char Teacher[30];
    int  Grade;
    } JohnQPublic;
    .
    .
asm   mov  ax,JohnQPublic.Grade;
    .
    .
 ॣ AX  㦠  ᮤন    Grade  
JohnQPublic ⨯ Student.
     ஥  ᥬ  ⠪   ⠬
,      ⭮⥫쭮   ᭮
ॣ. ਬ:

asm   mov   bx,OFFSET JohnQPublic;
asm   mov   ax,[bx].Grade;
.
                              - 6 -

       ॣ AX ⠪ 㦠  Grade 
JohnQPublic.  ᪮  Grade  室    Student 
ᬥ饭 30, ᫥ ਬ  ᠬ  ਭ :
asm   mov   bx,OFFSET JohnQPublic;
asm   mov   ax,[bx]+30

         ⠬    ⭮⥫쭮
ॣ-㪠⥫  筮  ।⢮, -
騬  ஥  ᥬ ࠡ  ᨢ   -
ࠬ  ᯮ짮 㪠⥫  .

           ࠭祭 樨  ࠭  

     ⢥ , ஥ ࡮     
஥ ᥬ, ⮨  ८ࠧ 뫮  
   (ਬ,  ६  ᮢ 室) 
 ।⠢    ᮮ⢥騩   ᥬ.
    ࠭祭:    室
஥  ᥬ    뫠 ⮫쪮  ⪨ ,  
   뫠     㣮,  ஬  ⮪
몠 .
     ⨬,    맮  ணࠬ    ⠥ 室,
⮬  ⢥ ࠭  맮 㭪樨     樨
஥ ᥬ  㪠뢠  㭪権     ⪨
ᥬ,   ⪨ .  ᫨     ஥ ᥬ
 뫪   㭪樨 ,  ।  㭪樨  
㪠뢠 ᨬ ન.

	     ᪨  ६

      ࡮      ஥  ᥬ
뫪         ६  ࠭  
[BP-02],   頥     祭
ࠧ (⨯ WORD PTR  BYTE PTR).  ⮬    饭  
᪮ 쭮 ६,   ⢥ 筨 
ਥ ᯮ 祩 , 㦭 㪠뢠 ࠧ -
࠭.
     ਬ:

int   i;
    asm   mov   WORD PTR i,0;
    asm   inc   WORD PTR i;

	       室 ࠭ ॣ஢

        ᯮ㥬    ஥  ᥬ-
  ॣ  BP, CS, DS  SS  ᮤঠ   祭,
      ।  砫  믮   ஥

                              - 7 -

ᥬ.  ᮡ ⮣ ࠢ  㤥  ਢ   
਩ 襭 ணࠬ  १㧪 ⥬. 
AX, BX, CX, DX, SI, DI, ES  䫠   ஥  ᥬ 
 ᢮ .


           _    

      ࣠樨 ணࠬ   ࠢ  ᯮᮡ
। ࠬ஢.    ய  ⥬  ࠧࠡ⠭
᪮쪮 ⠪ ᯮᮡ.

       । ࠬ஢ १   

     ⨥  ()  ⭮  , ࠭-
   祩 ,      뢠
ணࠬ,  ணࠬ.   ⮣  ணࠬ,  ணࠬ
     쭮 .   ᯮᮡ ਬ
 ।  讣 ꥬ,    । -
祭  ᮢ⭮ ᯮ짮 ᥬ  몮 ᮪
஢: ꥬ       ॢ  64
.

               । ࠬ஢ १ ॣ

     让 ꥬ      ।  १  ॣ
饣 祭 AX, BX, CX, DX, SI, DI, BP  SP,   ⠪ १
ᥣ ॣ  DS  ES - ᥣ 10 ॣ஢,  १ 
 । 20  ଠ樨.   ᯮᮡ ᯥ稢 -
ᨬ 䥪⨢   ࠡ  訬 ꥬ ,
⠪   ࠡ⠥  ॣࠬ ⥫쭮 ॥,  祬
 .  ᭮  ⮪    ᯮᮡ  砥 
⪨ ࠭祭  ᫮ । ࠬ஢.
     ᬮਬ ⮪   ணࠬ,    ஬  믮
맮 ணࠬ ᫮  楫 ᥫ  ।祩 ࠬ-
஢  ॣ AX  BX. ணࠬ 頥 १ ᫮-
  ॣ AX.
     ࠣ  ᭮ ணࠬ:
	.
	.
	mov   AX,17
	mov   BX,7021
	call  Addition
	.
	.

      ணࠬ:


                              - 8 -

Addition proc near
	add   AX,BX
	ret
Addition endp

               । ࠬ஢ १ ᯥ樠쭮
                    뤥  

     । ࠬ஢    ⢫  १ ᯥ樠쭮
뤥  ,  뢠  ࠬ஢. -
 ணࠬ  ।  맮 ணࠬ 뢠  
᫥⥫  祩    ࠬ஢.  ⥬  砫
 ⮩   ।    ணࠬ  १  ॣ,
    १ ⥪.  । -
    ᬥ 祩     稭 㤮.
 ⠪   楫ᮮࠧ  ।  ணࠬ  
⠡, ᮤঠ饩  ࠬ஢,    ⠡
   .

             । ࠬ஢ १ ᥣ 

      ணࠬ ࠭    ,    ࠧ 
ࠬ஢  ᥣ  ࠧ ᫥  CALL,   砫
  ⮩    ।  १  ⥪.   믮
 CALL,   , 䠪᪨ 騩 ᮬ -
 ࠬ, 砥  ⥪,  ࠢ । ࢮ
 ணࠬ.  ணࠬ      ⥪ 
, ᫥⥫쭮  ࠬ,  ந 室
樨  ⥬, । 맮  RET ஢  -
   ⠪,  ⮡  㪠뢠     ࠬ-
஢,   ᫥  ணࠬ.
      ᯮᮡ ਬ ࠩ ।,  ⠪  ॡ  
ਬ 䨪  ᥣ DS  CS  뢠 -
஢,  ᯮ짮 ⠪ 뢠 "   ",
ᯥ稢饩 ᮢ ᥣ⮢ CS  DS.

                । ࠬ஢ १ ⥪

     । ࠬ஢ १ ⥪ 㤮  ப ਬ 
몠 ᮪ ஢. 뢠 ணࠬ 㦠 ।-
 ࠬ   ⥪ । 믮  CALL.  뢠
ணࠬ 砥  㪠⥫  ⥪    ॣ  SS    SP,
 ⥬  ᮤন ॣ SP  BP  ᯮ -
 ⭮⥫쭮 ॣ஢  SS:BP  뢠 ࠬ஢
 ⥪. ஢ SP  BP 室, ⠪  㪠⥫ ⥪
    ᠬ ணࠬ.  ᫥    -
ணࠬ 뢠 ணࠬ  㤠 ࠬ  ⥪,
 ᮤন SP.

                              - 9 -

     ᬮਬ  ਬ  ।  १  ⥪   16-ࠧ來
ᥫ  ணࠬ,   믮  ᫮  頥
१  ॣ AX.
     ࠣ  ᭮ ணࠬ:
	.
	.
	mov   ax,112
	push  ax
	mov   ax,361
	push  ax
	call  Addition
	.
	.

      ணࠬ:

Addition proc near
	push  bp    ; ࠭ ᮤন BP
	mov   bp,sp
	mov   ax,word ptr [bp+4]
	add   ax,word ptr [bp+6]
	pop   bp    ; ⠭ ᮤন BP
	ret   4     ; 㤠 ࠬ  ⥪
Addition endp

      ணࠬ   ଫ   ᯮ짮
ॣ BP:

Addition proc near
	mov   ax,word ptr [sp+2]
	add   ax,word ptr [sp+4]
	ret   4
Addition endp
