1581, 5/80 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   asdzxc301
   ¾î¼Àºí¸®¾î °­Á 3Æí

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=1136 [º¹»ç]


Á¦ 3Àå »çÄ¢¿¬»ê ¸í·É
--------------------------------------------------------------------------------
°¡°¨½ÂÁ¦ÀÇ »çÄ¢¿¬»êÀ» ÇÒ¼ö°¡ ÀÖÀ¾´Ï´Ù.
´ëºÎºÐÀÇ 8ºñÆ®CPU ¿¡ ¼­´Â °ö¼À ³ª´©¼ÀÀ» ÇÒ¼ö°¡¾ø¾ú´Âµ¥ »çÄ¢¿¬»êÀ» ÇÒ¼ö°¡ ÀÖ°Ô µÈ
°ÍÀº 16 ºñÆ® CPU ÀÇ Å« Ư¡ÀÔ´Ï´Ù.

ADD ¸í·ÉÀÇ »ç¿ë¹ý:
ADD     AX,1234H
ÇöÀçÀÇ AXÀÇ ³»¿ë¿¡ ¼ýÀÚ 1234H °¡ ´õÇÏ¿©¼­ ±× °á°ú¸¦ AX ·¹Áö½ºÅÍ¿¡ ´Ù½Ã ÀúÀå
    +- ¹ü¿ë·¹Áö½ºÅÍ(8/16ºñÆ®)-++- ¹ü¿ë ·¹Áö½ºÅÍ(8/16ºñÆ®)-+
ADD |  ¸Þ¸ð¸®      (  "     ) ||   ¸Þ¸ð¸®      (   "    ) |
    +-                       -++-  ¼ýÀÚ        (   "    )-+
¾çÂÊ ´Ù ¸Þ·Î¸®·Î Á¶ÇյǴ°ÍÀº Çã¿ëµÇÁö¾ÊÀ½´Ï´Ù.
*.ÁÖÀÇ : ¸Þ¸ð¸®¿¡ ¼öÄ¡¸¦ ´õÇÒ¶§¿¡´Â BYTE ȤÀº WORD ÁöÁ¤ÀÌ ÇÊ¿ä
ADD    [BX],12H  --------> ADD   BYTE PTR [BX],12H
ÀÌ·¸°Ô ÇÏ¿© ¹ÙÀÌÆ® ȤÀº ¿öµå¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é ¾ÈµÈ´Ù.
*.ÁÖÀÇ :
AAA     EQU     32H   ´Â AAA °¡ »ó¼öÀ̹ǷΠ[ ¼ýÀÚ ] ÀÌ´Ù.
BBB     DW    5678H ´Â BBB°¡ º¯¼öÀ̸§ À̹ǷΠ¸Þ¸ð¸®¸¦ ³ªÅ¸³»´Â °£Á¢¹æ½ÄÀÇ ÀÏÁ¾

4040H+0102H ¸¦ ´õÇÏ°í ±×°á°ú 4142H ÀÇ 41H ,42H¿¡ ÇØ´çÇÏ´Â ¹®ÀÚ¸¦ Ãâ·ÂÇÑ´Ù.
MAIN    SEGMENT
        ASSUME  CS:MAIN
;
        MOV     BX,4040H
        ADD     BX,0102H
        MOV     DL,BH    ---+»óÀ§ ¹ÙÀÌÆ®
        MOV     AH,2        |
        INT     21H      ---+
        MOV     DL,BL    ---+ÇÏÀ§ ¹ÙÀÌÆ®
        MOV     AH,2        |
        INT     21H      ---+
;
        MOV     AH,4CH   ---+Á¾·ù
        INT     21H      ---+
;
MAIN    ENDS
        END

°á°ú :A>ADD1
        AB
      A>
¾Æ½ºÅ° ÄÚµå 41H ¿¡ ´ëÀÀÇÏ´Â ¹®ÀÚ "A" ¿Í 42H ¿¡ ´ëÀÀÇÏ´Â ¹®ÀÚ "B"°¡ Ç¥½Ã
Á÷Á¢ ¼ýÀÚ¸¦ ¼ýÀÚ·Î Ãâ·ÂÇÏ´Â ¹æ¹ýÀº ¾ø´Â°ÍÀΰ¡ ? ---
MS-DOS½Ã½ºÅÛÈ£Ãâ¿¡ ¼ýÀÚ¸¦ Á÷Á¢ Ãâ·ÂÇÏ´Â ¹æ¹ýÀÌ ÁغñµÇ¾î ÀÖÁö¾ÊÀ¾´Ï´Ù.

Å°ÀÔ·Â ¹æ¹ý
--------------------------------------------------------------------------------
Å°º¸µå·Î ºÎÅÍ Çѹ®ÀÚ¸¦ ÀÔ·ÂÇÒ·Á¸é ,MS-DOS ÀÇ Æã¼ÇÈ£Ãâ(function)ÀÇ 1 ¹øÀ»  »ç¿ëÇÕ
´Ï´Ù.  AH ·¹Áö½ºÅÍ¿¡ 1 À» ¼³Á¤ÇÏ°í Æã¼Ç È£ÃâÀ» ¼öÇàÇϸé, Å°º¸µå·ÎºÎÅÍ ÀÔ·ÂÀÌ ÀÖ
À»¶§ ±îÁö ±â´Ù¸®°í ÀÖ´Ù°¡ ,ÀÔ·ÂµÈ ¹®ÀÚÀÇ ¾Æ½ºÅ°Äڵ带 AL register ·Î µ¹·Á º¸³»ÁÝ
´Ï´Ù.

+------------------------------------------+
|  MOV     AH,1                            |
|  INT     21H                             |
|  AL --------> ÀÔ·ÂµÈ ¹®ÀÚÀÇ ¾Æ½ºÅ°Äڵ堠 |
+------------------------------------------+

MAIN    SEGMENT
        ASSUME  CS:MAIN,DS:MAIN
;
ONE     EQU     1
TOLOWER EQU     'a'-'A' ;»ó¼ö³ª º¯¼öÀÇ Á¤ÀÇ ¼Ó¿¡¼­ µ¡¼À »¬¼ÀÀ» »ç¿ëÇÒ¼öÀÖ´Ù
;
        MOV     AX,MAIN --+DS ¼³Á¤
        MOV     DS,AX   --+
;
        MOV     AH,1    --+Æã¼ÇÈ£Ãâ·Î Å°ÀÔ·ÂµÈ °ªÀÌ AL¿¡ ÀúÀåµÈ´Ù.
        INT     21H       |
        MOV     KEEP,AL  -+1¹®ÀÚÀÔ·ÂÇÏ¿© °á°ú¸¦ KEEP¶ó´Â º¯¼ö¿¡ ÀúÀå
        ADD     AL,ONE    ; ÀÔ·ÂµÈ µ¥ÀÌÅÍ¿¡ 1À» ´õÇÏ°í
        MOV     DL,AL   --+¾Æ½ºÅ° ÄÚµåÀÇ ¹®ÀÚ¸¦ Ãâ·Â
        MOV     AH,2      |
        INT     21H     --+
;
        MOV     DL,KEEP --+2¸¦ ´õÇÑ ¾Æ½ºÅ° ÄÚµåÀÇ ¹®ÀÚ¸¦ Ãâ·Â
        ADD     DL,TWO    |
        MOV     AH,2      |
        INT     21H     --+
;
        MOV     DL,KEEP --+ 20H¸¦ ´õÇÏ¿© ¼Ò¹®ÀÚ·Î º¯È¯ÇÏ¿© Ãâ·Â
        ADD     DL,TOLOWER|
        MOV     AH,2      |
        INT     21H      -+
;
        MOV     AH,4CH  --+
        INT     21H     --+ Á¾·áÇÏ°í OS·Î µ¹¾Æ°£´Ù
;
TWO     DB      2
KEEP    DB      ?      ;´Ü¼øÈ÷ µ¥ÀÌÅ͸¦ ÀúÀåÇϱâÀ§ÇÏ¿©
MAIN    ENDS
        END

'a'-'A'´Â a ¿Í A ÀÇ ¾Æ½ºÅ° ÄÚµåÀÇ Â÷À̸¦ ³ªÅ¸³½´Ù.
'a' ¿¡ ´ëÀÀ ÇÏ´Â ¾Æ½ºÅ° ÄÚµå 61H ·Î ºÎÅÍ 'A' ¿¡ ´ëÀÀÇÏ´Â 41H ¸¦ »«
61H - 41H = 20H ¸¦ ÀÇ¹Ì ÇÕ´Ï´Ù. µû¶ó¼­ TOLOWER ¿¡´Â ¼ýÀÚ 20H °¡ ÀúÀå


µð¹ö°ÅÀÇ »ç¿ë ¿¹¿Í ¿ª¿öµå Çü½Ä
--------------------------------------------------------------------------------
¿¹Á¦
1000H + 1234H¸¦ °è»êÇÏ¿© ANS1¿¡ ÀúÀåÇÑ´Ù.
AMIN    SEGMENT
        ASSUME  CS:MAIN,DS:MAIN
;
        MOV     AX,CS
        MOV     DS,AX
;
        MOV     AX,1000H
        MOV     BX,1234H
        ADD     AX,BX
        MOV     ANS1,AX
;
        MOV     AH,4CH
        INT     21H
;
ANS1    DW      0000    ------> MOV   [0013],AX ·Î ¿ª¾î¼ÀºíµÈ´Ù,Áï º¯¼öANS1Àº
;                              0013H ¹øÁö ÇÒ´çµÇ¾î Àֱ⠶§¹®¿¡
MAIN    ENDS
        END

DEBUG ´Â EXE ¹× COM Çü ½ÇÇà È­ÀÏ À» ·Îµå ÇÏ¿´À» ¶§¿¡´Â ½ÇÇàÇÒ¼öÀÖ´Â »óÅ·Î
·¹Áö½ºÅÍ Á¾·ù¸¦ ¼¼Æ®ÇÏ¿© ´ë±âÇÏ°í ÀÖÀ¾´Ï´Ù
±×¿ÜÀÇ È­ÀÏÀ» ·Îµå ÇÏ¿´À» ¶§´Â ´Ü¼øÈ÷ ·ÎµåÇÏ¿´À»¶§ÀÇ È­ÀÏÀÇ ¼±µÎ ¹øÁö¸¦ CS:IP
¿¡ ³Ö°í ´ë±â ÇÏ°í ÀÖÀ¾´Ï´Ù.

¿ª¾î¼ÀºíµÈ ANS1 º¯¼öÀÇ ¹øÁö 0013 À» º¸¸é  3422 °¡ µé¾î ÀÖ´Ù
¿ª¾î¼Àºí °á°úÀÇ XOR AL,22 ¶ó´Â °ÍÀº ´Ü¼øÈ÷ ÀÌ µ¥ÀÌÅ͸¦ ¸í·ÉÀ¸·Îº¸°í ¿ª¾î¼ÀºíÇØ
¹ö¸°°ÍÀ̹ǷΠ¾Æ¹«Àǹ̰¡ ¾ø´Ù
¿ø·¡ÀÇ ¿¬»ê°á°ú´Â    1000H + 1234H = 2234H  ¶ó°í µÉÅÍÀε¥
               0013H ¹øÁö¿Í 0014H ¹øÁö¿¡´Â 3422 ·Î¼­ ÀúÀåµÇ¾î ÀÖ´Ù´Â °ÍÀÔ´Ï´Ù.
Áï,»óÀ§¿Í ÇÏÀ§°¡ ¼­·Î ¹Ù…R ÇüÅ·Π°á°ú°¡ ÀúÀåµÇ¾î ÀÖÀ½´Ï´Ù.
80 °è¿­CPUÀÇ Æ¯Â¡ÀûÀÎ Çö»óÀ¸ ·Î ,16ºñÆ® ·¹Áö½ºÅÍ »óÀÇ µ¥ÀÌÅÍ(¿öµåµ¥ÀÌÅÍ)¸¦  ¸Þ¸ð
¸®¿¡  Àü¼ÛÇÒ¶§¿¡´Â »óÀ§ ÇÏÀ§ ¹ÙÀÌÆ®°¡ ¹Ù…R´Ù¶ó´Â ±ÔÄ¢ÀÌ Àֱ⠶§¹®ÀÔ´Ï´Ù.
ÀÌ¿Í °°Àº Àü¼Û¹æ½ÄÀ» ¿ª¿öµå Çü½Ä À̶ó°í ÇÕ´Ï´Ù.
¸Þ¸ð¸® »ó¿¡ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ ¶§¿¡´Â  »óÇÏ ¹ÙÀÌÆ®°¡ ¹Ù²î¹Ç·Î ´Ù½Ã ÀÌ°ÍÀ»  ·¹Áö½ºÅÍ
»ó ¿¡ Àü¼ÛÇÒ¶§¿¡´Â ,¶ÇÇÑ »óÇÏ ¹ÙÀÌÆ®°¡ ¹Ù²î¾î¼­ Àü¼ÛµÇ±â ¶§¹®¿¡ ¹Ù¸¥ ÇüÅ·Πµ¥ÀÌ
Å͸¦ Àü¼ÛÇÒ¼ö°¡ ÀÖÀ¾´Ï´Ù.
µû¶ó¼­ ¾î¼Àºí·¯¸¦ »ç¿ëÇÏ¿© ÇÁ·Î±×·¥À» ÀÛ¼ºÇÒ¶§¿¡´Â ¿ª¿öµå·Î µÇ´Â °ÍÀº º°·Î ÀǽÄ
ÇÒÇÊ¿ä°¡ ¾øÀ¾´Ï´Ù.



ÀÚ¸®¿Ã¸²(carry)°ú ADC ¸í·É
--------------------------------------------------------------------------------
16ºñÆ® ·¹Áö½ºÅÍ¿¡ ÀúÀåµÇÁö ¾Ê´Â °ÍÀ» ¹Ì¸® ¾Ë°í ÀÖ´Â °æ¿ì¿¡´Â
2°³ÀÇ 16ºñÆ® ·¹Áö½ºÅ͸¦ »ç¿ëÇÏ¿© 32ºñÆ® ¼ýÀÚ¸¦ Ç¥½Ã ,ÇÏÀ§ 16ºñÆ® ¸¦ µ¡¼ÀÇÒ¶§¿¡
¹ß»ýÇÑ ÀÚ¸®¿Ã¸²( carry ) À» ¾îµò°¡¿¡ ±â¾ïÇØ ³õ°í ,»óÀ§ 16ºñÆ®¸¦ µ¡¼ÀÇÒ¶§  ´õÇØÁÖ
´Â ¹æ¹ýÀ» ÃëÇÕ´Ï´Ù
ÀÚ¸®¿Ã¸²À» ±â¾ïÇÏ´Â Ç÷¡±× ·¹Áö½ºÅÍ ÁßÀÇ Ä³¸® Ç÷¡±×(carry flag)ºñÆ®
µ¡¼ÀÀ» ÇÒ¶§¿¡ ij¸® Ç÷¹±×¸¦ µ¿½Ã¿¡ ´õÇϴ  ADC ¸í·É(ADdition with Carry)
MAIN    SEGMENT
        ASSDUME CS:MAIN,DS:MAIN
;
        MOV     AX,MAIN
        MOV     DS,AX
;
        MOV     AX,1000H
        MOV     BX,8000H
        MOV     CX,2000H
        MOV     CX,8123H
        ADD     BX,DX       ;µÎ°³ÀÇ 16ºñÆ®ÀÇ ÇÕÀ» ±¸ÇÑ´Ù
        ADC     AX,CX       ;À§¿¡¼­ »ý±ä ij¸®±îÁö °í·ÁÇÏ¿© »óÀ§16ºñÆ®ÇÕÀ»±¸ÇÑ´Ù.
        MOV     ANS1,AX
        MOV     ANS2,BX
;
        MOV     AH,4CH
        INT     21H
;
ANS1    DW      0
ANS2    DW      0
;
MAIN    ENDS
        END


µ¥ÀÌÅ͸¦ ±³È¯ÇÏ´Â XCHG ¸í·É
--------------------------------------------------------------------------------
XCHG (exchange) ¸í·ÉÀº 2 °³ÀÇ µ¥ÀÌÅ͸¦ ±³È¯ÇÏ´Â ¸í·É
Á÷Á¢¼ýÀÚ¸¦ ±³È¯ÇÒ¼ö´Â ¾øÀ¾´Ï´Ù.
¸Þ¸ð¸®³¢¸®ÀÇ ±³È¯µµ ºÒ°¡´ÉÇÕ´Ï´Ù.
ù¹ø° µÎ¹ø° ¿ÀÆÛ·£µå´Â ÀÏÄ¡µÇ¾î¾ß ÇÕ´Ï´Ù.

XCHG  +- ¹ü¿ë ·¹Áö½ºÅÍ (8/16ºñÆ®) -+ +- ¹ü¿ë ·¹Áö½ºÅÍ (8/16ºñÆ®)   -+
      +- ¸Þ¸ð¸®        (8/16ºñÆ®) -+, +- ¸Þ¸ð¸®        (8/16ºñÆ®)  -+

MAIN    SEGMENT
        ASSUME  CS:MAIN,DS:DATA
;
        MOV     AX,DATA
        MOV     CS,AX
;
        MOV     AX,1000H
        MOV     BX,8000H
        MOV     CX,2000H
        MOV     CX,8123H
        ADD     BX,DX       ;µÎ°³ÀÇ 16ºñÆ®ÀÇ ÇÕÀ» ±¸ÇÑ´Ù
        ADC     AX,CX       ;À§¿¡¼­ »ý±ä ij¸®±îÁö °í·ÁÇÏ¿© »óÀ§16ºñÆ®ÇÕÀ»±¸ÇÑ´Ù.
        XCHG    AL,AH
        XCHG    BL,BH
        MOV     ANS1,AX
        MOV     ANS2,BX
;
        MOV     AH,4CH
        INT     21H
;
MAIN    ENDS
;
DATA    SEGMENT
ANS1    DW      0
ANS2    DW      0
DATA    ENDS
        END

À̹ø¿¡ ÁÖÀÇ ÇÏÁö ¾ÊÀ¸¸é ¾ÈµÇ´Â °ÍÀº ,Áö±Ý±îÁö¿Í ´Þ¶ó ¼­ µ¥ÀÌÅÍ ¼¼±×¸ÕÆ®°¡ º°µµ·Î
¼³Á¤µÇ¾î ÀÖ´Ù´Â »ç½ÇÀÔ´Ï´Ù.
ÀÌ °æ¿ì¿¡´Â ¾î¼ÀºíÇÒ ¶§¿¡´Â µ¥ÀÌÅÍ ¼¼±×¸ÕÆ®ÀÇ À§Ä¡´Â °áÁ¤µÇÁö ¾Ê°í ,¸µÄ¿¿¡ ÀÇÇØ
»ó´ëÀûÀÎ ¹èÄ¡°¡ Á¤ÇØÁø ´ÙÀ½ ½ÇÇàÇÒ¶§¿¡ Àý´ë ¹øÁö°¡ °áÁ¤µË´Ï´Ù.
µû¶ó¼­ ¾î¼ÀºíÇÒ ¶§¿¡  MOV AX,DATA ¿¡ ´ëÀÀ ÇÏ´Â ºÎºÐÀº  B8 --- R ·ÎµÇ¾î ÀÖÀ¸¹Ç·Î
¸Þ¸ð¸® »ç¿¡ ·Îµå ÇÏ¿´À» ¶§¿¡´Â  MOV AX,2245  ¿Í °°ÀÌ °ªÀÌ °áÁ¤µÇ¾î ÀÖÀ¾´Ï´Ù.
ÀÚ, ¿©±â¿¡¼­ µ¥ÀÌÅ͸¦ º¼·Á¸é ¼¼±×¸ÕÆ® º£À̽º¿Í ¿ÀÇÁ¼Â ¹øÁö¸¦ °°ÀÌ ÁöÁ¤ÇÏ¿©  ³»¿ë
À» Ç¥½Ã ÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
¿ª¾î¼ÀºíÇÑ °á°ú µ¥ÀÌÅÍ ¼¼±×¸ÕÆ®¿¡ ¼¼Æ®µÇ´Â °ªÀº ,2245H ¶ó´Â °ÍÀ» ¾Ë¼öÀÖÀ¾´Ï´Ù.

_D2245:0,F
2245:0000  00 00 00 00 F4 75 10 8B - 7E EE 39 3E 42 1F 76 07
.....tu..~n9>B.V.

¿©±â¼­   D ´Â µ¥ÀÌÅ͸¦ º¸À̶ó´Â ¸í·É (DUMP )
         0,F ¿ÀÇÁ¼Â ¹øÁö ÁöÁ¤
         2245 ´Â µ¥ÀÌÅÍ ¼¼±×¸ÕÆ®ÀÇ º£À̽º ¹øÁö°¡ 2245 ÀÌ´Ù.


SUB  ¸í·ÉÀÇ »ç¿ë¹ý(»¬¼À ¸í·É)
--------------------------------------------------------------------------------

SUB +- ¹ü¿ë·¹Áö½ºÅÍ(8/16ºñÆ®) --+   +- ¹ü¿ë·¹Áö½ºÅÍ (8/16ºñÆ®) --+
    +- ¸Þ¸ð¸®      (8/16ºñÆ®) --+   |  ¸Þ¸ð¸®       (8/16ºñÆ®)   |
                                  , +- ¼ýÀÚ         (8/16ºñÆ®) --+
¸Þ¸ð¸® ÀÚü³¢¸®´Â »¬¼ÀÀ» ÇÒ¼ö¾ø´Ù:
SUB (subtract) ¸í·ÉÀº ù¹ø° ¿ÀÆÛ·£µå·Î ºÎÅÍ 2¹ø° ¿ÀÆÛ·£µå ÀÇ ³»¿ëÀ» »«´ÙÀ½
°á°ú¸¦ ù¹ø° ¿ÀÆÛ·£µå¿¡ ÀúÀåÇÕ´Ï´Ù.


¿¹Á¦) SUB1.ASM
º¯¼ö AAA  ÀÇ 200 ¿¡¼­ 100 À» »©´Â ÇÁ·Î±×·¥
MAIN    SEGMENT
        ASSUNE  CS:MAIN,DS:MAIN
;
        MOV     AX,MAIN
        MOV     DS,AX
        MOV     AL,100   ; 16Áø¼ö·Î  64H
        SUB     AAA,AL
;
        MOV     AH,4CH
        INT     21H
;
AAA     DB      200  ; 16Áø¼ö·Î  C8H
;
MAIN    ENDS
        END
¾î¼Àºí·¯¿¡¼­´Â ³¡¿¡ ¼ýÀÚÀÇ Ç¥±â¹ýÀ» ³ªÅ¸³»´Â (H) ³ª (B) °¡ ºÙ¾î ÀÖÁö¾ÊÀ¸¸é
³»Á¤ÀûÀ¸·Î 10Áø¼ö·Î½á Ãë±ÞÇÕ´Ï´Ù.


SBB ¸í·É(subtract with borrow)
--------------------------------------------------------------------------------
ij¸®¿Í ÇÔ²² »¬¼ÀÀ» ÇÏ´Â SBB ¸í·É:
ÀÚ¸® ºô¸²ÀÌ ¹ß»ýÇϸé ij¸® Ç÷¹±×°¡ ¼¼Æ®µÈ´Ù.
»ç¿ë¹ý:
1) SUB¸í·É¿¡ ÀÇÇØ ÇÏÀ§ 16ºñÆ®(ȤÀº 8ºñÆ®)¸¦ »¬¼À
2) SBB¸í·É¿¡ ÀÇÇØ »óÀ§ 16ºñÆ®(ȤÀº 8ºñÆ®)¸¦ »¬¼À
¸¸ÀÏ Ã³À½ºÎÅÍ 16ºñÆ® ¿¬»ê¿¡ SBB¸í·ÉÀ̳ª ADC ¸í·ÉÀ» »ç¿ëÇϸé
ij¸® Ç÷¡±×°¡ ÀÌÀüºÎÅÍ °¡Áö°í ÀÖ¾ú´ø ¿¬»ê°ú Á÷Á¢ °ü°è¾ø´Â °ª±îÁö »«´ÙµçÁö
´õÇعö¸®´Â °æ¿ì°¡ Àֱ⠶§¹®ÀÔ´Ï´Ù.

¿¹Á¦) SUB2.ASM
12340000H - 1000H ¸¦ °è»êÇÏ´Â ÇÁ·Î±×·¥
MAIN    SEGMENT
        ASSUME  CS:MAIN,DS:MAIN
;
        MOV     AX,MAIN
        MOV     DS,AX
;
        MOV     WORK1,1234H
        MOV     WORK2,0000H
        MOV     WORK2,1000H
        SBB     WORK1,0000H
;
        MOV     AH,4CH
        INT     21H
;
WORK1   DW      0
WORK2   DW      0
;
MAIN    ENDS
        END

¿©±â ÇÁ·Î±×·¥¿¡¼­ ÇÏ·Á°í ÇÏ´Â °è»êÀ» ½ÄÀ¸·Î ³ªÅ¸³»¸é
    12340000H
-      1000H
-------------
    1233F000H   ¶ó´Â °ÍÀÌ µË´Ï´Ù.
WORK1 ÀÌ »óÀ§ 16ºñÆ® ,WORK2 °¡ ÇÏÀ§ 16ºñÆ®·Î ¸Þ¸ð¸®¿¡ Á÷Á¢ ¼ýÀÚ¸¦ ´ëÀÔÇÏ°í ,»¬
¼ÀÀ» ÇÏ°í ÀÖÀ¾´Ï´Ù.  ¿©±â¿¡¼­ ¿¬»êÇϱâ Àü¿¡ WORD PTR ÀÌ ºÙ¾î ÀÖÁö ¾Ê¾Ò´Âµ¥ ,ÀÌ°Í
Àº º¯¼öÀ̸§ÀÌ DW ¿¡ ÀÇÇØ ¸íÈ®ÇÏ°Ô WORD ÇüÀÇ ¼Ó¼ºÀ» °®°í Àֱ⠶§¹®ÀÔ´Ï´Ù.
ÀÌ¿Í°°ÀÌ º¯¼ö¿¡ ¼ýÀÚ¸¦  ´ëÀÔÇÒ °æ¿ì¿¡´Â Çü(type) ÁöÁ¤ÀÌ ÇÊ¿ä¾øÀ¾´Ï´Ù.
´Ù¸¸ µð½º¾î¼ÀºíÇÒ ¶§¿¡´Â WORD PTR ÀÌ ºÙ½À´Ï´Ù.

¿¹) SUB3.ASM
º¯¼ö¸¦ °æÁ¦ÀûÀ¸·Î PTR ÁöÁ¤¿¡ ÀÇÇØ ÁöÁ¤µÈ Çü(type)À¸·Î »ç¿ëÇÑ ¿¹
MAIN    SEGMENT
        ASSUME  CS:MAIN,DS:MAIN
;
        MOV     AX,CS
        MOV     DS,AX
;
        MOV     AH,11H
        MOV     BH,22H
        MOV     CL,33H
        MOV     SI,4444H
        MOV     BP,5555H
        ADD     AH,66H
        MOV     BYTE PTR ANS1,AH
        ADD     CL,0FFH
        ADC     BH,0H
        MOV     BYTE PTR ANS2,BH
        MOV     BYTE PTR ANS2+1,CL
        SUB     BP,SI
        MOV     WORD PTR ANS3,BP
;
        MOV     AH,4CH
        INT     21H
;
ANS1    DW      0
ANS2    DW      0
ANS3    DB      0
ANS4    DW      9999H
;
MAIN    ENDS
        END

¼±¾ðµÈ Çü ÀÌ¿Ü¿¡¼­ÀÇ º¯¼öÀÇ »ç¿ë¹ý
--------------------------------------------------------------------------------
¾Õ¿¡¼­ ANS1,ANS2 µî°ú °°Àº °ÍÀº ¹øÁö¸¦ ³ªÅ¸³»´Â À̸§
ÀÌµé º¯¼öÀ̸§Àº ¼±¾ðµÈ Çü(¹ÙÀÌÆ® ÀÎÁö  ¿öµå ÀÎÁö)À» ¼Ó¼ºÀ¸·Î ¼­ Áö´Ï°í  ÀÖÀ¸¹Ç·Î
±×´ë·Î »ç¿ëÇÏ¿´À» ¶§¿¡´Â  ±× ¼±¾ðµÈ Çü  ÀÌ¿ÜÀÇ ÇüÅ·Π»ç¿ëÇÏ°í ½ÍÀ»¶§¿¡´Â 'Çü +
PTR ' À» ºÙÀÓÀ¸·Î½á °­Á¦ÀûÀ¸·Î ´Ù¸¥ ÇüÀ¸·Î »ç¿ëÇÒ¼ö°¡ ÀÖÀ¾´Ï´Ù.

MOV     BYTE PTR ANS2+1,CL  ¶ó´Â ºÎºÐÀº :
º¯¼öÀ̸§¿¡ ´ëÇÑ µ¡¼À »¬¼ÀÀº ,¹øÁöÀÇ °ªÀ» µ¡¼À,»¬¼ÀÇÑ´Ù.
(ANS2 °¡ ³ªÅ¸³»´Â ¹øÁö +1)
±×·¯³ª ½ÇÁ¦·Î´À ÀÌ¿Í °°Àº »ç¿ë¹ýÀº º°·Î ÃßõÇÏÁö´Â ¾Ê½À´Ï´Ù.Ư¼öÇÑ°æ¿ì¸¦  Á¦¿ÜÇÏ
°í´Â º¯¼ö´Â  ¼±¾ðµÈ ÇüÀ¸·Î Ãë±ÞÇϵµ·Ï ÇÏ´Â °ÍÀÌ Çö¸íÇÕ´Ï´Ù.

À½¼ö¿Í º¸¼ö Ç¥Çö
--------------------------------------------------------------------------------
º¸¼ö(complement)ÀÇ °³³ä:
10Áø¼ö·Î 100À» ±âÁØÀ¸·Î ÇÑ°æ¿ìÀÇ 5ÀÇ º¸¼ö´Â 100-5=95,µû¶ó¼­ 5ÀÇ º¸¼ö´Â 95ÀÌ´Ù.
16Áø¼öÀÇ 1¹ÙÀÌÆ® = 8ºñÆ®¼ýÀÚ·Î 0 ~ 255 (= 28 - 1 = 0FFH)±îÁöÀÇ ¼ýÀÚ¸¦ ÃëÇÕ´Ï´Ù.
28(=100H) ¸¦ ±âÁØÀ¸·Î ÇÑ  º¸¼ö¸¦ »ý°¢ ÇÕ´Ï´Ù.
2ÀÇ º¸¼ö´Â   100H - 2H = 0FFH
28À» ±âÁØÀ¸·Î ÇÑ 3ÀÇ º¸¼ö   100H - 3H = OFDH
¿©±â¿¡¼­  -1À»  ³ªÅ¸³»´Â µ¥¿¡  1ÀÇ º¸½º¸¦ »ç¿ëÇÏ¿©  0FFH
          -3À»  ³ªÅ¸³»´Â µ¥¿¡  3ÀÇ º¸½º¸¦ »ç¿ëÇÏ¿©  0FDH  µîÀ¸·Î Ç¥Çö
¿¹)
1+(-1)=01H+0FFH=100H ---> 0
1+(-3)=01H+0FDH=0FEH ---> -2
¿©±â¿¡¼­ ÁÖÀÇ»çÇ× : º¸¼ö Ç¥Çö À» »ç¿ëÇÑ °æ¿õ¿¡ ¾î´À¼ö°¡ À½¼ö¸¦ ³ªÅ¸³½°ÍÀΰ¡¸¦
                    °áÁ¤ÇÏÁö ¾ÊÀ¸¸é ¾ÈµÈ´Ù´Â °ÍÀÔ´Ï´Ù.
¾Æ¹«Ç¥½Ãµµ ¾ÈÇϸé 0FDH °¡ Á¤¼öÀÇ 253 ÀÎÁö,À½¼öÀÇ -3ÀÎÁö ¾Ë¼ö°¡ ¾ø´Ù.
±×·¡¼­ º¸¼öÇ¥ÇöÀ» »ç¿ëÇÑ °æ¿ìÀÇ ¾à¼ÓÀ¸·Î¼­ ±×¼ýÀÚ¸¦ 2Áø¼ö·Î ³ªÅ¸³ÂÀ»¶§,
ÃÖ»óÀ§ ºñÆ®(MSB)°¡ 0 ÀÎ °ÍÀ» ¾ç¼ö,ÃÖ»óÀ§ ºñÆ®°¡ 1 ÀΰÍÀ» À½¼ö·Î °£ÁÖÇϵµ·Ï  Á¤ÇÏ
°í ÀÖÀ¾´Ï´Ù.
ÀÌ·¸°Ô Çϸé, 8ºñÆ® ¼ýÀÚ¿¡¼­´Â 0 ~ 7FH ±îÁö°¡ ¾ç¼ö,
                            80H~ 0FFH ±îÁö°¡ À½¼ö(-80H ~-1H ¿¡ ´ëÀÀ)
               ÀÌ°Í¿¡ ÀÇÇØ -80H~ +7FH ±îÁöÀÇ ¼ýÀÚ¸¦ ³ªÅ¸³¾¼ö°¡ ÀÖÀ¾´Ï´Ù.
16ºñÆ® ¼ýÀÚ¸¦ Ãë±ÞÇÏ´Â °æ¿ì¿¡µµ ¸¶Âù°¡Áö·Î 216=10000H¸¦ ±âÁØÀ¸·Î
                           0~7FFFH ±îÁö°¡ ¾ç¼ö 8000H~ 0FFFFH±îÁö°¡ À½¼ö
MSB : most significant bit ÀÇ ¾àÀÚÀÌ°í ÃÖ»óÀ§ ºñÆ®¸¦ Ç¥½ÃÇÔ
LSB : least significant bit ÀÇ ¾àÀÚÀ̸ç ÃÖÇÏÀ§ ºñÆ®¸¦ ¸»ÇÑ´Ù.

                MSB                LSB
8ºñÆ®ÀÇ °æ¿ì   |    +-+-+-+-+-+-+-+-+
               +->  +-+-+-+-+-+-+-+-+
                     7 6 5 4 3 2 1 0
               MSB                               LSB
16ºñÆ®ÀÇ°æ¿ì   |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
               +->  +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                     1514131211109 8 7 6 5 4 3 2 1
*.ÁÖÀÇ )
º¸¼öÇ¥ÇöÀ» »ç¿ëÇÏ¿© -80H ~7FH ±îÁöÀÇ ¼ö¸¦ Ãë±ÞÇÒ °ÍÀΰ¡,º¸¼öÇ¥ÇöÀ» »ç¿ëÇÏÁö¾Ê°í
0~0FFH±îÁöÀÇ ¼ýÀÚ¸¦ Ãë±ÞÇÒ°ÍÀΰ¡´Â ÇÁ·Î±×·¡¹ÖÀ» ÇÏ´Â »ç¶÷ÀÌ Á¤ÇÏ´Â °ÍÀ¸·Î¼­ °°Àº
¼ýÀÚ°¡ ¾ç¼ö¸£ ÀǹÌÇÏ´Â °ÍÀΰ¡ ,À½¼ö¸¦ ÀǹÌÇÏ´Â °ÍÀΰ¡´Â °æ¿ì¿¡ µû¶ó ´Ù¸£´Ù  ¶ó´Â
°ÍÀÔ´Ï´Ù.
Ãë±ÞÇÏ´Â ¼ýÀÚ°¡ ¾ç¼ö»ÓÀÌ°í »¬¼ÀÀ» ÇÏÁö ¾Ê´Â °æ¿ì¿¡´Â º¸¼öÇ¥ÇöÀ» »ç¿ëÇÒÇÊ¿ä°¡  ÀÖ
À¾´Ï´Ù
¾î´À°ÍÀ» »ç¿ëÇÒ°ÍÀΰ¡´Â ÇÁ·Î±×·¥ÀÇ ¸ñÀû¿¡ µû¶ó °áÁ¤ÇÏÁö ¾ÊÀ¸¸é ¾ÈµË´Ï´Ù.
¾î¼Àºí·¯¿¡¼­´Â ¾ç¼ö À½¼ö°¡ ¾î¶²½ÄÀ¸·Î Çؼ®µÇ´Â°¡¸¦ º¾½Ã´Ù.
¿ø·¡ ¼ýÀÚ°¡ 1H ¹× 0FFHÀÎ °æ¿ì ±×¼ýÀÚ°¡ ±×´ë·Î ·¹Áö½ºÅÍ·Î Àü¼ÛµÇ´Â ¼ýÀÚ°¡ µË´Ï´Ù.
¿ø·¡ÀÇ ¼ýÀÚ°¡ -1H ¹× -0FFH ´Â , ´Ü¼øÈ÷ º¸¼ö·Î º¯È¯µÇ¾î¼­ Àü¼ÛÇÏ´Â ¼ýÀÚ·Î µÊ.
8ºñÆ® ·¹Áö½ºÅÍ·Î -0FFH¸¦ Àü¼ÛÇÏ´Â °æ¿ì: 1H ·Î¹Ù¸¥ º¯È¯ÀÌ ¾Æ´Ï´Ù

¾î¼Àºí·¯¿¡¼­´Â º¸¼öÇ¥ÇöÀÌ °¡´ÉÇÑ »óÇÏÀÇ ¹üÀ§ÀÇ °Ë»ç´Â ÇÏÁö¾ÊÀ¸¹Ç·Î ÁÖÀÇ°¡ ÇÊ¿äÇÔ
-0FFH¸¦ ¹Ù¸£°Ô Ãë±ÞÇÏ·Á°í ÇÑ´Ù¸é 8ºñÆ® ·¹Áö½ºÅͷδ ºÒ°¡´ÉÇÏ°í ,16ºñÆ® ·¹Áö½ºÅÍ
¸¦ »ç¿ëÇÒÇÊ¿ä°¡ ÀÖÀ¾´Ï´Ù .
16ºñÆ® ¼ýÀÚ´Â ¸Þ¸ð¸®»óÀ¸·Î´Â ¿ª¿öµå Çü½ÄÀ¸·Î ±â¾ïµÇ¾î ÀÖÀ¸¹Ç·Î
MOV     AX,1234H
B8      1234 °¡ ¾Æ´Ï¶ó     B8     34 12   ·Î ³ª¿­µÇ¾î ÀÖÀ½´Ï´Ù.


ºÎÈ£ È®Àå ¸í·É
--------------------------------------------------------------------------------
40H¿Í 50H ¸¦ ´õÇÏ¸é °á°ú´Â 90H °¡ µÇ´Âµ¥ ,ÀÌ°ÍÀº º¸¼ö Ç¥Çö¿¡¼­´Â
-70H ¶ó´Â À½¼ö¿¡ ÇØ´ç µÇ¹Ç·Î ¹Ù¸¥ °á°ú °¡ ¾Æ´Õ´Ï´Ù.
(10010000 ÀÇ 2ÀÇ º¸¼ö´Â ¿ì¼± 1ÀÇ º¸¼ö·Î¼­´Â 01101111 À̵ǰí
01101111+1=01110000=70H °¡ µÈ´Ù.ÃÖ»óÀ§ ºñÆ®°¡ 1À̹ǷΠÀ½¼ö -70H °¡ µÈ´Ù.)

ADD     DL,AL ----->°¡´É
ADD     DX,AL ----->·¹Áö½ºÅÍ ºÒÀÏÄ¡ µû¶ó¼­ ºÒÀÏÄ¡
·¹Áö½ºÅÍÀÇ Àü¼ÛÀ̳ª µ¡¼À »¬¼À¿¡¼­´Â 2°³ÀÇ ,·¹Áö½ºÅÍÀÇ Å©±â°¡ °°Áö ¾ÊÀ¸¸é ¾ÈµÊ

¾ç¼öÀÇ µ¡¼À:
¸ðµç ¼ö¸¦ ¾çÀÇ Á¤¼ö·Î¼­ Ãë±ÞÇÏ´Â °æ¿ì - 8ºñÆ® ·¹Áþ½ºÅÍÀÇ °ªÀ» 16ºñÆ®·Î È®ÀåÇÑ
´ÙÀ½ ´õÇÏ¸é µË´Ï´Ù.
MOV     AH,1   --+ ÇÑ ¹®ÀÚ ÀÔ·Â ·çƾ °á°ú´Â AL ·¹Áö½ºÅÍ¿¡ ³õ¿©Áø´Ù.
INT     21H    --+
MOV     AH,0   ----> AL ·¹Áö½ºÅÍÀÇ »óÀ§ 8ºñÆ®¸¦ Ŭ¸®¾î ÇÑ´Ù.
ADD     DX,AX
¾ç¼ö¸¸À» Ãë±ÞÇÒ¶§¿¡´Â »óÀ§ ¹ÙÀÌÆ®¿¡ 00À» ´ëÀÔÇÑ´Ù.
AL =41H      +--------------+
             |       AX     | Çѹ®ÀÚ ÀÔ·ÂÈÄÀÇ °¢·¹Áö½ºÅÍÀÇ »óÅÂ
             +-------+------+  ("A "=41H ¸¦ ÀÔ·ÂÇÑ °æ¿ì )
             |AH     |AL    |
             +-------+------+
             |¹ÌÁ¤   |41    |
             +-------+------+
=====  AH ·¹Áö½ºÅÍ¿¡ 0 À» ´ëÀÔ 8ºñÆ® µ¥ÀÌÅ͸¦ 16ºñÆ® µ¥ÀÌÅÍ·Î È®Àå =====
AX=0041H     +--------------+
             |       AX     | Çѹ®ÀÚ ÀÔ·ÂÈÄÀÇ °¢·¹Áö½ºÅÍÀÇ »óÅÂ
             +-------+------+  ("A "=41H ¸¦ ÀÔ·ÂÇÑ °æ¿ì )
             |AH     |AL    |
             +-------+------+
             |00     |41    |
             +-------+------+


¿¹Á¦) SGN2.ASM
4°³ÀÇ ¼ýÀÚ 50H,60H,80H,F0H¸¦ ÇÕÇÏ¿© ANS¿¡ ÀúÀåÇÑ´Ù.
MAIN    SEGMENT
        ASSUME  CS:MAIN,DS:MAIN
;
        MOV     AX,CS
        MOV     DS,AX
;
        MOV     AX,0
        MOV     DX,0
        MOV     DL,VAR1
        ADD     AX,DX
        MOV     DL,VAR2
        ADD     AX,DX
        MOV     DL,VAR3
        ADD     AX,DX
        MOV     DL,VAR4
        ADD     AX,DX
        MOV     ANS,AX
;
        MOV     AH,4CH
        INT     21H
;
        VAR1    DB      50H
        VAR2    DB      60H
        VAR3    DB      80H
        VAR4    DB      F0H
        ANS     DW      ?
;
MAIN    ENDS
        END
µð¹ö°Å »ó¿¡¼­ ½ÇÇèÇÏ¿© È®ÀÎÇØ º¼°Í(HWP¿¡¼­ F3Áö¿ï¿µ¿ª¼³Á¤,ctrl-E Áö¿ì±â ½ÇÇà,
¿¹Á¦¸¦ ¾Æ½ºÅ°·Î ¼¼À̺ê MASM ½ÇÇà)
À̹æ¹ýÀº 256À̶õ ¼öÄ¡±îÁö´Â ¾È½ÉÇÏ°í µ¡¼ÀÀ» ÇÒ¼ö°¡ ÀÖÀ¾´Ï´Ù.

º¸¼öÇ¥Çö¿¡ ÀÇÇØ ¸¹Àº µ¥ÀÌÅ͸¦ ´õÇÏ´Â ¹ý
--------------------------------------------------------------------------------
À½¼ö´Â »óÀ§ ¹ÙÀÌÆ®¿¡ 00À» ´ëÀÔÇϱ⸸ ÇÏ´Â °ÍÀ¸·Î ´Â ¾ÈµÊ,
(À½)95H   ---->   0095H(¾ç)
(À½)F7H   ---->   00F7H(¾ç)
µû¶ó¼­ À½¼ö¸¦   8ºñÆ®¿¡¼­ 16ºñÆ®·Î º¯È¯ÇÒ¶§¿¡´Â
(À½)95H   ---->   FF95H(À½)
(À½)F7H   ---->   FFF7H(À½)
(À½)80H   ---->   FF80H(À½)
¾ç¼öÀÌ¸é »óÀ§ ¹ÙÀÌÆ®¿¡ 00À» ´ëÀÔ ,À½¼öÀÌ¸é »óÀ§ ¹ÙÀÌÆ®¿¡ FF¸¦ ´ëÀÔÇÑ´Ù.

ÀÌ¿Í °°Àº ÀÛ¾÷À» ÀÏÀÏÀÌ ÇÁ·Î±×·¥À»  ÀÛ¼ºÇÏ¿© ÇÏ·Á°í ÇÑ´Ù¸é ´ë´ÜÈ÷ °ï¶õÇÒ°Í  ÀÔ´Ï
´Ù.±×·¡¼­ À§¿¡¼­ ±â¼úÇÑ ±ÔÄ¢¿¡ µû¶ó 8ºñÆ® ¼ýÀÚ¸¦ 16ºñÆ®·Î º¯È¯ÇØÁÖ´Â ¸í·ÉÀ¸·Î¼­
CBW (convert byte to word) ¸í·ÉÀ» ¸¸µé¾î ³õ¾ÒÀ¾´Ï´Ù.
ÀÌ°ÍÀ» ºÎȣȮÀå¸í·É À̶ó°í ÇÕ´Ï´Ù.

º¸¼öÇ¥ÇöÀ» »ç¿ëÇÏ¿© ¾ç¼ö À½¼ö¸¦ »ç¿ëÇÏ´Â °æ¿ì¿¡´Â
ÃÖ»óÀÇ ºñÆ®°¡ 0 ÀÎ °ÍÀ» ¾ç¼ö, 1 ÀΰÍÀ» À½¼ö¶ó°í ÇÑ´Ù.
8ºñÆ® ¼öÄ¡¸¦ 16ºñÆ® ¼öÄ¡·Î È®ÀåÇÒ¶§¿¡:
ÃÖ»óÀÇ ºñÆ®°¡ 0 ÀÌ¸é »óÀ§ 8ºñÆ® ¸ðµÎ¿¡ 0À» ´ëÀÔ,
ÃÖ»óÀÇ ºñÆ®°¡ 1 ÀÌ¸é »óÀ§ 8ºñÆ® ¸ðµÎ¿¡ 1À» ´ëÀÔ

          ¾ç¼öÀÇ È®Àå           À½¼öÀÇ È®Àå
8ºñÆ®           0XXXXXXXX             1XXXXXXX
        +-------+             +-------+
        V       V             V       V
16ºñÆ®  000000000XXXXXXX      111111111XXXXXXX

CBW ....AL·¹Áö½ºÅÍÀǼýÀÚ¸¦ ºÎȣȮÀåÇÏ¿© AX ·¹Áö½ºÅÍ¿¡ ÀúÀåÇÑ´Ù.
CWD ....AX·¹Áö½ºÅÍÀÇ ¼ýÀÚ¸¦ ºÎȣȮÀåÇÏ¿© ,»óÀ§16ºñÆ®¸¦ DX·¹Áö½ºÅÍ¿¡ ,
        ÇÏÀ§ 16ºñÆ®¸¦ AX ·¹Áö½ºÅÍ¿¡ ÀúÀåÇÑ´Ù.
CWD (convert word to double word )  32ºñÆ® ·¹Áö½ºÅÍ·Î °£ÁÖÇÏ´Â ¸í·É

ºÎÈ£ È®Àå¸í·ÉÀÇ »ç¿ë¹ý:
¿¹Á¦) SGN3.ASM
ºÎÈ£°¡ ºÙÀº 4°³ÀÇ ¼ýÀÚ¸¦ ÇÕÇÏ¿© ANS ¿¡ ÀúÀåÇÏ´Â ÇÁ·Î±×·¥
MAIN    SEGMENT
        ASSUME  CS:MAIN,DS:MAIN
;
        MOV     AX,CS   -+DS Ãʱ⼳Á¤
        MOV     DS,AX   -+
;
        MOV     AX,0    -+AX,DX ¸¦ 0À¸·Î Ŭ¸®¾î
        MOV     DX,AX   -+
        MOV     BX,OFFSET VAR ;º¯¼öÀ̸§ VARÀÌ °¡¸®Å°´Â ¿ÀÇÁ¼Â ¹øÁö ¸¦ BX¿¡ ÀúÀå
        MOV     AL,[BX]       ;BX¿¡ µé¾îÀÖ´Â ¹øÁö°ªÀÇ ³»¿ëÀ» AL ¿¡ ³Ö´Â´Ù
        CBW                   ;ºÎÈ£ È®Àå
        ADD     DX,AX                                                   ^
        MOV     AL,[BX]+1  -+ ¹øÁöÀÇ Ç¥±â¹ý¿¡´Â ¿©·¯Á¾·ù°¡ÀÖ´Ù.         |
        CBW                 |                                           |
        ADD     DX,AX       |                                           |
        MOV     AL,[BX+2]  -+            C ¾ð¾îÀÇ Æ÷ÀÎÆ® °³³ä°ú °°´Ù.---+
        CBW                 |
        ADD     DX,AX       |
        MOV     AL,3[BX]   -+
        CBW
        ADD     DX,AX
        MOV     ANS,DX
;
        MOV     AH,4CH
        INT     21H
;
VAR     DB      50H,60H,80H,0F0H  ;µ¥ÀÌÅ͸¦ ¿¬¼ÓÇÏ¿© ÇÒ´ç½ÃŲ´Ù.
ANS     DW      ?
;
MAIN    ENDS
        END

ÁÖÀÇ ) CBW ¸í·ÉÀº AL ·¹Áö½ºÅͷκÎÅÍ AX ·¹Áö½ºÅÍ·Î ¹Û¿¡ º¯È¯ÇÒ¼ö¾ø´Ù.

VARº¯¼ö´Â :(µ¶¸³µÈ º¯¼öÀ̸§ÀÌ ÁÖ¾îÁ® ÀÖÁö ¾ÊÀ¾´Ï´Ù.)
VAR     DB      50H
        DB      60H
        DB      80H
        DB      0F0H
¿Í °°ÀÌ ÁöÁ¤ÇÏ¿©µµ ¶È°°À¾´Ï´Ù.
¿©±â¼­ º¯¼öÀÇ ³»¿ëÀ» ²¨³»±â À§Çؼ­ º¯¼öÀ̸§ VARÀÌ ³ªÅ¸³»´Â ¹øÁö·ÎºÎÅÍ »ó´ëÀÇ À§
Ä¡¸¦ ÁöÁ¤ÇÒÇÊ¿ä°¡ ÀÖÀ¾´Ï´Ù.
MOV     BX,OFFSET VAR
(¿ÀÇÁ¼Â ÀÇ»ç¸í·É¿¡ ÀÇÇØ º¯¼öÀ̸§ÀÌ °¡Áö´Â ¼Ó¼ºÀÇ ÇϳªÀÎ ¿ÀÇÁ¼Â ¹øÁöÀÇ °ªÀ» ²¨
³¾¼öÀÖ´Ù .)

¹øÁöÀÇ Ç¥±â¹ýÁß¿¡¼­
[BX]+2
[BX+2]
2[BX]   ´Â ¿ÏÀüÈ÷ °°Àº ¹æ¹ýÀ» ´Ù¸¥ ¹æ¹ýÀ¸·Î ½èÀ» »ÓÀÌ´Ù.
µð¹ö°Å¿¡¼­´Â ¿ª¾î¼ÀºíÇÒ ¶§ÀÇ Ç¥±â´Â   [BX+2]ÀÇ Çü½ÄÀ¸·Î µÇ¾îÀÖ´Ù.
´Ü, º¯¼öÀ̸§À» »ç¿ëÇصµ ¸¶Âù°¡Áö ÀÔ´Ï´Ù.
[BX]+1  Àº   VAR+1  µîÀ¸·Î ġȯÇÒ¼ö°¡ ÀÖÀ¾´Ï´Ù.
¿©±â¿¡¼­  VAR + 1 À̶ó´Â °ÍÀº º¯¼öÀÇ ³»¿ë¿¡  1 À» ´õÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó
º¯¼öÀ̸§ÀÌ ³ªÅ¸³»´Â  ¹øÁö¿¡  1 À» ´õÇÑ´Ù.
[BX+2] ´Â   VAR+2  ·Î
3[BX]  ´Â   3+VAR  ·Î   ¶ó´Â ½ÄÀ¸·Î ¹Ù²Ü¼ö°¡ ÀÖÀ¾´Ï´Ù.

*.º¸¼ö·Î Ç¥½ÃµÈ 80H °¡ ¿Ö -80H °¡ µÇ´Â°¡.?
80H =1000 0000  À̾ MSB=1 À̹ǷΠÀ½¼öÀÌ´Ù. ¿ì¼± 1 ÀÇ º¸¼ö¸¦ ÃëÇϸé 0111 1111.
¿©±â¿¡  +1  Çϸé 1000 0000 Áï 80H °¡ µÇ¹Ç·Î -80H °ªÀÌ´Ù.

¿©±â¿¡¼­´Â °á°ú¸¦ ¼ýÀڷμ­ Ãâ·ÂÇÏ´Â ·çƾÀ» µ¡ºÙÀÌÁö ¾Ê¾Ò´Ù.
¸Å¹ø »ç¿ëÇÏ´Â ·çƾÀº Çѹø ÀÛ¼ºÇØµÎ¸é ³ªÁß¿¡ ´Ù¸¥ ÇÁ·Î±×·¥À» ¸¸µé¶§¿¡  ÀοëÇÒ¼öÀÖ
µµ·Ï ÇϱâÀ§Çؼ­ ·çƾÀ» ´Ù¸¥ È­ÀÏ ·Î ÀÛ¼ºÇصΰí INCLUDE ¹®À¸·Î Æ÷ÇÔ½ÃÅ°´Â  ±â´ÉÀÌ
³ª,ºÐÇÒ ÄÄÆÄÀÏ ÇÏ¿© ¿ÀºêÁ§Æ® È­ÀÏ·Î ÀÛ¼ºÇصΰí LINK ¿¡ ÀÇÇØ ¸µÅ©ÇÏ´Â ±â´Éµµ ÀÖÀ¾
´Ï´Ù.. ´çºÐ°£Àº °á°ú¸¦ µð¹ö°Å ¸¦ »ç¿ëÇؼ­ Çϵµ·ÏÇսôÙ.



  Hit : 9588     Date : 2008/12/13 11:07



    
1501   Äı¸Á¶ ÆľÇÇϱâ À§ÇÑ °­Á     asd2862
11/19 8797
1500   ÇØÄ¿°¡ µÇ±âÀ§ÇØ ¾Ë¾Æ¾ßÇÒ 30°¡Áö Ãâó :ÇØÄ¿´ëÇÐ[5]     asdzxc301
12/12 12710
1499   À©µµ¿ì µµ½º ¸í·É¾î(?)[1]     asdzxc301
12/13 9502
1498   ºô°ÔÀÌÃ÷¿¡ ´ëÇؼ­[2]     asdzxc301
12/13 9336
1497   ¾î¼Àºí¸®¾î ÃÑÁ¤¸® °­Á     asdzxc301
12/13 19912
1496   ¾î¼Àºí¸®¾î °­Á 1Æí[1]     asdzxc301
12/13 13341
1495   ¾î¼Àºí¸®¾î °­Á 2Æí     asdzxc301
12/13 8506
  ¾î¼Àºí¸®¾î °­Á 3Æí     asdzxc301
12/13 9587
1493   ¾î¼Àºí¸®¾î °­Á 4Æí     asdzxc301
12/13 11160
1492   ¾î¼Àºí¸®¾î °­Á 5Æí     asdzxc301
12/13 20841
1491   ¾î¼Àºí¸®¾î °­Á 6Æí     asdzxc301
12/13 8578
1490   ¾î¼Àºí¸®¾î °­Á 7Æí ¸¶Áö¸·¿ä ¤¾¤¾[2]     asdzxc301
12/13 10596
1489   ÃÊÂ¥¸¦ À§ÇÑ ÆÄÀ̽ã[2]     asdzxc301
12/18 16462
1488   ÆÞ°ú ÆÄÀ̽ã ÇÁ·Î±×·¡¹Ö ¼­Àû     asdzxc301
12/18 9112
1487   ÆÞ1[1]     asdzxc301
12/18 11151
1486   Æ÷¸Ë ½ºÆ®¸µ ¹ö±× ºÐ¼®     asdzxc301
12/24 11303
1485   [1Àå]¹ÙÀÌ·¯½ºÀÇ Á¤ÀÇ & À§Ç輺[5]     ÀÛÀºÇØÄ¿
12/02 7221
1484   FTP ¼³Á¤ ¿À·ù¸¦ ÀÌ¿ëÇÑ ¹ö±× °ø°Ý(¸ÔÈ÷´Â °÷µµ ÀÖÀ» °ÍÀÌ°í...¾Æ´Ò¼öµµ..)¤»[4]     ÀÛÀºÇØÄ¿
11/30 7558
1483   [2Àå]¹ÙÀÌ·¯½ºÀÇ Á¾·ù¿Í Ư¡[5]     ÀÛÀºÇØÄ¿
12/10 8376
1482   bof & fsb ¿¡ À¯¿ëÇÑ ÆÞ ½ºÅ©¸³Æ®[5]     awsedr45
03/11 11616
[1][2][3][4] 5 [6][7][8][9][10]..[80]

Copyright 1999-2024 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org