6.3. ½ÇÇàÆÄÀÏ ¸¸µé±â

6.3.1. ¸ñÀû ÄÚµå »ý¼º

½ÇÇàÆÄÀÏÀ» ¸¸µé±â À§ÇÑ Ã¹¹øÂ° ´Ü°è´Â ¼Ò½ºÆÄÀÏÀ» ÄÄÆÄÀÏ È¤Àº ¾î¼Àºí¸µ ÇØ¼­ ¸ñÀû Äڵ尡 ´ã±ä ÆÄÀÏÀ» ¸¸µå´Â °ÍÀÌ´Ù.

nasm À» »ç¿ëÇÑ´Ù¸é,

            $ nasm -f elf hello.asm
        

gas ¸¦ »ç¿ëÇÑ´Ù¸é,

            $ as -o hello.o hello.S
        

¿Í °°ÀÌ ÇÏ¸é ¸ñÀû Äڵ尡 ´ã°Ü ÀÖ´Â hello.o ¸¦ »ý¼ºÇÏ°Ô µÈ´Ù.

6.3.2. ½ÇÇàÆÄÀÏÀÇ »ý¼º

µÎ¹øÂ° ´Ü°è·Î½á, ¸ñÀûÄڵ尡 ´ã±ä ÆÄÀϷκÎÅÍ ¸µÄ¿¸¦ È£ÃâÇÏ¿© ½ÇÇà°¡´ÉÇÑ ÆÄÀÏÀ» ¸¸µé¾î³»°Ô µÈ´Ù.

            $ ld -s -o hello hello.o
        

À§¿Í °°ÀÌ ÇÏ¸é µÈ´Ù. ±×·¸°Ô ÇÏ°í ³ª¸é, ¸¶Ä§³», hello ¶ó´Â ½ÇÇàÆÄÀÏÀ» º¼ ¼ö ÀÖ°Ô µÈ´Ù.

Çѹø ½ÇÇà½ÃÄÑ º¸¾Æ¶ó. Á¦´ë·Î µ¿ÀÛÇϴ°¡? ³¡ÀÌ´Ù. ÀÌ°Ô ÀüºÎÀÌ´Ù. ¸Å¿ì °£´ÜÇÏÁö ¾ÊÀº°¡? ³Ê¹«³ª °£´ÜÇØ¼­ µÇ·Á Ȳ´çÇÏÁö ¾ÊÀº°¡?!?!

Âü°í: (¿ªÀÚ ÁÖ: ±×·¸´Ù. À̰ÍÀÌ ¾î¼Àºí¸® ÇÁ·Î±×·¡¹ÖÀÇ ÀüºÎÀÌ´Ù. ´õ ±íÀÌ ÇÁ·Î±×·¡¹ÖÇϱâ À§Çؼ­´Â Ä¿³ÎÀÇ ½Ã½ºÅÛ ÄÝÀÇ ¹øÈ£¸¦ ÀüºÎ ¾Ë¾Æ¾ß Çϰí, ÀÎÅÚ È¤Àº ¿©·¯ºÐÀÌ ÇÁ·Î±×·¡¹Ö Çϱ⠿øÇÏ´Â Ç÷§ÆûÀÇ ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­ÀÇ ÀνºÆ®·°¼Ç ¼¼Æ® ¹×, Ư¼º, Á¦°øÇÏ´Â ±â´É µîÀ» Àß ¾Ë¾Æ¾ß ÇÑ´Ù. ±×·¯ÇÑ °ÍÀº ÇØ´ç ¸¶ÀÌÅ©·ÎÇÁ·Î¼¼¼­ÀÇ Á¦Á¶¾÷ü ȨÆäÀÌÁö µî¿¡ °¡¸é ÀÚ¼¼ÇÑ ÀڷḦ ±¸ÇÒ ¼ö ÀÖ´Ù. ¸®´ª½º Ä¿³ÎÀÇ ½Ã½ºÅÛ ÄÝÀÇ ¸ñ·Ï°ú Àμö·Î ·¹Áö½ºÅÍ¿¡ ¹«¾ùÀ» ³Ö¾îÁÖ¾î¾ß Çϴ°¡¿¡ °üÇÑ ÀÚ·á´Â http://linuxassembly.org ÀÇ ¹®¼­¸¦ ÂüÁ¶Ç϶ó.