¿ªÆª
ѧϰÈκÎÒ»Ãűà³ÌÓïÑÔ£¬¶¼»á´ÓHello World ¿ªÊ¼¡£¶ÔÓÚÒ»ÃÅ´Óδ½Ó´¥¹ýµÄÓïÑÔ£¬ÔÚ¶Ìʱ¼äÄÚÎÒÃǶ¼ÄÜÓÃÕâÖÖÓïÑÔд³öËüµÄhello
world¡£È»¶ø£¬¶ÔÓÚhello world Õâ¸ö¼òµ¥³ÌÐòµÄÄÚ²¿ÔËÐлúÖÆ£¬ÎÒÏàÐÅ»¹ÓкܶàÈ˶¼²»ÊǺÜÇå³þ¡£
hello world ÕâЩÐÅÏ¢ÊÇÈçºÎͨÏÔʾÆ÷¹ýÏÔʾµÄ£¿cpuÖ´ÐеĴúÂëºÍ³ÌÐòÖÐÎÒÃÇдµÄµÄ´úÂë¿Ï¶¨²»Ò»Ñù£¬ËýÊÇʲôÑù×ӵģ¿ÓÖÊÇÈçºÎ´ÓÎÒÃÇдµÄ´úÂë±ä³ÉcpuÄÜÖ´ÐеĴúÂëµÄ£¿³ÌÐòÔËÐÐʱ´úÂëÊÇÔÚʲôµØ·½£¿ËýÃÇÊÇÈçºÎ×éÖ¯µÄ£¿³ÌÐòÖеıäÁ¿´æ´¢ÔÚʲôµØ·½£¿º¯Êýµ÷ÓÃÊÇÔõÑùʵÏֵģ¿
ÕâÆªÎÄÕ½«¼òµ¥µÄÌÖÂÛ³ÌÐòµÄÔËÐлúÖÆ
¿ª·¢Æ½Ì¨Òþ²ØµÄ¹ý³Ì
ÿһÖÖÓïÑÔ¶¼ÓÐ×Ô¼ºµÄ¿ª·¢Æ½Ì¨£¬ÎÒÃǵijÌÐò´ó¶àÊÇÒ²¶¼ÊÇÔÚÕâÀïµ®ÉúµÄ¡£´Ó³ÌÐòÔ´´úÂëµ½¿ÉÖ´ÐÐÎļþµÄת»¯¹ý³ÌÆäʵÊǷֺܶಽ¶øÇÒÊǺܸ´Ôӵģ¬Ö»ÊǶøÏÖÔڵĿª·¢Æ½Ì¨°ÑËùÓеÄÕâЩÊÂÇé¶¼×Ô¼º³Ðµ£ÁË£¬¸øÎÒÃÇ´øÀ´·½±ãµÄͬʱËýÒ²Ó°²ØÁË´óÁ¿µÄʵÏÖϸ½Ú¡£ËùÒÔ´ó¶à³ÌÐòÔ±Ö»¸ºÔð±àд´úÂ룬ÆäËüµÄ¸´ÔÓµÄת»»¹¤×÷ÔòÓÉ¿ª·¢Æ½Ì¨Ä¬Ä¬Íê³É¡£
°´ÕÕÎÒµÄÀí½â£¬¼òµ¥ µÄ˵´ÓÔ´´úÂëµ½¿ÉÖ´ÐÐÎļþµÄ¹ý³Ì¿É·ÖΪÒÔϼ¸¸ö½×¶Î:
1¡¢´ÓÔ´´úÂëµ½»úÆ÷ÓïÑÔ²¢½«²úÉúµÄ»úÆ÷ÓïÑÔ°´ÕÕÒ»¶¨µÄ¹æÂÉ×éÖ¯ÆðÀ´¡£ÎÒÃÇÔÝÇÒ³ÆÎªÎļþA¡£
2¡¢°ÑÎļþAºÍÔËÐÐAÐèÒªµÄÎļþB£¨Èç¿âº¯Êý£©Á´½ÓÆðÀ´£¬ÐγÉÎļþA+
3¡¢°ÑÎļþA+×°ÔØ½øÈëÄڴ棬ÔËÐÐÎļþ £¨ÆäʵÈç¹ûÊÇ¿´²Î¿¼Êé»òÕ߯äËû×ÊÁϵϰ¿ÉÄܲ»Ö¹Õ⼸²½£¬Ö»ÊÇÕâÀïΪÁ˼ò»¯ÎÒ°ÑËü¹éÄÉΪ3²½£©
ÕâЩÊÂÐγɿÉÖ´ÐÐÎļþµÄ¹Ø¼ü²½Ö裬ȱһ²»¿É¡£ÏÖÔÚ¿´µ½±»¿ª·¢Æ½Ì¨¡°ÃɱΡ±Á˰ɡ£ÏÂÃæµÄ²¿·Ö½«²¦¿ªÃÔÎí£¬»¹Ä㿪·¢Æ½Ì¨µÄÕæÃæÄ¿¡£
Ä¿±êÎļþ
ÔÚ¼ÆËã»úÁìÓòÓйýÒ»¾ä¾µäµÄ»°£º
¡°any problem in computer science can
be sloved by another layer of indirecition¡± ¡°¼ÆËã»ú¿ÆÑ§ÁìÓòµÄÈκÎÎÊÌâ¶¼¿ÉÒÔͨ¹ýÔö¼ÓÒ»¸öÖмä²ãÀ´½â¾ö¡±
±ÈÈç˵ҪʵÏÖ´ÓAµ½BµÄת»»£¬¿ÉÒÔÏȰÑAת»»ÎªÎļþA+£¬ÔÙ°ÑÎļþA+ת»»ÎªÎÒÃÇÐèÒªµÄÎļþB¡££¨ÆäʵÔÚ²¨ÀûÑǵġ¶how
to slove it¡·ÀïÃæ¶ÔÕâÖÖ·½·¨Ò²ÓÐÐðÊö¡£ÔÚ½âÌâµÄʱºò¿ÉÒÔͨ¹ýÔö¼ÓÖмä²ãÀ´¼ò»¯ÎÊÌ⣩
ÄÇô´ÓÔ´´úÂëµ½¿ÉÖ´ÐÐÎļþµÄ¹ý³Ì¿ÉÒÔÕâÑùÀí½â¡£´ÓÔ´´úÂëµ½¿ÉÖ´ÐÐÎļþÒ²ÊÇÒ»ÑùµÄ£¬
ͨ¹ý£¨²»¶ÏµÄ£©ÔÚËûÃÇÖ®¼äÔö¼ÓÖмä²ã£¬À´½â¾öÎÊÌâ¡£ºÍÉÏÎÄ˵µÄ£¬ ÏȰÑÔ´³ÌÐòת»¯ÎªÖмäÎļþA£¬ÔÙ°ÑÖмäÎļþת»¯ÎªÎÒÃÇÐèÒªµÄÄ¿±êÎļþ¡£
ÔÚ´¦ÀíÎļþµÄʱºò¾ÍÊǰ´ÕÕÕâÖÖ˼·À´µÄ¡£
ÆäʵÉÏÃæËµµÄÎļþA¸üרҵµÄ˵·¨ÊÇ£ºÄ¿±êÎļþ¡£Ëý²»ÊÇ¿ÉÖ´ÐгÌÐò£¬ÐèÒªºÍÆäËüµÄÄ¿±êÎļþ½øÐÐÁ´½Ó¡¢×°Ôغó²ÅÄÜÖ´ÐС£¶ÔÓÚÒ»¸öÔ´³ÌÐò£¬
¿ª·¢Æ½Ì¨Ê×ÏÈÒª×öµÄ¾ÍÊǰÑÔ´³ÌÐò·Òë³É»úÆ÷ÓïÑÔ¡£ÆäÖкÜÖØÒªµÄÒ»²¿¾ÍÊDZàÒë¡£ÏàÐźܶàÈ˶¼ÖªµÀ£¬¾ÍÊǰÑÔ´´úÂë·Òë³É»úÆ÷ÓïÑÔ£¨Æäʵ¾ÍÊÇÒ»¶Ñ¶þ½øÖÆ´úÂ룩¡£±àÒë֪ʶºÜÖØÒª£¬È´²»ÊDZ¾ÎĵÄÖØµã£¬ÓÐÐËȤµÄ¿É×ÔÐÐgoogle¡£
Ä¿±êÎļþ¸ñʽ£º
ÏÖÔÚÀ´¿´Ò»ÏÂÉÏÃæËµµÄÄ¿±êÎļþÊÇÈçºÎ×éÖ¯µÄ£¨Ò²¾ÍÊÇ´æ·Å½á¹¹£©¡£
ÆðÔ´£º
ÏëÏóÒ»ÏÂÈç¹ûÊÇÄãÀ´Éè¼Æ»áÈçºÎ×éÖ¯ÕâЩ¶þ½øÖÆ´úÂ룿¾ÍÏñÊé×ÀÉϵÄÎïÆ·Òª·ÖÀà·ÅÖòÅÕû½àÒ»Ñù£¬ÎªÁ˱ãÓÚ¹ÜÀí·Òë³öÀ´µÄ¶þ½øÖÆ´úÂëÒ²·ÖÀà´æ·Å£¬°Ñ±íʾ´úÂëµÄ·ÅÔÚÒ»Æð£¬±íʾÊý¾ÝµÄ·ÅÔÚÒ»Æð¡£ÕâÑù£¬¶þ½øÖÆ´úÂë¾Í·ÖΪÁ˲»Í¬µÄ¿éÀ´´æ·Å¡£ÕâÑùµÄÒ»¸öÇøÓò¾ÍÊDZ»³ÆÎª¶Î£¨segment£©µÄ¶«Î÷¡£
±ê×¼£º
ºÍ¼ÆËã»ú¿ÆÑ§ÖеĺܶණÎ÷Ò»Ñù£¬ÎªÁË·½±ãÈËÃǵĽ»Á÷¡¢³ÌÐòµÄ¼æÈݵÈÎÊÌ⡣ҲΪÕâÖÖ¶þ½øÖƵĴæ·Å·½Ê½Öƶ©Á˱ê×¼£¬ÓÚÊÇCOFF£¨common
object file format£©¾Íµ®ÉúÁË¡£ÏÖÔÚµÄwindows¡¢Linux¡¢µÈÖ÷Á÷²Ù×÷ϵͳϵÄÄ¿±êÎļþ¸ñʽºÍCOFF´óͬСÒ죬¶¼¿ÉÒÔÈÏΪÊÇËüµÄ±äÖÖ¡£
a.out£º
a.outÊÇÄ¿±êÎļþµÄĬÈÏÃû×Ö¡£Ò²¾ÍÊÇ˵£¬µ±±àÒëÒ»¸öÎļþµÄʱºò£¬Èç¹û²»¶Ô±àÒëºóµÄÄ¿±êÎļþÖØÃüÃû£¬±àÒëºó¾Í»á²úÉúÒ»¸öÃû×ÖΪa.outµÄÎļþ¡£¾ßÌåµÄΪʲô»áÓÃÕâ¸öÃû×ÖÕâÀï¾Í²»ÔÚÉÁË¡£ÓÐÐËȤµÄ¿ÉÒÔ×Ô¼ºgoogle¡£
ÏÂÃæµÄͼ¿ÉÒÔÈÃÄã¸üÖ±¹ÛµÄÁ˽âÄ¿±êÎļþ:

ÉÏͼÊÇÄ¿±êÎļþµÄµäÐͽṹ£¬Êµ¼ÊµÄÇé¿ö¿ÉÄÜ»áÓÐËù²î±ð£¬µ«¶¼ÊÇÔÚÕâ¸ö»ù´¡ÉÏÑÜÉú³öÀ´µÄ¡£
ELFÎļþÍ·£º¼´ÉÏͼÖеĵÚÒ»¸ö¶Î¡£ÆäÖеÄheaderÊÇÄ¿±êÎļþµÄÍ·²¿£¬ÀïÃæ°üº¬ÁËÕâ¸öÄ¿±êÎļþµÄһЩ»ù±¾ÐÅÏ¢¡£Èç¸ÃÎļþµÄ°æ±¾¡¢Ä¿±ê»úÆ÷Ðͺš¢³ÌÐòÈë¿ÚµØÖ·µÈµÈ¡£
Îı¾¶Î£ºÀïÃæµÄÊý¾ÝÖ÷ÒªÊdzÌÐòÖеĴúÂ벿·Ö¡£
Êý¾Ý¶Î£º³ÌÐòÖеÄÊý¾Ý²¿·Ö£¬±ÈÈç˵±äÁ¿¡£
ÖØ¶¨Î»¶Î£º
ÖØ¶¨Î»¶Î°üÀ¨ÁËÎı¾Öض¨Î»ºÍÊý¾ÝÖØ¶¨Î»£¬ÀïÃæ°üº¬ÁËÖØ¶¨Î»ÐÅÏ¢¡£Ò»°ãÀ´Ëµ£¬´úÂëÖж¼»á´æÔÚÒýÓÃÁËÍⲿµÄº¯Êý£¬»òÕß±äÁ¿µÄÇé¿ö¡£¼ÈÈ»ÊÇÒýÓã¬ÄÇôÕâЩº¯Êý¡¢±äÁ¿²¢Ã»´æÔÚ¸ÃÄ¿±êÎļþÄÚ¡£ÔÚʹÓÃËûÃǵÄʱºò£¬
¾ÍÒª¸ø³öËûÃǵÄʵ¼ÊµØÖ·£¨Õâ¸ö¹ý³Ì·¢ÉúÔÚÁ´½ÓµÄʱºò£©¡£ÕýÊÇÕâÐ©ÖØ¶¨Î»±í£¬ÌṩÁËѰÕÒÕâЩʵ¼ÊµØÖ·µÄÐÅÏ¢¡£Àí½âÁËÉÏÃæÖ®ºó£¬Îı¾Öض¨Î»ºÍÊý¾ÝÖØ¶¨Î»Ò²¾Í²»ÄÑÀí½âÁË¡£
·ûºÅ±í£º·ûºÅ±í°üº¬ÁËÔ´´úÂëÖÐËùÓеķûºÅÐÅÏ¢
¡£°üÀ¨Ã¿¸ö±äÁ¿Ãû¡¢º¯ÊýÃûµÈµÈ¡£ÀïÃæ¼Ç¼ÁËÿ¸ö·ûºÅµÄÐÅÏ¢£¬±ÈÈç˵´úÂëÖÐÓС°student¡±Õâ¸ö·ûºÅ£¬¶ÔÓ¦µÄÔÚ·ûºÅ±íÖоͰüÀ¨Õâ¸ö·ûºÅµÄÐÅÏ¢¡£°üÀ¨Õâ¸ö·ûºÅËùÔڵĶΡ¢ËüµÄÊôÐÔ£¨¶ÁдȨÏÞ£©µÈÏà¹ØÐÅÏ¢¡£
Æäʵ·ûºÅ±í×î³õµÄÀ´Ô´¿ÉÒÔ˵ÊÇÔÚ±àÒëµÄ´Ê·¨·ÖÎö½×¶Î¡£ÔÚ×ö´Ê·¨·ÖÎöµÄʱºò£¬¾Í°Ñ´úÂëÖеÄÿ¸ö·ûºÅ¼°ÆäÊôÐÔ¶¼¼Ç¼ÔÚ·ûºÅ±íÖС£
×Ö·û´®±í£ººÍ·ûºÅ±í²î²»¶àµÄ¹¦ÄÜ£¬´æ·ÅÁËһЩ×Ö·û´®ÐÅÏ¢¡£
ÆäÖл¹ÓÐÒ»µãҪ˵ÂðµÄÊÇ£ºÄ¿±êÎļþ¶¼ÊÇÒÔ¶þ½øÖÆÀ´´æ´¢µÄ£¬Ëü±¾Éí¾ÍÊǶþ½øÖÆÎļþ¡£ÏÖʵÖеÄÄ¿±êÎļþ»á±ÈÕâ¸öÄ£ÐÍÒª¸´ÔÓЩ£¬µ«ÊÇËüµÄ˼·¶¼ÊÇÒ»ÑùµÄ£¬¾ÍÊǰ´ÕÕÀàÐÍÀ´´æ´¢£¬ÔÙ¼ÓÉÏһЩÃèÊöÄ¿±êÎļþÐÅÏ¢µÄ¶ÎºÍÁ´½ÓÖÐÐèÒªµÄÐÅÏ¢¡£
a.outÆÊ·Ö
Hello World
¿Õ¿ÚÎÞÆ¾£¬ÎÒÃÇÏÖÔÚ¾ÍÀ´Ñо¿Ò»ÏÂhello world±àÒëºóÐγɵÄÄ¿±êÎļþ£¬ÕâÀïÓÃ
C À´ÃèÊö¡£ ¼òµ¥µÄhellow world Ô´Â룺
/*hello.c*/ #include<stdio.h> int main() { int a=5; printf("hellow world \n"); } |
ΪÁËÔÚÊý¾Ý¶ÎÖÐÒ²ÓÐÊý¾Ý¿É·Å£¬ÕâÀïÔö¼ÓÁË¡°int a=5¡±¡£
Èç¹ûÔÚVCÉϵϰ£¬µã»÷ÔËÐбãÄÜ¿´µ½½á¹û¡£ÎªÁËÄÜ¿´Çå³þÄÚ²¿µ½µ×ÊÇÈçºÎ´¦ÀíµÄ£¬ÎÒÃÇʹÓÃGCCÀ´±àÒë¡£
ÔËÐÐ
gcc hello.c
ÔÙ¿´ÎÒÃǵÄĿ¼Ï£¬¾Í¶àÁËÄ¿±êÎļþa.out¡£

ÏÖÔÚÎÒÃÇÏë×öµÄÊÇ¿´¿´a.outÀïµ½µ×ÓÐʲô£¬¿ÉÄÜÓÐͯЬ»ØÏëµ½ÓÃvimÎı¾²é¿´£¬µ±Ê±ÎÒÒ²ÊÇÕâôÌìÕæµÄÈÏΪ¡£µ«a.outÊǺεȶ«Î÷£¬ÔõÄÜÕâô¼òµ¥¾Í±©Â¶³öÀ´ÄØ
¡£Êǵģ¬vim²»ÐС£¡°ÎÒÃÇÓöµ½µÄÎÊÌâ´ó¶àÊÇǰÈ˾ÍÒѾÓöµ½²¢ÇÒÒѾ½â¾öµÄ¡±£¬¶Ô£¬ÆäÖÐÓÐÒ»¸öºÜÇ¿º·µÄ¹¤¾ß½Ð×öobjdump¡£ÓÐÁËËü£¬ÎÒÃǾÍÄܳ¹µ×µÄÈ¥Á˽âÄ¿±êÎļþµÄ¸÷ÖÖϸ½Ú£¬µ±È»»¹ÓÐÒ»¸ö½Ð×öreadelfÒ²ºÜÓÐÓã¬Õâ¸öÔÚºóÃæ½éÉÜ¡£ÕâÁ½¸ö¹¤¾ßÒ»°ãLinuxÀïÃæ¶¼»á×Ô´øÓÐÓУ¬¿ÉÒÔ×ÔÐÐgoogle
×¢£ºÕâÀïµÄ´úÂëÖ÷ÒªÊÇÔÚLinuxÏÂÓÃGCC±àÒ룬²é¿´Ä¿±êÎļþÓõÄÊÇObjdump¡¢readelf¡£µ«ÊÇÎÒ»á°ÑËùÓеÄÔËÐнá¹û¶¼ÉÏͼ£¬ËùÒÔ֮ǰûÓнӴ¥¹ýLinuxµÄͯЬÀ´¿´ÏÂÃæµÄÄÚÈÝÒ²ÍêȫûÎÊÌâŶ¡£ÎÒÓõÄÊÇubuntu£¬¸Ð¾õͦºÃ~
ÏÂÃæÊÇa.outµÄ×éÖ¯½á¹¹£º£¨Ã¿¶ÎµÄÆðʼµØÖ·¡¢¡¢´óСµÈµÈ£©
²é¿´Ä¿±êÎļþµÄÃüÁîÊÇ objdump -h a.out

¾ÍºÍÉÏÎÄÖÐÃèÊöµÄÄ¿±êÎļþµÄ¸ñʽһÑù£¬¿ÉÒÔ¿´³öÊÇ·ÖÀà´æ´¢µÄ¡£Ä¿±êÎļþ±»·ÖΪÁË6¶Î¡£
´Ó×óµ½ÓÒ£¬µÚÒ»ÁУ¨Idx Name£©ÊǶεÄÃû×Ö£¬µÚ¶þÁУ¨Size£©ÊÇ´óС
£¬VMAΪÐéÄâµØÖ·£¬LMAΪÎïÀíµØÖ·£¬File offÊÇÎļþÄ򵀮«ÒÆ¡£Ò²¾ÍÊÇÕâ¶ÎÏà¶ÔÓÚ¶ÎÖÐijһ²Î¿¼£¨Ò»°ãÊÇ¶ÎÆðʼ£©µÄ¾àÀë¡£×îºóµÄAlgnÊǶԶÎÊôÐÔµÄ˵Ã÷£¬ÔÝʱ²»ÓÃÀí»á
¡°text¡±¶Î£º´úÂë¶Î¡£
¡°data¡±¶Î£ºÒ²¾ÍÊÇÉÏÃæËµµÄÊý¾Ý¶Î£¬±£´æÁËÔ´´úÂëÖеÄÊý¾Ý£¬Ò»°ãÊÇÒÔ³õʼ»¯µÄÊý¾Ý¡£
¡°bss¡±¶Î£ºÒ²ÊÇÊý¾Ý¶Î£¬´æ·ÅÄÇЩδ³õʼ»¯µÄÊý¾Ý£¬ÒòΪÕâЩÊý¾Ý»¹Î´·ÖÅä¿Õ¼ä£¬ËùÒÔµ¥¶À´æ·Å¡£
¡°rodata¡±¶Î£ºÖ»¶ÁÊý¾Ý¶Î£¬ÀïÃæ´æ·ÅµÄÊý¾ÝÊÇÖ»¶ÁµÄ¡£
¡°cmment¡±´æ·ÅµÄÊDZàÒëÆ÷°æ±¾ÐÅÏ¢¡£
ʣϵÄÁ½¶Î¶ÔÎÒÃǵÄÌÖÂÛûÓÐʵ¼ÊÒâÒ壬¾Í²»ÔÙ½éÉÜ¡£ÈÏΪËûÃǰüº¬ÁËһЩÁ´½Ó¡¢±àÒë¡¢×°ÔÚµÄÐÅÏ¢¾Í¿É¡£
×¢£º ÕâÀïµÄÄ¿±êÎļþ¸ñʽֻÊÇÁгöʵ¼ÊÇé¿öÖÐÖ÷Òª²¿·Ö¡£Êµ¼ÊÇé¿ö»¹ÓÐһЩ±íδÁгö¡£Èç¹ûÄãÒ²ÔÚÓÃLinux£¬¿ÉÒÔÓÃobjdump
-X Áгö¸üÏêϸµÄ¶ÎÄÚÈÝ¡£
ÉîÈëa.out
ÉÏÃæ²¿·Öͨ¹ýʵÀý˵ÁËÄ¿±êÎļþÖеĵäÐ͵ĶΣ¬Ö÷ÒªÊǶεÄÐÅÏ¢£¬Èç´óС µÈÏà¹ØµÄÊôÐÔ¡£
ÄÇôÕâЩ¶ÎÀïÃæ¾¿¾¹ÓÐЩʲô¶«Î÷ÄØ£¬¡°text¡±¶ÎÀïµ½µ×´æÁËʲô¶«Î÷£¬»¹ÊÇÓÃÎÒÃǵÄobjdump¡£
objdump -s a.out ͨ¹ý-sÑ¡Ïî¾Í¿ÉÒԲ鿴Ŀ±êÎļþµÄÊ®Áù½øÖƸñʽ¡£
²é¿´½á¹ûÈçÏ£º

2012030416293749 ÈçÉÏͼËùʾ£¬ÁгöÁ˸÷¶ÎµÄÊ®Áù½øÖƱíʾÐÎʽ¡£¿ÉÒÔ¿´³öͼÖй²·ÖΪÁ½À¸£¬×ó±ßµÄÒ»À¸ÊÇÊ®Áù½øÖƵıíʾ£¬
ÓÒ±ßÔòÏÔʾÏàÓ¦µÄÐÅÏ¢¡£±È½ÏÃ÷ÏÔµÄÈç¡°rodata¡±Ö»¶ÁÊý¾Ý¶ÎÖоÍÓÐ ¡°hello world¡±¡£¡£º¹£¬ºÃÏñ³ÌÐòÀïµÄ¡°hello¡±´ò´íÁË£¬ºóÃæ¶à¼ÓÁËÒ»¸ö¡°w¡±£¬½ØÍ¼Âé·³¡£ÔÁÂϹþ¡£
ÄãÒ²¿ÉÒԲ鿴¡°hellow world¡±µÄASCIIÖµ£¬¶ÔÓ¦µÄÊ®Áù½øÖƾÍÊÇÀïÃæµÄÄÚÈÝÁË¡£¡°comment¡±ÉÏÎÄÖÐ˵µÄÕâ¸ö¶Î°üº¬ÁËһЩ±àÒëÆ÷µÄ°æ±¾ÐÅÏ¢£¬Õâ¸ö¶ÎºóÃæµÄÄÚÈݾÍÊÇÁË£ºGCC±àÒëÆ÷£¬ºóÃæµÄÊǰ汾ºÅ¡£
a.out·´»ã±à
±àÒëµÄ¹ý³Ì×ÜÊÇÏȰÑÔ´ÎÄÏȱäΪ»ã±àÐÎʽ£¬ÔÙ·ÒëΪ»úÆ÷ÓïÑÔ¡££¨Ìí¼ÓÖмä²ãÂ¿´ÁËÕâô¶àµÄa.out£¬ÔÙÑо¿Ò»ÏÂËûµÄ»ã±àÐÎʽÊǺޱØÒªµÄ
objdump -d a.out¿ÉÒÔÁгöÎļþµÄ»ã±àÐÎʽ¡£²»¹ýÕâÀïÖ»ÁгöÁËÖ÷Òª²¿·Ö£¬¼´mainº¯Êý²¿·Ö£¬ÆäʵÔÚmainº¯ÊýÖ´ÐеĿªÊ¼ºÍmainº¯ÊýÖ´ÐÐÒÔºó¶¼»¹Óж๤×÷Òª×ö¡£¼´³õʼ»¯º¯ÊýÖ´Ðл·¾³ÒÔ¼°Êͷź¯ÊýÕ¼ÓõĿռäµÈ¡£
ÉÏÃæµÄͼÖУ¬×ó±ßÊÇ´úÂëµÄÊ®Áù½øÖÆÐÎʽ£¬×ó±ßÊÇ»ã±àÐÎʽ¡£¶Ô»ã±àÊìϤµÄͯЬӦ¸ÃÄÜ¿´¶®´ó²¿·Ö£¬ÕâÀï¾Í²»ÔÚ¶àÊö¡£
a.outÍ·Îļþ
ÔÚ½éÉÜÄ¿±êÎļþ¸ñʽµÄʱºò£¬Ìáµ½¹ýÍ·ÎļþÕâ¸ö¸ÅÄÀïÃæ°üº¬ÁËÕâ¸öÄ¿±êÎļþµÄһЩ»ù±¾ÐÅÏ¢¡£Èç¸ÃÎļþµÄ°æ±¾¡¢Ä¿±ê»úÆ÷Ðͺš¢³ÌÐòÈë¿ÚµØÖ·µÈµÈ¡£
ÏÂͼÊÇÎļþÍ·µÄÐÎʽ£º
¿ÉÒÔÓÃreadelf -h À´²é¿´¡£(ÏÂͼÖв鿴µÄÊÇ hello.o£¬ËüÊÇÔ´Îļþhello.c±àÒ뵫δÁ´½ÓµÄÎļþ¡£
Õâ¸öºÍ²é¿´a.out ´ó²¿·ÖÊÇÒ»ÑùµÄ)

ͼÖзÖΪÁ½À¸£¬×ó±ßÒ»À¸±íʾµÄÊÇÊôÐÔ£¬ÓÒ±ßÊÇÊôÐÔÖµ¡£µÚÒ»Ðг£±»³ÆÎªÄ§Êý¡£ºóÃæÊÇÒ»Á¬´®µÄÊý×Ö£¬ÆäÖеľßÌ庬Òå¾Í²»¶à˵ÁË£¬¿ÉÒÔ×Ô¼ºÈ¥google¡£
½ÓÏÂÀ´µÄÊÇһЩºÍÄ¿±êÎļþÏà¹ØµÄÐÅÏ¢¡£ÓÉÓÚºÍÎÒÃÇÒªÌÖÂÛµÄÎÊÌâ¹ØÏµ²»´ó£¬ÕâÀï¾Í²»Õ¹¿ªÌÖÂÛÁË¡£
ÉÏÃæÊÇÄÚÈÝÓþßÌåµÄʵÀý˵ÁËÄ¿±êÎļþÄÚ²¿µÄ×éÖ¯ÐÎʽ£¬Ä¿±êÎļþÖ»ÊDzúÉú¿ÉÖ´ÐÐÎļþ¹ý³ÌÖеÄÒ»¸öÖмä¹ý³Ì£¬¶ÔÓÚ³ÌÐòÊÇÈçºÎÔËÐеĻ¹Ã»×öÌÖÂÛ£¬Ä¿±êÎļþÊÇÈçºÎת±äΪ¿ÉÖ´ÐÐÎļþÒÔ¼°¿ÉÖ´ÐÐÎļþÊÇÈçºÎÖ´ÐеĽ«ÔÚÏÂÃæµÄ²¿·ÖÖÐÌÖÂÛ
¶ÔÁ´½ÓµÄ¼òµ¥ÈÏʶ
Á´½ÓͨË×µÄ˵¾ÍÊǰѼ¸¸ö¿ÉÖ´ÐÐÎļþ¡£Èç¹û³ÌÐòAÖÐÒýÓÃÁËÎļþBÖж¨ÒåµÄº¯Êý£¬ÎªÁËAÖеĺ¯ÊýÄÜÕý³£Ö´ÐУ¬¾ÍÐèÒª°ÑBÖеĺ¯Êý²¿·ÖÒ²·ÅÔÚAµÄÔ´´úÂëÖУ¬ÄÇô½«AºÍBºÏ²¢³ÉÒ»¸öÎļþµÄ¹ý³Ì¾ÍÊÇÁ´½ÓÁË¡£ÓÐרÃŵĹý³ÌÓÃÀ´Á´½Ó³ÌÐò£¬³ÆÎªÁ´½ÓÆ÷¡£Ëû½«Ò»Ð©ÊäÈëµÄÄ¿±êÎļþ¼Ó¹¤ºóºÏ³ÉÒ»¸öÊä³öÎļþ¡£ÕâЩĿ±êÎļþÖÐÍùÍùÓÐÏ໥µÄÊý¾Ý¡¢º¯ÊýÒýÓá£
ÉÏÎÄÖÐÎÒÃÇ¿´¹ýÁËhello worldµÄ·´»ã±àÐÎʽ£¬ÊÇÒ»¸ö»¹Ã»Óо¹ýÁ´½ÓµÄÎļþ£¬Ò²¾ÍÊÇ˵µ±ÒýÓÃÍⲿº¯ÊýµÄʱºòÊDz»ÖªµÀÆäµØÖ·µÄ£¬calÖ¸Áî¾ÍÊǵ÷ÓÃÁËprintf()º¯Êý£¬ÒòΪÕâʱºòprintf()º¯Êý²¢²»ÔÚÕâ¸öÎļþÖУ¬ËùÒÔÎÞ·¨È·¶¨ËüµÄµØÖ·£¬ÔÚÊ®Áù½øÖÆÖоÍÓá°ff
ff ff ¡±À´±íʾËüµÄµØÖ·¡£µÈ¾¹ýÁ´½ÓÒÔºó£¬Õâ¸öµØÖ·¾Í»á±äΪº¯ÊýµÄʵ¼ÊµØÖ·£¬Ó¦ÎªÁ¬½ÓºóÕâ¸öº¯ÊýÒѾ±»¼ÓÔØ½øÈëÕâ¸öÎļþÖÐÁË¡£
Á´½ÓµÄ·ÖÀࣺ°´°ÑAÏà¹ØµÄÊý¾Ý»òº¯ÊýºÏ²¢ÎªÒ»¸öÎļþµÄÏȺó¿ÉÒÔ°ÑÁ´½Ó·ÖΪ¾²Ì¬Á´½ÓºÍ¶¯Ì¬Á´½Ó¡£
¾²Ì¬Á´½Ó£º
ÔÚ³ÌÐòÖ´ÐÐ֮ǰ¾ÍÍê³ÉÁ´½Ó¹¤×÷¡£Ò²¾ÍÊǵÈÁ´½ÓÍê³ÉºóÎļþ²ÅÄÜÖ´ÐС£µ«ÊÇÕâÓÐÒ»¸öÃ÷ÏÔµÄȱµã£¬±ÈÈç˵¿âº¯Êý¡£Èç¹ûÎļþA
ºÍÎļþB ¶¼ÐèÒªÓõ½Ä³¸ö¿âº¯Êý£¬Á´½ÓÍê³ÉºóËûÃÇÁ¬½ÓºóµÄÎļþÖж¼ÓÐÕâ¸ö¿âº¯Êý¡£µ±AºÍBͬʱִÐÐʱ£¬ÄÚ´æÖоʹæÔڸÿ⺯ÊýµÄÁ½·Ý¿½±´£¬ÕâÎÞÒÉÀË·ÑÁË´æ´¢¿Õ¼ä¡£µ±¹æÄ£À©´óµÄʱºò£¬ÕâÖÖÀË·ÑÓÈΪÃ÷ÏÔ¡£¾²Ì¬Á´½Ó»¹Óв»ÈÝÒ×Éý¼¶µÈȱµã¡£ÎªÁ˽â¾öÕâЩÎÊÌ⣬ÏÖÔڵĺܶà³ÌÐò¶¼Óö¯Ì¬Á´½Ó¡£
¶¯Ì¬Á´½Ó£º
ºÍ¾²Ì¬Á´½Ó²»Ò»Ñù£¬¶¯Ì¬Á´½ÓÊÇÔÚ³ÌÐòÖ´ÐеÄʱºò²Å½øÐÐÁ´½Ó¡£Ò²¾ÍÊǵ±³ÌÐò¼ÓÔØÖ´ÐеÄʱºò¡£»¹ÊÇÉÏÃæµÄÀý×Ó
£¬Èç¹ûAºÍB¶¼Óõ½Á˿⺯ÊýFun()£¬AºÍBÖ´ÐеÄʱºòÄÚ´æÖоÍÖ»ÐèÒªÓÐFun()µÄÒ»¸ö¿½±´¡£
¹ØÓÚÁ´½Ó»¹Óкܶà֪ʶ£¬ÒÔºó»áÓÃרÃŵÄÎÄÕÂÀ´Ì¸¡£ÕâÀï¾Í²»Õ¹¿ª½²ÁË¡£
¶Ô×°ÔØµÄ¼òµ¥½âÊÍ
ÎÒÃÇÖªµÀ£¬³ÌÐòÒªÔËÐÐÊDZØÈ»Òª°Ñ³ÌÐò¼ÓÔØµ½ÄÚ´æÖеġ£ÔÚ¹ýÈ¥µÄ»úÆ÷Àï¶¼ÊǰÑÕû¸ö³ÌÐò¶¼¼ÓÔØ½øÈëÎïÀíÄÚ´æÖУ¬ÏÖÔÚÒ»°ã¶¼²ÉÓÃÁËÐéÄâ´æ´¢»úÖÆ£¬¼´Ã¿¸ö½ø³Ì¶¼ÓÐÍêÕûµÄµØÖ·¿Õ¼ä£¬¸øÈ˵ĸоõºÃÏñÿ¸ö½ø³Ì¶¼ÄÜʹÓÃÍê³ÉµÄÄڴ档ȻºóÓÉÒ»¸öÄÚ´æ¹ÜÀíÆ÷°ÑÐéÄâµØÖ·Ó³É䵽ʵ¼ÊµÄÎïÀíÄÚ´æµØÖ·¡£
°´ÕÕÉÏÎĵÄÐðÊö£¬ ³ÌÐòµÄµØÖ·¿ÉÒÔ·ÖΪÐéÄâµØÖ·ºÍʵ¼ÊµØÖ·¡£ÐéÄâµØÖ·¼´ËýÔÚËýµÄÐéÄâÄÚ´æ¿Õ¼äÖеĵØÖ·£¬ÎïÀíµØÖ·¾ÍÊÇËý±»¼ÓÔØµÄʵ¼ÊµØÖ·¡£

2012030512583948 ÔÚÉÏÎÄÖв鿴¶Î µÄʱºò»òÐíÄãÒѾעÒâµ½ÁË£¬ÓÉÓÚÎļþÊÇδÁ´½Ó¡¢Î´¼ÓÔØµÄ£¬ËùÒÔÿ¸ö¶ÎµÄÐéÄâµØÖ·ºÍÎïÀíµØÖ·¶¼ÊÇ0.
¼ÓÔØµÄ¹ý³Ì¿ÉÒÔÕâÑùÀí½â£ºÏÈΪ³ÌÐòÖеĸ÷²¿·Ö·ÖÅäºÃÐéÄâµØÖ·£¬È»ºóÔÙ½¨Á¢ÐéÄâµØÖ·µ½ÎïÀíµØÖ·µÄÓ³Éä¡£Æäʵ¹Ø¼üµÄ²¿·Ö¾ÍÊÇÐéÄâµØÖ·µ½ÎïÀíµØÖ·µÄÓ³Éä¹ý³Ì¡£³ÌÐò×°ÔÚÍê³ÉÖ®ºó£¬cpuµÄ³ÌÐò¼ÆÊýÆ÷pc¾ÍÖ¸ÏòÎļþÖеĴúÂëÆðʼλÖã¬È»ºó³ÌÐò¾Í°´Ë³ÐòÖ´ÐС£
С½áÒ»ÏÂ
дÕâÆªÎÄÕµÄÄ¿µÄÔÚÓÚÊáÀí³ÌÐòÔËÐеĻúÖÆ£¬ÔÚÒ»¸ö¿ÉÖ´ÐÐÎļþÖ´Ðеı³ºó¶¼Òþ²ØÁËʲô¡£´ÓÔ´´úÂëµ½¿ÉÖ´ÐÐÎļþͨ³£Òª¾ÀúÐí¶àÖм䲽Ö裬ÿһ¸öÖм䲽Öè¶¼Éú³ÉÒ»¸öÖмäÎļþ¡£Ö»ÊÇÏÖÔڵļ¯³É¿ª·¢»·¾³¶¼°ÉÕâЩ²½ÖèÓ°²ØÁË£¬Ï°¹ßÓÚ¼¯³É¿ª·¢»·¾³µÄÎÒÃÇÒ²¾ÍÖ𽥵ĺöÂÔÁËÕâÐ©ÖØÒªµÄ¼¼ÊõÄÚÄ»¡£
ÕâÆªÎÄÕÂÒ²Ö»ÊǽéÉÜÁËÒ»ÏÂÕâ¸ö¹ý³ÌµÄÖ÷Ïß¶øÒÑ¡£ÆäÖеÄÿһ¸öϸ½ÚÕ¹¿ªÀ´½²¶¼¿É×ãÒÑÓÃһƪÎÄÕÂÀ´ÂÛÊö¡£ÉÏÃæÐ´µÄ¶àÊÇÎÒ¸öÈ˵ÄÀí½âºÍ¿´·¨¡£Óв»×ãµÄµØ·½¡¢»¹ÍûÄܲ»Áߴͽ̡£ |