´ÜÀûÀ¸·Î ¸»ÇÏÀÚ¸é, ¼½¼ÇÀº ºóÆ´ÀÌ ¾ø´Â ¾îµå·¹½ºµéÀÇ ¹üÀ§ÀÌ´Ù. ±×·¯ÇÑ ÁÖ¼Ò ¾È¿¡ ÀÖ´Â ¸ðµç µ¥ÀÌÅ͵éÀº °°Àº ¾î¶² Ưº°ÇÑ ¸ñÀûÀ¸·Î Ãë±ÞµÈ´Ù. ¿¹¸¦ µç´Ù¸é "read only" ¼½¼ÇÀÌ ÀÖ´Ù.
¸µÄ¿ ld
´Â ¸¹Àº ¸ñÀû ÆÄÀÏ (ÇÁ·Î±×·¥ÀÇ ÀϺκÐÀÎ)À»
Àоîµé¿©¼ ±×°ÍµéÀ» °áÇÕÇÏ¿© ½ÇÇà°¡´ÉÇÑ ÇÁ·Î±×·¥ Çü½ÄÀ» ±¸¼ºÇÑ´Ù.
as
°¡ ¸ñÀû ÆÄÀÏÀ» ¸¸µé¾î ³¾ ¶§ ±× ºÎºÐÀûÀÎ ÇÁ·Î±×·¥Àº
¾îµå·¹½º 0¿¡¼ ½ÃÀÛÇÏ´Â °ÍÀ¸·Î °¡Á¤µÈ´Ù. ld
´Â ¸¶Áö¸·
¾îµå·¹½º¸¦ ±× ºÎºÐÀûÀÎ ÇÁ·Î±×·¥À¸·Î ÇÒ´çÇÏ´Â µ¥, ±×·¡¼ ´Ù¸¥ ºÎºÐÀûÀÎ
ÇÁ·Î±×·¥µéÀÌ °ãÃÄÁöÁö ¾Ê´Â´Ù. ÀÌ°ÍÀº ½ÇÁö·Î ÇϳªÀÇ °£·«ÈÀÌ´Ù. ±× ·¯³ª
ÀÌ°ÍÀº as
°¡ ¼½¼ÇÀ» ¾î¶»°Ô »ç¿ëÇÏ´Â Áö¸¦ ¼³¸í ÇÏ´Â µ¥
ÃæºÐÇÏ´Ù.
ld
´Â ´ç½Å ÇÁ·Î±×·¥ÀÇ ºí·Ï ¹ÙÀÌÆ®¸¦ À̵éÀÇ ½ÇÇà½Ã°£
ÁÖ¼Ò·Î ¿Å±ä´Ù. ÀÌ·¯ÇÑ ºí·ÏµéÀº À̵éÀÇ ½ÇÇà½Ã°£ ÁÖ¼Ò·Î ´Ü´ÜÇÑ ´ÜÀÏü·Î½á
¹Ì²ô·¯Á® µé¾î°¡´Â °ÍÀÌ´Ù. ÀÌµé ºí·ÏµéÀÇ ±æÀÌ´Â º¯ÇÏÁö ¾Ê´Â´Ù. ÀÌ·¯ÇÑ
´Ü´ÜÇÑ ´ÜÀÏüµéÀº ¼½¼Ç(section) À¸·Î ºÒ¸®¿î´Ù. ½ÇÇà½Ã ÁÖ¼Ò¸¦
¼½¼Ç¿¡ ÇÒ´çÇÏ´Â °ÍÀ» Àç¹èÄ¡(relocation)¶ó ºÎ¸¥´Ù. relocationÀº
¸ñÀû ÆÄÀÏÀÇ ÁÖ¼ÒÀÇ ±â·ÏÀ» Á¶ÀýÇÏ´Â Å×½ºÅ©¸¦ Æ÷ÇÔ Çϴµ¥, ±×·¡¼ ±×µéÀº
°íÀ¯ÀÇ ½ÇÇà ½Ã°£ ÁÖ¼Ò·Î ÂüÁ¶µÈ´Ù.
For the H8/300 and H8/500,
and for the Hitachi SH,
as
pads sections if needed to
ensure they end on a word (sixteen bit) boundary.
as
°¡ ¸¸µé¾î³½ ¸ñÀû ÆÄÀÏ¿¡´Â ºñ¾îÀÖÀ» Áö¾ðÁ¤ Àû¾îµµ ¼¼
°³ÀÇ ¼½¼ÇÀÌ ÀÖ´Ù. ±×°ÍµéÀº text, data, bss ¼½¼Çµé·Î
ºÒ¸®¿î´Ù.
¸¸ÀÏ COFF Çü½ÄÀ¸·Î Ãâ·ÂÇÑ´Ù¸é,
as
´Â ¶ÇÇÑ ¿©·¯ºÐµéÀÌ `.section' Áö½Ã¾î
(see section ¼½¼Ç°ú Àç¹èÄ¡)¸¦ »ç¿ëÇÏ¿© ¸í½ÃÇÑ À̸§À¸·Î ºÒ¸®¿ì´Â
¼½¼ÇÀ» ¸¸µé¾î ³¾ ¼ö ÀÖ´Ù. ¸¸ÀÏ `.text' ¶Ç´Â `.data' ¼½¼Ç¿¡
¾î¶°ÇÑ Áö½Ã¾îµµ »ç¿ëÇÏÁö ¾Ê ´Â ´Ù¸é, ±×°Í¿¡ ÇØ´çÇÏ´Â ¼½¼ÇµéÀº ´ÜÁö
Á¸À縸 ÇÏ°í, ºñ¾î ÀÖ°Ô µÈ´Ù.
as
°¡ HPPA±âÁ¾¿¡¼ SOMÀ̳ª ELF Ãâ·ÂÀ» ¸¸µé¾î ³¾ ¶§,
´ç½ÅÀÌ `.space'¿Í `.subspace'¸¦ »ç¿ëÇÏ¿© ¸í½ÃÇÑ ´Ù¸£°Ô À̸§
ºÙ¿©Áø ¼½¼Çµµ ¸¸µé¾î ³¾ ¼ö ÀÖ´Ù. `.space', `.subspace'
¾î¼Àºí·¯ Áö½Ã¾î¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ °ÍÀº HP9000 Series 800 Assembly
Language Reference Manual(HP 92432-90001)À» º¸¶ó.
µ¡ºÙ¿©¼, SOM Ãâ·ÂÀ» ¸¸µé¾î ³¾ ¶§ as
´Â Ç¥ÁØ text, data,
bss ¼½¼Ç¿¡ ÀÖ¾î¼ ´Ù¸¥ À̸§À» »ç¿ëÇÑ´Ù. ÇÁ·Î±×·¥ text´Â `$CODE$'
¼½¼ÇÀÌ µÇ°í, data´Â `$DATA$' , BSS´Â `$BSS$'¼½¼ÇÀ¸·Î »ç¿ëµÈ´Ù.
¸ñÀû ÆÄÀϳ»¿¡¼, text ¼½¼ÇÀº 0
¹ø ÁÖ¼Ò¿¡¼ ½ÃÀÛÇÏ°í, data ¼½¼ÇÀÌ
±× ´ÙÀ½¿¡ µû¶ó¿À¸ç, ±× µÚ¿¡ bss ¼½¼ÇÀÌ µÚµû¸¥´Ù.
HPPA¿¡¼ SOMÀ̳ª ELF Ãâ·ÂÆÄÀÏÀ» ¸¸µé¾î ³¾ ¶§, text ¼½¼ÇÀº 0
¹ø
ÁÖ¼Ò¿¡¼ ½ÃÀÛÇϸç data ¼½¼ÇÀº 0x4000000
¿¡ ÀÖÀ¸¸ç, bss ¼½¼ÇÀº data ¼½¼Ç
µÚ¿¡ ¿Â´Ù.
as
´Â ¼½¼ÇÀÌ Àç¹èÄ¡ µÉ ¶§ ¾î¶² µ¥ÀÌÅÍ°¡ º¯°æµÇ´ÂÁö, ¾î¶»°Ô
±× µ¥ÀÌÅ͸¦ º¯ °æÇÏ´Â Áö¸¦ ld
°¡ ¾Ë°Ô Çϱâ À§ÇÏ¿© Àç¹èÄ¡¿¡
ÇÊ¿äÇÑ ¼¼¼¼ÇÑ Á¤º¸¸¦ ¸ñÀû ÆÄ ÀÏ¿¡ ¾´´Ù. Àç¹èÄ¡¸¦ Çϱâ À§Çؼ
ld
´Â ¾Õ¼ À̾߱â ÇßµíÀÌ ¸ñÀû ÆÄÀϳ»¿¡ ÀÖ´Â ÁÖ¼ÒÀÇ °¢°¢ÀÇ
½Ã°£À» ¾Ë¾Æ¾ß ÇÑ´Ù:
(ÁÖ¼Ò) - (¼½¼ÇÀÇ ½ÃÀÛÁÖ¼Ò)ÀÇ ¼öÄ¡°ªÀº ¹«¾ùÀ» ÀǹÌÇÒ±î?
»ç½Ç, as
¿¡ ÀÖ¾î¼ ¸ðµç ÁÖ¼Ò´Â ´ÙÀ½°ú °°ÀÌ Ç¥ÇöµÈ´Ù.
(¼½¼Ç) + (¼½¼Ç¼Ó¿¡¼ÀÇ ¿É¼Â)
´õ ³ª¾Æ°¡¼, as
°¡ µûÁö´Â ´ëºÎºÐÀÇ Ç¥ÇöµéÀº ÀÌ·¯ÇÑ
¼½¼Ç-°ü°è¿¡ ¹ÙÅÁÀ» µÐ´Ù.
ÀÌ ¸Å´º¾ó¿¡¼ ¿ì¸®´Â "secname ¼½¼Ç ¼ÓÀÇ ¿É¼Â N"À» {secname N} À¸·Î Ç¥±â ÇÑ´Ù.
text, data, bss ¼½¼Ç°ú´Â º°°³·Î ¿©·¯ºÐµéÀº Àý´ë(absolute) ¼½¼Ç¿¡ ´ëÇØ ¼
¾Ë¾Æ¾ß ÇÑ´Ù.
ld
°¡ ºÎºÐÀû ÇÁ·Î±×·¥µéÀ» ¼¯À» ¶§,
Àý´ë¼½¼Ç¾ÈÀÇ ÁÖ¼Ò´Â ¹Ù²îÁö ¾Ê°í ³²°Ô µÈ´Ù. ¿¹¸¦ µé¸é, ÁÖ¼Ò {absolute
0}
Àº ½ÇÇà½Ã°£ ÁÖ¼Ò 0À¸ ·Î ld
¿¡ ÀÇÇØ "Àç¹èÄ¡" µÈ´Ù.
Although the linker never arranges two partial programs'
data sections with overlapping addresses after linking, by definition
their absolute sections must overlap.
ÇÁ·Î±×·¥ ÇѺκп¡¼ ÁÖ¼Ò {absolute 239}
Àº ÇÁ·Î±×·¥ÀÇ ´Ù¸¥ ¾î´À
ºÎÀ§¿¡¼ {absolute 239}
ÁÖ¼Ò·Î ½ÇÇàµÉ ¶§ °°Àº ÁÖ¼Ò ·Î µÈ´Ù.
¼½¼Ç¿¡ ´ëÇÑ ÀÌ·¯ÇÑ °³³äÀº Á¤ÀǵÇÁö¾ÊÀº(undefined)¼½¼ÇÀ¸·Î
È®´ëµÈ´Ù. ¾î¼Àºí½Ã ¾Ë·ÁÁöÁö ¾ÊÀº ¾î¶°ÇÑ ÁÖ¼Òµç {undefined U}¿Í °°ÀÌ
Á¤ÀǵȴÙ. (U°¡ ÀÖ´Â ºÎºÐÀº ³ªÁß¿¡ ä¿öÁø´Ù.) ¼öÄ¡µéÀÌ Ç×»ó Á¤ÀǵÈ
ÀÌÈÄ¿¡ Á¤ÀǵÇÁö ¾ÊÀº ÁÖ¼Ò¸¦ »ý¼ºÇÏ´Â °ÍÀº Á¤ÀǵÇÁö ¾ÊÀº(undefined)
½Éº¼À» ±âÀçÇÏ´Â ¹æ¹ý »ÓÀÌ´Ù. ÅëĪ °øÅëµÈ ºí·ÏÀ̶ó ºÎ¸£´Â °Í¿¡ ´ëÇÑ
ÂüÁ¶°¡ ±×·¯ÇÑ ½Éº¼ÀÌ µÈ´Ù. ÀÌ°ÍÀÇ °ªÀÌ ¾î¼Àºí½Ã ¾Ë·ÁÁöÁö ¾Ê¾Æ¼
undefined ¼½¼ÇÀÌ µÇ´Â °ÍÀÌ´Ù.
À¯»çÇÏ°Ô section(¼½¼Ç) ³¹¸»Àº ¸µÅ©µÈ ÇÁ·Î±×·¥¿¡¼ ¼½¼ÇÀÇ ±×·ìÀ»
ÁöĪ Çϴµ¥¿¡µµ »ç¿ëµÈ´Ù. ld
´Â ¸ðµç ºÎºÐÀûÀÎ ÇÁ·Î±×·¥ÀÇ
text ¼½¼ÇÀ» ¸µÅ©µÈ ÇÁ ·Î±×·¥¾È¿¡ ÀÎÁ¢ÇÑ ÁÖ¼Ò·Î ³õ´Â´Ù. ÀÌ°ÍÀº
Åë¼ÓÀûÀ¸·Î ¸ðµç ºÎºÐÀû ÇÁ·Î±×·¥ÀÇ text ¼½¼ÇµéÀÇ ¸ðµç ÁÖ¼Ò¸¦ text
sectionÀ¸·Î ÂüÁ¶ÇÏ´Â °ÍÀÌ´Ù. data¿Í bss ¼½¼Çµµ ¸¶Âù°¡Áö´Ù.
¾î¶² ¼½¼ÇµéÀº ld
¿¡ ÀÇÇØ Ã³¸®µÇ°í, ´Ù¸¥ °ÍµéÀº
as
¿¡ ÀÇÇØ Ã³¸®µÇ´Âµ¥, ¾î ¼ÀºíÀ» ÇÒ ¶§¸¦ Á¦¿ÜÇÏ°í´Â ÀÌ´Â
º° Àǹ̰¡ ¾ø´Ù.
ld
¿¡ ÀÖ¾î¼ÀÇ ¼½¼Ç
ld
´Â ¾Æ·¡¿¡ ¿ä¾àÇÑ 4°¡Áö Á¾·ùÀÇ ¼½¼ÇÀ¸·Î ³ª´«´Ù.
as
¿Í
ld
´Â ±×°ÍµéÀ» ºÐ¸®µÈ, ±×·¯³ª °°Àº ¼½¼ÇÀ¸·Î Ãë±ÞÇÑ´Ù.
ÇϳªÀÇ ¼½¼Ç¿¡ ÇØ´çÇÏ´Â °ÍÀº ´Ù¸¥ ¼½¼Ç¿¡µµ ¸¶Âù°¡Áö·Î ÇØ´çÇÑ´Ù.
±×·¯³ª ÇÁ·Î±×·¥ÀÌ ½ÇÇà µÉ ¶§, Åë¼ÓÀûÀ¸·Î text ¼½¼ÇÀº º¯°æµÇÁö ¾Ê´Â´Ù.
text ¼½¼ÇÀº Á¾Á¾ ÇÁ·Î¼¼½º¿¡ ÀÇÇØ °øÀ¯µÈ´Ù. (text ¼½¼ÇÀº ¸í·É¾î¿Í »ó¼ö
°°Àº °Íµé À» Æ÷ÇÔÇÑ´Ù.) ½ÇÇàÁß ÇÁ·Î±×·¥ÀÇ data ¼½¼ÇÀº º¸Åë º¯°æµÈ´Ù.
¿¹¸¦ µé¸é C º¯¼öµéÀº data ¼½¼Ç¿¡ ÀúÀåµÈ´Ù.
ld
°¡ Àç¹èÄ¡½Ã¿¡ º¯°æÇÏÁö ¸»¾Æ¾ß ÇÒ ÁÖ¼Ò¸¦ ¿ì¸®°¡
ÂüÁ¶ÇÏ´Â µ¥ ¿ä±äÇÏ°Ô »ç¿ëµÈ´Ù. ÀÌ·¯ÇÑ ¶§¿¡ ¿ì¸®´Â Àý´ë ÁÖ¼Ò´Â
"Àç¹èÄ¡µÇÁö ¾Ê´Â °ÍÀÌ´Ù" ¶ó°í ¸»ÇÒ ¼ö ÀÖ´Ù. Àý´ëÁÖ¼Ò´Â Àç¹èÄ¡µ¿¾È¿¡
º¯°æµÇÁö ¾Ê´Â´Ù.
¼¼ °³ÀÇ Àç¹èÄ¡ °¡´ÉÇÑ ¼½¼ÇµéÀÇ ÀÌ»óÀûÀÎ ¿¹¸¦ µé¾îº¸ÀÚ. ÀÌ ¿¹´Â `.text'¿Í `.ata'¶ó°í ºÒ¸®¿ì´Â ÀüÅëÀûÀÎ ¼½¼ÇÀ» »ç¿ëÇÑ´Ù. ¸Þ¸ð¸® ÁÖ¼Ò´Â ¼öÆòÀûÀÎ ÃàÀ¸·Î °¡Á¤Çß´Ù.
as
¿¡ ÀÖ¾î¼ÀÇ ¼½¼Ç
¿©±â¿¡ ³ª¿À´Â ºÎºÐµéÀº ´ÜÁö as
ÀÇ ³»ºÎÀûÀÎ »ç¿ë¿¡ °ü·ÃµÈ
°ÍÀÌ´Ù. À̰͵éÀº ½ÇÇà½Ã°£¿¡´Â º°»ó°üÀÌ ¾ø´Â °ÍµéÀÌ´Ù. ¿©·¯ºÐµéÀÇ
ÀϹÝÀûÀÎ ¸ñÀû¿¡´Â ÀÌ·¯ÇÑ °ÍµéÀ» ¾Ë¾Æ¾ß ÇÒ Çʿ伺À» ´À³¢Áö ¸ø ÇÒ °ÍÀÌ´Ù.
±×·¯³ª À̰͵éÀº as
ÀÇ °æ°í¸Þ ¼¼Áö·Î ³ªÅ¸³¯ ¼ö ÀÖ´Ù.
±×·¸±â ¶§¹®¿¡ ¾Ë¾ÆµÎ¸é ±×·¯ÇÑ Àǹ̵éÀ» ÆľÇÇÏ´Â µ¥ µµ¿òÀÌ µÉ °ÍÀÌ´Ù.
ÀÌ·¯ÇÑ ºÎºÐµéÀº ¾î¼Àºí¸® ¾ð¾î·Î ÀÛ¼ºµÈ ÇÁ·Î±×·¥³»¿¡¼ÀÇ ¸ðµç Ç¥ÇöµéÀÇ
°ªÀÌ ¼½¼Ç-°ü°è ÁÖ¼Ò·Î µÇ´Â °ÍÀ» Çã¿ëÇϱâ À§Çؼ »ç¿ëµÈ´Ù.
¾î¼ÀºíµÈ ¹ÙÀÌÆ®µéÀº
ÀüÅëÀûÀ¸·Î
µÎ °³ÀÇ ¼½¼Ç(text¿Í data)ÀÇ »óÅ·ΠµÈ´Ù.
¿©·¯ºÐµéÀº
¼½¼ÇÀ̶ó ºÒ¸®¿ì´Â ºÐ¸®µÈ µ¥ÀÌÅÍ
text or data
±×·ìÀ» °¡Áú ¼ö ÀÖ´Â µ¥, ±× ±×·ìÀº ¼³»ç ¾î¼À ºí¸® ¼Ò½º¿¡¼ °¡±îÀÌ¿¡
ÀÎÁ¢ÇÏÁö ¾Ê´Â´Ù ÇÒÁö¶óµµ ¸ñÀû ÆÄÀϾȿ¡¼ ¼·Î¸¦ ÇÑÂÊÀ» ³¡À¸·ÎÇÏ¿© °¡±îÀÌ
Á¸ÀçÇϵµ·Ï ÇÏ´Â °ÍÀÌ´Ù. as
´Â ÀÌ·¯ÇÑ ¸ñÀûÀ¸·Î
º¸Á¶¼½¼Ç(subsections)À̶ó´Â °ÍÀ» »ç¿ëÇϵµ·Ï Çã¿ëÇÑ´Ù. °¢°¢ÀÇ
¼½¼Ç³»¿¡¼, 0 ¿¡¼ 8192±îÁöÀÇ °ªÀÌ ºÙ¿©Áø º¸Á¶¼½¼ÇÀÌ Á¸ÀçÇÒ ¼ö ÀÖ´Ù.
°°Àº º¸Á¶¼½¼Ç¼ÓÀ¸·Î ¾î¼ÀºíµÈ °´Ã¼µéÀº °°Àº º¸Á¶¼½¼Ç¾È¿¡ ÀÖ´Â °´Ã¼µé°ú
ÇÔ²² ¸ñÀû ÆÄÀÏ·Î µé ¾î°£´Ù. ¿¹¸¦ µéÀÚ¸é, ÄÄÆÄÀÏ·¯´Â text ¼½¼Ç¿¡
»ó¼öµéÀ» ÀúÀåÇÒ °ÍÀ̳ª, ¾î¼Àºí µÈ ÇÁ·Î±×·¥¼Ó¿¡ À̸®Àú¸® Èð¾î³õ±â´Â ½È¾î
ÇÒ °ÍÀÌ´Ù. ÀÌ·¯ÇÑ °æ¿ì¿¡ ÄÄÆÄÀÏ·¯ ´Â Ãâ·ÂµÇ´Â ÄÚµåÀÇ °¢°¢ÀÇ ¼½¼Ç ÀÌÀü¿¡
`.text 0'°ú °°Àº °ÍÀ» ¹ß»ý½Ãų ¼ö ÀÖ À» °ÍÀÌ´Ù. ±×¸®°í Ãâ·ÂµÇ´Â
°¢°¢ÀÇ »ó¼ö±×·ìÀÌÀü¿¡ `.text 1'À» ¹ß»ý½Ãų ¼ö ÀÖ´Ù.
º¸Á¶¼½¼ÇÀº ¼±ÅÃÀûÀÌ´Ù. ¸¸ÀÏ º¸Á¶¼½¼ÇÀ» »ç¿ëÇÏÁö ¾Ê´Â´Ù¸é ¸ðµç °ÍµéÀÇ º¸ Á¶¼½¼Ç ¼ýÀÚ´Â 0ÀÌ µÉ °ÍÀÌ´Ù.
°¢°¢ÀÇ º¸Á¶¼½¼ÇÀº 0¿¡¼ 4¹ÙÀÌÆ® ¾¿ °öÇؼ ³ô¾ÆÁø´Ù. (º¸Á¶¼½¼ÇÀº
as
ÀÇ ´Ù ¸¥ ÃëÇâ¿¡ µû¶ó ´Ù¸£°Ô °è»êµÇ¾îÁú °ÍÀÌ´Ù.)
º¸Á¶¼½¼ÇÀº ¸ñÀû ÆÄÀϾȿ¡¼ ÀÛÀº ¼ö¿¡¼ Å« ¼ö·Î Á¤·ÄµÈ »óÅ·Π³ªÅ¸³´Ù.
(´Ù¸¥ À̵éÀÇ ÄÄÆÄÀÏ·¯¿¡µµ ÇØ´çµÇ´Â °ÍÀÌ´Ù.) ¸ñÀû ÆÄÀÏÀº º¸Á¶¼½¼ÇÀ»
2¹øÀÌ»ó Æ÷ÇÔÇÏÁö ¾Ê´Â´Ù. ¸ñÀû ÆÄÀÏÀ» ó¸®ÇÏ´Â ld
¿Í ´Ù¸¥
ÇÁ·Î±×·¥µéÀº ±×·¯ÇÑ °ÍµéÀÇ ÀÚÃ븦 º¸Áö ¸øÇÑ´Ù. ±×µéÀº ´ÜÁö ¸ðµç text
º¸Á¶¼½¼ÇÀ» ÇϳªÀÇ text ¼½¼ÇÀ¸·Î º¼ »ÓÀ̸ç, ¸ðµç data º¸Á¶¼½¼ÇÀº ÇϳªÀÇ
data ¼½¼ÇÀ¸·Î º¼ »ÓÀÌ ´Ù.
º¸Á¶¼½¼ÇÀ» ¸í½ÃÇÏ·Á¸é, `.text expression'À̳ª `.data expression' ±¸¹®°ú °°Àº ¼öÄ¡·Î Ç¥½ÃµÈ ÀÎÀÚ¸¦ »ç¿ëÇ϶ó. COFF Ãâ·ÂÀ» ¸¸µé¾î ³¾ ¶§, ¿©·¯ºÐµéÀº Ưº°ÇÑ º¸Á¶¼½¼Ç ÀÎÀÚ¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â µ¥, ÀÌ°ÍÀÇ À̸§Àº ¸¶À½´ë·Î ºÙÀÏ ¼ö ÀÖ´Ù . (`section name, expression'.) ExpressionÀº Àý´ëÇ¥ÇöÀÌ µÇ¾î¾ß ÇÑ´Ù. (See section Ç¥Çö) ´ÜÁö `.text'¶ó°í¸¸ ¾´´Ù¸é `.text 0'ÀÌ °¡Á¤µÈ´Ù. ¸¶Âù°¡Áö·Î `.data'´Â `.data 0'À» ¶æÇÑ´Ù. ¾î¼Àºí¸®´Â 'text 0'¿¡¼ ½ÃÀÛÇÑ´Ù. º¸±â°¡ ¸î °³ ÀÖ´Ù.
.text 0 # The default subsection is text 0 anyway. .ascii "This lives in the first text subsection. *" .text 1 .ascii "But this lives in the second text subsection." .data 0 .ascii "This lives in the data section," .ascii "in the first data subsection." .text 0 .ascii "This lives in the first text section," .ascii "immediately following the asterisk (*)."
°¢°¢ÀÇ ¼½¼ÇÀº À§Ä¡ Ä«¿îÅͶó°í ÇÏ´Â ±× ¼½¼Ç¼ÓÀ¸·Î ¾î¼ÀºíµÈ ¸ðµç ¹ÙÀÌÆ® ¸¶
´Ù Çϳª¾¿ÀÇ Áõ°¡¸¦ ÇÏ´Â °ÍÀ» °¡Áö°í ÀÖ´Ù.
º¸Á¶¼½¼ÇÀº ´ÜÁö º¸Á¶¼½¼ÇÀ̶ó´Â °³³äÀÌ ¾ø´Â as
¿¡°Ô
Á¦ÇÑµÈ ÆíÀǸ¦ Á¦°øÇÏÀÚ´Â °ÍÀÌ´Ù. ¹Ù·Î À§Ä¡ Ä«¿îÅ͸¦ ó¸®ÇÏ´Â ¹æ¹ýÀº
¾øÀ¸³ª .align
À̶ó´Â Áö½Ã¾î¸¦ »ç¿ëÇÏ¿© ±×°ÍÀ» º¯°æÇÒ ¼ö´Â ÀÖ´Ù.
±×¸®°í ¶óº§ Á¤ÀÇ´Â ±×°ÍÀÇ ÇöÀç°ªÀ» ĸÃÄÇÑ ´Ù. ±¸¹®ÀÌ ¾î¼ÀºíµÇ´Â ¼½¼ÇÀÇ
À§Ä¡ Ä«¿îÅÍ´Â È°¼ºÈµÈ(active) À§Ä¡ Ä«¿îÅͶó °í ºÎ¸¥´Ù.
bss ¼½¼ÇÀº Áö¿ªÀûÀÎ °øÅëµÇ´Â °ªµéÀ» ÀúÀåÇϱâ À§ÇÑ Àå¼Ò·Î »ç¿ëµÈ´Ù. ¿©·¯ºÐ µéÀº bss ¼½¼Ç¿¡ ÁÖ¼Ò °ø°£À» ÇÒ´çÇÒ ¼ö ÀÖÀ¸³ª, ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ±â Àü¿¡´Â bss ¼½¼Ç¿¡ data¸¦ ·ÎµåÇÒ ¼ö´Â ¾ø´Ù. ¿©·¯ºÐµéÀÇ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ±â ½ÃÀÛÇÒ ¶§, ¸ðµç bss ¼½¼ÇÀÇ ³»¿ë¹°Àº 0 ¹ÙÀÌÆ®°¡ µÈ´Ù.
bss ¼½¼ÇÀÇ ÁּҴ Ưº°ÇÑ Áö½Ã ÀÚ¿¡ ÀÇÇØ ÇÒ´çµÈ´Ù. ¿©·¯ºÐµéÀº bss ¿µ¿ª¿¡
¹Ù·Î ¾î¶² °ÍÀ» Áý¾î³Ö°í ¾î¼Àºí ÇÒ ¼ö´Â ¾ø´Ù.
See section .comm symbol
, length , see section .lcomm symbol
, length.
(¿ªÀÚÁÖ: C¿¡¼ °øÅëÀûÀ¸·Î »ç¿ëµÇ´Â Àü¿ªº¯¼ö Áß ÃʱâȵÇÁö ¾Ê´Â º¯¼öµéÀº bss ¼½¼Ç¿¡ Ç¥½Ã°¡ µÇ´Â °Í °°´Ù. `.comm p,4,4' ´Â C¿¡¼ Àü¿ªº¯¼ö·Î `char *p;'³ª `int p;' ·Î ¼±¾ðÇÑ °Í°ú °°Àº ÀǹÌÀÌ´Ù. Àü¿ªº¯¼ö Áß¿¡¼ ÃʱâÈµÈ °ÍÀº data ¼½¼ÇÀ¸·Î µé¾î°£´Ù.)
Go to the first, previous, next, last section, table of contents.