¸ÅÅ©·Î ¸í·ÉÀÇ ÀÛ¼º¹ý

¸ÅÅ©·Î ¸í·ÉÀÇ ¸¸µå´Â ¹æ¹ý¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù

1. ¸ÅÅ©·Î ¸í·ÉÀÇ °³¿ä
¸ÅÅ©·Î ¸í·ÉÀº »ç¿ëÇÏ´Â »ç¶÷ÀÌ ÀÓÀÇ·Î Á¤ÀÇÇÒ ¼ö ÀÖ´Â ¸í·É ¼¼Æ®·Î, ¾î¼Àºí·¯´Â ¾î¼ÀºíÇÒ ¶§¿¡ ±×µéÀ» ½ÇÁ¦ ¸í·ÉÀ¸·Î ´ëÄ¡ÇÏ¿© ¾î¼ÀºíÇÑ´Ù.
¸ÅÅ©·Î ¸í·É¿¡ ÀÇÇØ ¾ò¾îÁö´Â È¿°ú´Â,
¡¤Ãß»óÈ­°¡ °íµµÈ­µÇ¾î Àб⠽¬¿öÁø´Ù.
¡¤¹Ýº¹ »ç¿ëµÇ´Â ¼ø¼­¸¦ °£´ÜÇÏ°Ô ÇÒ ¼ö ÀÖ´Ù.
¡¤°£´ÜÇÏ°Ô ¼öÁ¤ÇÒ ¼ö ÀÖ´Ù.
¡¤debugÇϱ⠽¬¿öÁø´Ù.

2. ¸ÅÅ©·Î ¸í·ÉÀÇ Çü½Ä
¸ÅÅ©·Î ¸í·ÉÀ» ±¸¼ºÇϱâ À§ÇÑ Áö½Ã¸í·ÉÀº ´ÙÀ½°ú °°ÀÌ µÇ¾î ÀÖÀ¸¸ç, À̵鿡 ÀÇÇØ ¸ÅÅ©·Î ¸í·ÉÀ» ±¸¼ºÇÒ ¼ö ÀÖ´Ù.

[ENDM]  End a Macro Definition
[MACRO]  Declare Macro Definition

1. Çü½Ä
<label>     macro    [<arg>,...,<arg>]
                     -----
                     -----
                     endm


2. ¼³¸í
¸ÅÅ©·Î ¸í·ÉÀ̶õ, ¹Ýº¹µÇ´Â µ¿ÀÏ Äڵ带 »ç¿ëÇÏ´Â °æ¿ì, 1¸í·ÉÀ¸·Î º¹¼öÀÇ ¸í·ÉÀ» ´ëüÇÒ ¼ö ÀÖµµ·Ï ÇÏ´Â ¸í·É±ºÀÌ´Ù. ¸ÅÅ©·Î ¸í·ÉÀº »ç¿ëÇϱâ Àü¿¡ ÀÌ MACRO ¸í·ÉÀ¸·Î Á¤ÀǵǾî ÀÖÁö ¾ÊÀ¸¸é ¾ÈµÈ´Ù.

3. »ç¿ë ¿¹
Read      macro    device, buffer, count
             movlw     device
             movwf     ram_20
             movlw     buffer      ;buffer address
             movwf     ram_21
             movlw     count      ;byte count
             call         sys_21    ;read file call
             endm


4. È£Ãâ ¹æ¹ý
¸ÞÀÎ ÇÁ·Î±×·¥ Áß¿¡¼­, ÀÌ ¸ÅÅ©·Î ¸í·ÉÀ» »ç¿ëÇϱâ À§Çؼ­´Â ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.
            <macro_name>      [<arg>,...,<arg>]

¿©±â¼­ <macro_name>¿Í <arg>´Â MACRO ¸í·ÉÀ¸·Î Á¤ÀÇÇÑ labelÀÌ´Ù.
ÀμöÀÎ <arg>´Â ÀÓÀÇÀÇ ¼ö¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

[EXITM]  Exit from a Macro

1. Çü½Ä
exitm

2. ¼³¸í
¸ÅÅ©·Î ¸í·É±ºÀ¸·ÎºÎÅÍ °­Á¦ÀûÀ¸·Î ºüÁ® ³ª°¡, ¸ÅÅ©·ÎÀÇ ¾î¼ÀºíÀ» Á¾·á½ÃŲ´Ù.
ENDM°ú °°Àº È¿°ú.

3. »ç¿ë ¿¹
test      macro    filereg
            if           filereg == 1
                         exitm
           else
                         error     "bad file assignment"
           endif
           endm


[LOCAL]  Define Local Macro Variable

1. Çü½Ä
local    <label>[,<label>]

2. ¼³¸í
¸ÅÅ©·Î ¸í·É ±¸Á¶ÀÇ ³»¿¡¼­¸¸ »ç¿ëµÇ´Â º¯¼ö¸¦ ÁöÁ¤ÇÑ´Ù. ¸ÅÅ©·Î ¿Ü¿¡ °°Àº º¯¼ö¸íÀÌ À־ ±×°ÍÀº º°µµÀÇ °ÍÀ¸·Î Ãë±ÞµÈ´Ù.

3. ¸ÅÅ©·Î¿¡ ÀûÇÕÇÑ Ã³¸®¶õ
¸ÅÅ©·Î ¸í·ÉÀ» »ç¿ëÇÏ¸é Æí¸®ÇØÁö´Â °ÍÀº ¾î¶² ó¸®Àϱî? ´Ü¼øÈ÷ ¹Ýº¹µÇ´Â 󸮶ó¸é ¼­ºê·çƾÀ¸·Î ÇÏ¿©, CALL ¸í·ÉÀ¸·Î ºÎ¸£¸é ¹®Á¦¾ø°ÚÁö¸¸, ¸ÅÅ©·Î ¸í·ÉÀ¸·Î ÇÏ¸é ¿ÀÈ÷·Á ¸Åȸ ÄÚµåÈ­µÇ¹Ç·Î ¼­ºê·çƾº¸´Ù ³¶ºñ°¡ ¸¹¾ÆÁö°í ¸¸´Ù.
¸ÅÅ©·Î ¸í·ÉÈ­ÇØ¾ß ÇÒ Ã³¸®À̶õ, ´ÙÀ½°ú °°Àº ó¸®ÀÌ´Ù.

1. °°Àº ó¸® ³»¿ëÀÌÁö¸¸ º¯¼öÀÇ ÀúÀå Àå¼Ò°¡ ¸Å¹ø ´Ù¸¥ °æ¿ì
ó¸® ±× ÀÚü°¡ ºñ±³Àû ´Ü¼øÇÏ°í µ¿ÀÏÇÑ °ÍÀÇ ¹Ýº¹ÀÌÁö¸¸, ¼­ºê·çƾÀ¸·Î ÇÏ¸é º¯¼öÀÇ Àå¼Ò¸¦ ÁöÁ¤Çϴ ó¸® ¶§¹®¿¡ ¿ÀÈ÷·Á ÇÁ·Î±×·¥ÀÌ Ä¿Á® ¹ö¸± ¶§´Â ¼­ºê·çƾȭÇÏ´Â °Íº¸´Ù ¸ÅÅ©·ÎÇÏ´Â ÆíÀÌ À¯¸®ÇÏ´Ù.

2. °í¼Ó 󸮰¡ ÇÊ¿äÇÑ ¹Ýº¹ ó¸®
1°ú ¸¶Âù°¡Áö·Î ¼­ºê·çƾȭÇϸé ÇÁ·Î±×·¥ »çÀÌÁî°¡ Ä¿Á® ¹ö¸®´Â °æ¿ì, 󸮼ӵµ°¡ ´À·ÁÁö°í ¸¸´Ù. ÀÌ¿Í °°Àº ¼Óµµ¸¦ ÃÖ¿ì¼±À¸·Î ÇÒ ¶§´Â ¸ÅÅ©·ÎÈ­ÇÏ¿© ³¶ºñ¸¦ ¾ø¾Ö¸é¼­ ´Ù¸¥ 󸮸¦ ÇÒ ¼ö ÀÖ´Ù.
´ç¿¬È÷ ÇÁ·Î±×·¥ Àüü´Â ¹Ýº¹ÀÌ ¸¹À» ¶§¿¡´Â Ä¿Á® ¹ö¸®´Â °æ¿ìµµ ÀÖ´Ù.


      ¸ñÂ÷ ÆäÀÌÁö·Î