Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

CÓïÑÔº¯Êýµ÷ÓÃÔ¼¶¨


×ªÔØ×Ô£º
ܰÈÙ¼ÒÔ°blog
ÔÚCÓïÑÔÖУ¬¼ÙÉèÎÒÃÇÓÐÕâÑùµÄÒ»¸öº¯Êý£º
int function(int a,int b)
µ÷
ÓÃʱֻҪÓÃresult =
function(1,2)ÕâÑùµÄ·½Ê½¾Í¿ÉÒÔʹÓÃÕâ¸öº¯Êý¡£µ«ÊÇ£¬µ±¸ß¼¶ÓïÑÔ±»±àÒë³É¼ÆËã»ú¿ÉÒÔʶ±ðµÄ»úÆ÷Âëʱ£¬ÓÐÒ»¸öÎÊÌâ¾Í͹ÏÖ³öÀ´£ºÔÚCPUÖУ¬¼ÆËã
»úûÓа취֪µÀÒ»¸öº¯Êýµ÷ÓÃÐèÒª¶àÉÙ¸ö¡¢Ê²Ã´ÑùµÄ²ÎÊý£¬Ò²Ã»ÓÐÓ²¼þ¿ÉÒÔ±£´æÕâЩ²ÎÊý¡£Ò²¾ÍÊÇ˵£¬¼ÆËã»ú²»ÖªµÀÔõô¸øÕâ¸öº¯Êý´«µÝ²ÎÊý£¬´«µÝ²ÎÊýµÄ¹¤×÷±ØÐë
Óɺ¯Êýµ÷ÓÃÕߺͺ¯Êý±¾ÉíÀ´Ð­µ÷¡£Îª´Ë£¬¼ÆËã»úÌṩÁËÒ»ÖÖ±»³ÆÎªÕ»µÄÊý¾Ý½á¹¹À´Ö§³Ö²ÎÊý´«µÝ¡£
Õ»ÊÇÒ»ÖÖÏȽøºó³öµÄÊý¾Ý½á¹¹£¬Õ»ÓÐÒ»¸ö´æ´¢Çø¡¢
Ò»¸öÕ»¶¥Ö¸Õë¡£Õ»¶¥Ö¸ÕëÖ¸Ïò¶ÑÕ»ÖеÚÒ»¸ö¿ÉÓõÄÊý¾ÝÏ±»³ÆÎªÕ»¶¥£©¡£Óû§¿ÉÒÔÔÚÕ»¶¥ÉÏ·½ÏòÕ»ÖмÓÈëÊý¾Ý£¬Õâ¸ö²Ù×÷±»³ÆÎªÑ¹Õ»(Push)£¬Ñ¹Õ»ÒÔºó£¬Õ»
¶¥×Ô¶¯±ä³ÉмÓÈëÊý¾ÝÏîµÄλÖã¬Õ»¶¥Ö¸ÕëÒ²ËæÖ®Ð޸ġ£Óû§Ò²¿ÉÒÔ´Ó¶ÑÕ»ÖÐÈ¡×ßÕ»¶¥£¬³ÆÎªµ¯³öÕ»(pop)£¬µ¯³öÕ»ºó£¬Õ»¶¥ÏµÄÒ»¸öÔªËØ±ä³ÉÕ»¶¥£¬Õ»¶¥Ö¸Õë
ËæÖ®Ð޸ġ£
º¯Êýµ÷ÓÃʱ£¬µ÷ÓÃÕßÒÀ´Î°Ñ²ÎÊýѹջ£¬È»ºóµ÷Óú¯Êý£¬º¯Êý±»µ÷ÓÃÒÔºó£¬ÔÚ¶ÑÕ»ÖÐÈ¡µÃÊý¾Ý£¬²¢½øÐмÆËã¡£º¯Êý¼ÆËã½áÊøÒԺ󣬻òÕßµ÷ÓÃÕß¡¢»òÕߺ¯Êý±¾ÉíÐ޸ĶÑÕ»£¬Ê¹¶ÑÕ»»Ö¸´Ô­×°¡£
ÔÚ²ÎÊý´«µÝÖУ¬ÓÐÁ½¸öºÜÖØÒªµÄÎÊÌâ±ØÐëµÃµ½Ã÷ȷ˵Ã÷£º
µ±²ÎÊý¸öÊý¶àÓÚÒ»¸öʱ£¬°´ÕÕʲô˳Ðò°Ñ²ÎÊýѹÈë¶ÑÕ»
º¯Êýµ÷Óúó£¬ÓÉË­À´°Ñ¶ÑÕ»»Ö¸´Ô­×°
Ôڸ߼¶ÓïÑÔÖУ¬Í¨¹ýº¯Êýµ÷ÓÃÔ¼¶¨À´ËµÃ÷ÕâÁ½¸öÎÊÌâ¡£³£¼ûµÄµ÷ÓÃÔ¼¶¨ÓУº
stdcall
cdecl
fastcall
thiscall
naked call
stdcallµ÷ÓÃÔ¼¶¨
stdcall
ºÜ¶àʱºò±»³ÆÎªpascalµ÷ÓÃÔ¼¶¨£¬ÒòΪpascalÊÇÔçÆÚºÜ³£¼ûµÄÒ»ÖÖ½ÌѧÓüÆËã»ú³ÌÐòÉè¼ÆÓïÑÔ£¬ÆäÓï·¨ÑϽ÷£¬Ê¹Óõĺ¯Êýµ÷ÓÃÔ¼¶¨¾ÍÊÇ
stdcall¡£ÔÚMicrosoft
C++ϵÁеÄC/C++±àÒëÆ÷ÖУ¬³£³£ÓÃPASCALºêÀ´ÉùÃ÷Õâ¸öµ÷ÓÃÔ¼¶¨£¬ÀàËÆµÄºê»¹ÓÐWINAPIºÍCALLBACK¡£
stdcallµ÷ÓÃÔ¼¶¨ÉùÃ÷µÄÓ﷨Ϊ(ÒÔǰÎĵÄÄǸöº¯ÊýΪÀý£©£º
int __stdcall
function(int a,int b)
stdcallµÄµ÷ÓÃÔ¼¶¨Òâζ×Å£º1£©²ÎÊý´ÓÓÒÏò×óѹÈë¶ÑÕ»£¬2£©º¯Êý×ÔÉíÐ޸ĶÑÕ» 3)º¯ÊýÃû×Ô¶¯¼Óǰµ¼µÄÏ»®Ïߣ¬ºóÃæ½ô¸úÒ»¸ö@·ûºÅ£¬Æäºó½ô¸ú×ŲÎÊýµÄ³ß´ç
ÒÔÉÏÊöÕâ¸öº¯ÊýΪÀý£¬²ÎÊýbÊ×Ïȱ»Ñ¹Õ»£¬È»ºóÊDzÎÊýa£¬º¯Êýµ÷ÓÃfunction(1,2)µ÷Óô¦·­Òë³É»ã±àÓïÑÔ½«±ä³É£º
push 2 µÚ¶þ¸ö²ÎÊýÈëÕ»
push 1 µÚÒ»¸ö²ÎÊýÈëÕ»
call function µ÷ÓòÎÊý£¬×¢Òâ´Ëʱ×Ô¶¯°Ñcs:eipÈëÕ»
¶ø¶ÔÓÚº¯Êý×ÔÉí£¬Ôò¿ÉÒÔ·­ÒëΪ£º
push ebp ±£´æebp¼Ä´æÆ÷£


Ïà¹ØÎĵµ£º

GNU C LIB

×ÔÓɵĸèÒ¥

¡¡¡¡±¾ÊéÊÇ×ÔÓÉÈí¼þ´ÔÊéµÄÒ»²¿·Ö£¬Ò²ÊÇÒ»Ê××ÔÓɵĸèÒ¥¡£
¡¡¡¡±¾ÊéÖвûÊöµÄGNU C¿â£¬¶¨ÒåÁËËùÓÐÔÚISO C±ê×¼Ëù¹æ¶¨µÄ£¬ÒÔ¼°POSIX±ê×¼¡¢ÆäËüÏà¹Ø±ê×¼ºÍUNIXϵͳËùÅÉÉúµÄ±ê×¼Öж¨ÒåµÄËùÓк¯Êý£¬ÎªGNU²Ù×÷ϵͳËùÖ§³Ö¡£
C³ÌÐòÉè¼ÆÓïÑÔÌṩÖîÈçÊäÈë/Êä³ö¡ ......

¸øÄãµÄC³ÌÐò¼ÓÉÏÑÕÉ«

±ê×¼C¿ØÖÆÌ¨³ÌÐòÒ²¿ÉÒÔ×Ô¶¨ÒåÎÄ×ÖÊä³öÑÕÉ«£¬ÈôòÓ¡ÐÅÏ¢¸üÏÊÃ÷£¬ÔÚdebugµÄʱºòÌØ±ðÓÐÓ᣷½·¨ºÜ¼òµ¥£º
ת×Ô£ºhttp://www.diybl.com/course/3_program/c/c_js/20090303/157456.html
ÏÈ´ÓÒ»¸öÀý×Ó¿ªÊ¼
printf("\033[31m ####----->> \033[32m" "hello\n" "\033[m");

ÑÕÉ«·ÖΪ±³¾°É«ºÍ×ÖÌåÉ«£¬30~39ÓÃÀ´ÉèÖÃ×ÖÌåÉ« ......

CÕûÐÍÉý¼¶ºÍѰ³£ËãÊõת»»

                                                   ......

cÓïÑÔµÄ×Ô¶¯ÀàÐÍת»»

×Ô¶¯×ª»»×ñÑ­ÒÔϹæÔò£º
1)        Èô²ÎÓëÔËËãÁ¿µÄÀàÐͲ»Í¬£¬ÔòÏÈת»»³ÉͬһÀàÐÍ£¬È»ºó½øÐÐÔËËã¡£
2)        ת»»°´Êý¾Ý³¤¶ÈÔö¼ÓµÄ·½Ïò½øÐУ¬ÒÔ±£Ö¤¾«¶È²»½µµÍ¡£ÈçintÐͺÍlongÐÍÔËËãʱ£¬ÏȰÑintÁ¿×ª³ÉlongÐͺóÔÙ½øÐÐÔËËã¡£
   &n ......

¿ìËÙÅÅÐò(QuickSort)CÓïÑÔ°æ

¿ìËÙÅÅÐòµÄºËÐÄÔÚÓÚ·ÖÖÎ.
·ÖÖÎËã·¨:
1. È϶¨Ö»ÓÐÒ»¸öÔªËØ»òûÓÐÔªËØµÄÊý×éÊÇÓÐÐòµÄ.
2. ½«Êý×é°´ÕÕÒ»¸ö·Ö½çÖµ·ÖΪ×óÓÒÁ½²¿·Ö. ×óÃæËùÓÐÔªËØÖµ±È·Ö½çֵС, ÓÒÃæËùÓÐÔªËØÖµ±È·Ö½çÖµ´ó»òµÈÓÚ.
3. ½«×óÓÒÁ½²¿·Ö·Ö±ðÔÙ·ÖÖÎ, Ö±µ½Òª·ÖÖ§µÄ²¿·ÖÖ»ÓÐÒ»¸öÔªËØ»òûÓÐÔªËØ, ÄÇôÕû¸öÊý×é¾ÍÊÇÓÐÐòµÄÁË.
×÷Õß: selfimpr
²©¿Í: http ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ