ÓÑÇéÌáʾ£ºÈç¹û±¾ÍøÒ³´ò¿ªÌ«Âý»òÏÔʾ²»ÍêÕû£¬Çë³¢ÊÔÊó±êÓÒ¼ü¡°Ë¢Ð¡±±¾ÍøÒ³£¡
ºÏ×âС˵Íø ·µ»Ø±¾ÊéĿ¼ ¼ÓÈëÊéÇ© ÎÒµÄÊé¼Ü ÎÒµÄÊéÇ© TXTÈ«±¾ÏÂÔØ ¡ºÊղص½ÎÒµÄä¯ÀÀÆ÷¡»

windows»·¾³ÏÂ32λ»ã±àÓïÑÔ³ÌÐòÉè¼Æ-µÚ4²¿·Ö

¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿! Èç¹û±¾ÊéûÓÐÔĶÁÍ꣬ÏëÏ´μÌÐø½Ó×ÅÔĶÁ£¬¿ÉʹÓÃÉÏ·½ "Êղص½ÎÒµÄä¯ÀÀÆ÷" ¹¦ÄÜ ºÍ "¼ÓÈëÊéÇ©" ¹¦ÄÜ£¡


·ÎļþÖÐÈ¥ÕÒ¶ÔÓ¦µÄÊýÖµ£¬ÔÙÓ¦Óõ½»ã±àÔ´³ÌÐòÖУ¿ÕâÑù»áÓÐ80£¥ÒÔÉϵÄʱ¼ä»¨ÔÚ×öÎÞÓù¦ÉÏ£¨×îºó»¹ÊÇÒªÂîMicrosoftΪʲô²»Ìṩ»ã±à¸ñʽµÄÍ·Îļþ£¬±Ï¾¹MASM32¹¤¾ß°ü²»ÊÇMicrosoft³öµÄ£©¡£

ÓÐʱºòÓÉÓÚ°æ±¾µÄÔ­Òò£¬µ±Ê¹ÓÃ×îеÄAPIÊÖ²áʱ£¬»á·¢ÏÖÓÐЩ²ÎÊýʹÓõij£Á¿ÔÚWindows¡£incÖв¢Ã»Óж¨Ò壬ÕâϲÒÁË£¬Ë­¶¼²»ÖªµÀÀàËÆÓÚMB_XXXYYYµÄ¶«Î÷´ú±íʲôÊýÖµ£¬MicrosoftµÄ¡¶Microsoft¡¡Programmer's¡¡Reference¡·ÊÖ²áÖдÓÀ´¾Í²»»á°Ñ²ÎÊý¶ÔÓ¦µÄÊýֵд½øÈ¥¡£Óöµ½ÕâÖÖÇé¿ö£¬Ö»ÓÐÄóö×îԭʼµÄ°ì·¨ÁË£¬¾ÍÊǵ½×îеÄVisual¡¡C£«£«»òSDKµÄincludeĿ¼ÖÐÈ¥£¬ÔÚCÓïÑÔ¸ñʽµÄ¡¡¡£hÍ·ÎļþÖаѶ¨ÒåÕÒ³öÀ´£¬È»ºó×ÔÐÐÔö²¹µ½Windows¡£incÖÐÈ¥¡£Èç¹ûÕâÑùÒ²ÕÒ²»µ½¶¨ÒåÖµµÄ»°£¬ÄÇÖ»ºÃ·ÅÆúʹÓÃÕâ¸öAPIÁË¡£



¡¡
À´Ô´£ºµç×Ó¹¤Òµ³ö°æÉç¡¡×÷ÕߣºÂÞÔƱò¡¡ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡


µÚ3Õ¡¡Ê¹ÓÃMASM


3¡£3¡¡±êºÅ¡¢±äÁ¿ºÍÊý¾Ý½á¹¹£¨1£©

¡¡¡¡¡¡¡¡
µ±³ÌÐòÖÐÒªÌøתµ½ÁíһλÖÃʱ£¬ÐèÒªÓÐÒ»¸ö±êʶÀ´Ö¸Ê¾ÐµÄλÖã¬Õâ¾ÍÊDZêºÅ£¬Í¨¹ýÔÚÄ¿µÄµØÖ·µÄÇ°Ãæ·ÅÉÏÒ»¸ö±êºÅ£¬¿ÉÒÔÔÚÖ¸ÁîÖÐʹÓñêºÅÀ´´úÌæÖ±½ÓʹÓõØÖ·¡£

ʹÓñäÁ¿ÊÇÈκαà³ÌÓïÑÔ¶¼ÒªÓöµ½µÄ¹¤×÷£¬Win32»ã±àÒ²²»ÀýÍ⣬ÔÚMASMÖÐʹÓñäÁ¿Ò²ÓÐÐèҪעÒâµÄ¼¸¸öÎÊÌ⣬´íÎóµØʹÓñäÁ¿¶¨Òå»òÓôíÎóµÄ·½·¨³õʼ»¯±äÁ¿»á´øÀ´ÄÑÒÔ¶¨Î»µÄ´íÎó¡£±äÁ¿ÊǼÆËã»úÄÚ´æÖÐÒÑÃüÃûµÄ´æ´¢Î»Öã¬ÔÚCÓïÑÔÖÐÓкܶàÖÖÀàµÄ±äÁ¿£¬ÈçÕûÊýÐÍ¡¢¸¡µãÐͺÍ×Ö·û´®µÈ£¬²»Í¬µÄ±äÁ¿Óв»Í¬µÄÓÃ;ºÍ³ß´ç£¬±ÈÈç˵ËäÈ»³¤ÕûÊýºÍµ¥¾«¶È¸¡µãÊý¶¼ÊÇ32볤£¬µ«ËüÃǵÄÓÃ;²»Í¬¡£

¹ËÃû˼Ò壬±äÁ¿µÄÖµÔÚ³ÌÐòÔËÐÐÖÐÊÇÐèÒª¸Ä±äµÄ£¬ËùÒÔËü±ØÐ붨ÒåÔÚ¿ÉдµÄ¶ÎÄÚ£¬Èç¡¡¡£dataºÍ¡¡¡£data£¿£¬»òÕßÔÚ¶ÑÕ»ÄÚ¡£°´ÕÕ¶¨ÒåµÄλÖò»Í¬£¬MASMÖеıäÁ¿Ò²·ÖΪȫ¾Ö±äÁ¿ºÍ¾Ö²¿±äÁ¿Á½ÖÖ¡£

ÔÚMASMÖбêºÅºÍ±äÁ¿µÄÃüÃû¹æ·¶ÊÇÏàͬµÄ£¬ËüÃÇÊÇ£º

1¡£¡¡¿ÉÒÔÓÃ×Öĸ¡¢Êý×Ö¡¢Ï»®Ïß¼°·ûºÅ@¡¢ºÍ£¿¡£

2¡£¡¡µÚÒ»¸ö·ûºÅ²»ÄÜÊÇÊý×Ö¡£

3¡£¡¡³¤¶È²»Äܳ¬¹ý240¸ö×Ö·û¡£

4¡£¡¡²»ÄÜʹÓÃÖ¸ÁîÃûµÈ¹Ø¼ü×Ö¡£

5¡£¡¡ÔÚ×÷ÓÃÓòÄÚ±ØÐëÊÇΩһµÄ¡£

3¡£3¡£1¡¡¡¡±êºÅ

1¡£¡¡±êºÅµÄ¶¨Òå

µ±ÔÚ³ÌÐòÖÐʹÓÃÒ»ÌõÌøתָÁîµÄʱºò£¬¿ÉÒÔÓñêºÅÀ´±íʾÌøתµÄÄ¿µÄµØ£¬±àÒëÆ÷ÔÚ±àÒëµÄʱºò»á°ÑËüÌæ»»³ÉµØÖ·£¬±êºÅ¼È¿ÉÒÔ¶¨ÒåÔÚÄ¿µÄÖ¸ÁîͬһÐеÄÍ·²¿£¬Ò²¿ÉÒÔÔÚÄ¿µÄÖ¸ÁîÇ°Ò»Ðе¥¶ÀÓÃÒ»Ðж¨Ò壬±êºÅ¶¨ÒåµÄ¸ñʽÊÇ£º

±êºÅÃû£º¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ä¿µÄÖ¸Áî

±êºÅµÄ×÷ÓÃÓòÊǵ±Ç°µÄ×Ó³ÌÐò£¬ÔÚµ¥¸ö×Ó³ÌÐòÖеıêºÅ²»ÄÜͬÃû£¬·ñÔò±àÒëÆ÷²»Öª¸ÃÓÃÄĸöµØÖ·£¬µ«ÔÚ²»Í¬µÄ×Ó³ÌÐòÖпÉÒÔÓÐÏàͬÃû³ÆµÄ±êºÅ£¬ÕâÒâζ×Ų»ÄÜ´ÓÒ»¸ö×Ó³ÌÐòÖÐÓÃÌøתָÁîÌøµ½ÁíÒ»¸ö×Ó³ÌÐòÖС£

ÔڵͰ汾µÄMASMÖУ¬±êºÅÔÚÕû¸ö³ÌÐòÖÐÊÇΩһµÄ£¬×Ó³ÌÐòÖеıêºÅÒ²¿ÉÒÔ´ÓÕû¸ö³ÌÐòµÄÈκεط½×ªÈë¡£µ«Win32»ã±àʹÓõĸ߰汾MASMÖв»ÔÊÐíÕâÑù£¬ÕâÊÇΪÁËÌṩ¶Ô¾Ö²¿±äÁ¿ºÍ²ÎÊýµÄÖ§³Ö£¬ÓÉÓÚÔÚ×Ó³ÌÐòÈë¿Ú´¦ÓжԶÑÕ»µÄ³õʼ»¯Ö¸ÁËùÒÔÒ»¸ö×Ó³ÌÐò²»ÔÊÐíÓжà¸öÈë¿Ú£¬Æä½á¹û¾ÍÊDZêºÅµÄ×÷ÓÃÓò±ä³ÉÁ˵¥¸ö×Ó³ÌÐò·¶Î§¡£

2¡£¡¡MASMÖеÄ@@

ÔÚDOSʱ´ú£¬Îª±êºÅÆðÃûÊǸöÂé·³µÄÊÂÇ飬ÒòΪ»ã±àÖ¸ÁîÓõ½ÌøתָÁîÌرð¶à£¬ÈκαȽϺͲâÊԵȶ¼ÒªÉæ¼°Ìøת£¬ËùÒÔÔÚ³ÌÐòÖлáÓкܶà±êºÅ£¬ÔÚÕû¸ö³ÌÐò·¶Î§ÄÚÆð¸ö²»ÖØÃûµÄ±êºÅÒª·ÑÒ»·¬¹¦·ò£¬½á¹û³£³£ÓÃaddr1ºÍaddr2Ö®ÀàµÄ±êºÅÒ»Ö±ÑÓÐøÏÂÈ¥£¬Èç¹ûºóÀ´ÒªÔÚÖмä²åÒ»¸ö±êºÅ£¬ÄÇô¾Í³£³£³öÏÖaddr1_1ºÍloop10_5Ö®ÀàÆæ¹ÖµÄ±êºÅ¡£

ʵ¼ÊÉÏ£¬ºÜ¶à±êºÅÖ»»áʹÓÃÒ»µ½Á½´Î£¬¶øÇÒ²»Ò»¶¨·ÇÒªÆð¸öÓÐÒâÒåµÄÃû³Æ£¬Èç»ã±à³ÌÐòÖÐÏÂÁдúÂë½á¹¹ºÜ¶à£º

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡cx£»1234h

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡cmp¡¡¡¡¡¡flag£»1

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡jz¡¡¡¡¡¡¡¡loc1

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡cx£»1000h

loc1£º

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡loop¡¡¡¡loc1

loc1ÔÚ±ðµÄµØ·½¾ÍÔÙÒ²Óò»µ½ÁË£¬¶ÔÓÚÕâÖÖÇé¿ö£¬¸ß°æ±¾µÄMASMÓÃ@@±êºÅÈ¥´úÌæËü£º

¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡cx£»1234h

¡¡¡¡¡¡¡¡¡¡¡¡¡¡cmp¡¡¡¡¡¡flag£»1

¡¡¡¡¡¡¡¡¡¡¡¡¡¡jz¡¡¡¡¡¡¡¡@F

¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡cx£»1000h

@@£º

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡­

¡¡¡¡¡¡¡¡¡¡¡¡¡¡loop¡¡¡¡@B

µ±ÓÃ@@×ö±êºÅʱ£¬¿ÉÒÔÓÃ@FºÍ@BÀ´ÒýÓÃËü£¬@F±íʾ±¾ÌõÖ¸ÁîºóµÄµÚÒ»¸ö@@±êºÅ£¬@B±íʾ±¾ÌõÖ¸ÁîÇ°µÄµÚÒ»¸ö@@±êºÅ£¬³ÌÐòÖпÉÒÔÓжà¸ö@@±êºÅ£¬@BºÍ@FֻѰÕÒÆ¥Åä×î½üµÄÒ»¸ö¡£

¡¡²»ÒªÔÚ¼ä¸ôÌ«Ô¶µÄ´úÂëÖÐʹÓÃ@@±êºÅ£¬ÒòΪÔÚÒÔºóµÄÐÞ¸ÄÖÐ@@ºÍ@B£¬@FÖмä¿ÉÄܻᱻÎÞÒâÖвåÈëÒ»¸öеÄ@@£¬ÕâÑùÒ»À´£¬@B»ò@F¾Í»áÒýÓõ½´íÎóµÄµØ·½È¥£¬Ô´³ÌÐòÖÐ@@±êºÅºÍÌøתָÁîÖ®¼äµÄ¾àÀë×îºÃÏÞÖÆÔڱ༭Æ÷Äܹ»ÏÔʾµÄͬһÆÁÄ»µÄ·¶Î§ÄÚ¡£

3¡£3¡£2¡¡¡¡È«¾Ö±äÁ¿

1¡£¡¡È«¾Ö±äÁ¿µÄ¶¨Òå

È«¾Ö±äÁ¿µÄ×÷ÓÃÓòÊÇÕû¸ö³ÌÐò£¬Win32»ã±àµÄÈ«¾Ö±äÁ¿¶¨ÒåÔÚ¡¡¡£data»ò¡¡¡£data£¿¶ÎÄÚ£¬¿ÉÒÔͬʱ¶¨Òå±äÁ¿µÄÀàÐͺͳ¤¶È£¬¸ñʽÊÇ£º

±äÁ¿Ãû¡¡¡¡¡¡¡¡¡¡¡¡ÀàÐÍ¡¡¡¡¡¡¡¡³õʼֵ1£»³õʼֵ2£¬¡­¡­

±äÁ¿Ãû¡¡¡¡¡¡¡¡¡¡¡¡ÀàÐÍ¡¡¡¡¡¡¡¡Öظ´ÊýÁ¿¡¡dup¡¡£¨³õʼֵ1£»³õʼֵ2£¬¡­¡­£©

MASMÖпÉÒÔ¶¨ÒåµÄ±äÁ¿ÀàÐÍÏ൱¶à£¬¾ßÌåÈç±í3¡£2Ëùʾ¡£

±í3¡£2¡¡¡¡±äÁ¿µÄÀàÐÍ

Ãû¡¡¡¡¡¡¡¡³Æ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡±íʾ·½Ê½¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡Ëõ¡¡¡¡¡¡¡¡Ð´¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡³¤¶È£¨×Ö½Ú£©
¡¡
×Ö½Ú
¡¡byte
¡¡db
¡¡1
¡¡
×Ö
¡¡word
¡¡dw
¡¡2
¡¡
Ë«×Ö£¨doubleword£©
¡¡dword
¡¡dd
¡¡4
¡¡
Èý×Ö£¨farword£©
¡¡fword
¡¡df
¡¡6
¡¡
ËÄ×Ö£¨quadword£©
¡¡qword
¡¡dq
¡¡8
¡¡
Ê®×Ö½ÚBCDÂ루tenbyte£©
¡¡tbyte
¡¡dt
¡¡10
¡¡
ÓзûºÅ×Ö½Ú£¨signbyte£©
¡¡sbyte
¡¡¡¡
¡¡1
¡¡
ÓзûºÅ×Ö£¨signword£©
¡¡sword
¡¡¡¡
¡¡2
¡¡
ÓзûºÅË«×Ö£¨signdword£©
¡¡sdword
¡¡¡¡
¡¡4
¡¡
µ¥¾«¶È¸¡µãÊý
¡¡real4
¡¡¡¡
¡¡4
¡¡
Ë«¾«¶È¸¡µãÊý
¡¡real8
¡¡¡¡
¡¡8
¡¡
10×Ö½Ú¸¡µãÊý
¡¡real10
¡¡¡¡
¡¡10
¡¡

ËùÓÐʹÓõ½±äÁ¿ÀàÐ͵ÄÇé¿öÖУ¬Ö»Óж¨ÒåÈ«¾Ö±äÁ¿µÄʱºòÀàÐͲſÉÒÔÓÃËõд£¬ÏÖÔÚÏÈÀ´¿´È«¾Ö±äÁ¿¶¨ÒåµÄ¼¸¸öÀý×Ó£º

¡£data

wHour¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡dw¡¡¡¡¡¡¡¡¡¡¡¡£¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Àý1

wMinute¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡dw¡¡¡¡¡¡¡¡¡¡¡¡10¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Àý2

_hWnd¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡dd¡¡¡¡¡¡¡¡¡¡¡¡£¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Àý3

word_Buffer¡¡¡¡¡¡¡¡¡¡dw¡¡¡¡¡¡¡¡¡¡¡¡100¡¡dup¡¡£¨1£»2£©¡¡¡¡¡¡¡¡£»Àý4

szBuffer¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡byte¡¡¡¡¡¡¡¡1024¡¡dup¡¡£¨£¿£©¡¡¡¡¡¡¡¡¡¡£»Àý5

szText¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡db¡¡¡¡¡¡¡¡¡¡¡¡'Hello£»world£¡'¡¡¡¡¡¡£»Àý6

¡ñ¡¡¡¡¡¡Àý1¶¨ÒåÁËÒ»¸öδ³õʼ»¯µÄwordÀàÐͱäÁ¿£¬Ãû³ÆΪwHour¡£

¡ñ¡¡¡¡¡¡Àý2¶¨ÒåÁËÒ»¸öÃûΪwMinuteµÄwordÀàÐͱäÁ¿¡£

¡ñ¡¡¡¡¡¡Àý3¶¨ÒåÁËÒ»¸öË«×ÖÀàÐ͵ıäÁ¿_hWnd¡£

¡ñ¡¡¡¡¡¡Àý4¶¨ÒåÁËÒ»×é×Ö£¬ÒÔ0001£¬0002£¬0001£¬0002£¬¡­µÄ˳ÐòÔÚÄÚ´æÖÐÖظ´100±é£¬Ò»¹²ÊÇ200¸ö×Ö¡£

¡ñ¡¡¡¡¡¡Àý5¶¨ÒåÁËÒ»¸ö1¡¡024×ֽڵĻº³åÇø¡£

¡ñ¡¡¡¡¡¡Àý6¶¨ÒåÁËÒ»¸ö×Ö·û´®£¬×ܹ²Õ¼ÓÃÁË12×Ö½Ú¡£Á½Í·µÄµ¥ÒýºÅÊǶ¨½çµÄ·ûºÅ£¬²¢²»ÊôÓÚ×Ö·û´®ÖÐÕæÕýµÄÄÚÈÝ¡£

ÔÚbyteÀàÐͱäÁ¿µÄ¶¨ÒåÖУ¬¿ÉÒÔÓÃÒýºÅ¶¨Òå×Ö·û´®ºÍÊýÖµ¶¨ÒåµÄ·½·¨»ìÓ㬼ÙÉèÒª¶¨ÒåÁ½¸ö×Ö·û´®¡°Hello£»World£¡¡¡¡±ºÍ¡°Hello¡¡again¡±£¬Ã¿¸ö×Ö·û´®ºóÃæ¸ú»Ø³µºÍ»»Ðзû£¬×îºóÒÔÒ»¸ö0×Ö·û½á⣬¿ÉÒÔ¶¨ÒåÈçÏ£º

szText¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡db¡¡¡¡¡¡¡¡¡¡¡¡'Hello£»world£¡'£»0dh£»0ah£»'Hello¡¡again'£»0dh£»0ah£»0

2¡£¡¡È«¾Ö±äÁ¿µÄ³õʼ»¯Öµ

È«¾Ö±äÁ¿ÔÚ¶¨ÒåÖмȿÉÒÔÖ¸¶¨³õÖµ£¬Ò²¿ÉÒÔÖ»ÓÃÎʺÅÔ¤Áô¿Õ¼ä£¬ÔÚ¡¡¡£data£¿¶ÎÖУ¬Ö»ÄÜÓÃÎʺÅÔ¤Áô¿Õ¼ä£¬ÒòΪ¡¡¡£data£¿²»ÄÜÖ¸¶¨³õʼֵ£¬ÕâÀï¾ÍÓÐÒ»¸öÎÊÌ⣺¼ÈÈ»¿ÉÒÔÓÃÎʺÅÔ¤Áô¿Õ¼ä£¬ÄÇôÔÚʵ¼ÊÔËÐеÄʱºò£¬Õâ¸öδ³õʼ»¯µÄÖµÊÇËæ»úµÄ»¹ÊÇÈ·¶¨µÄÄØ£¿ÔÚÈ«¾Ö±äÁ¿ÖУ¬Õâ¸öÖµ¾ÍÊÇ0£¬ËùÒÔÓÃÎʺÅÖ¸¶¨µÄÈ«¾Ö±äÁ¿Èç¹ûÒªÒÔ0Ϊ³õʼֵµÄ»°£¬ÔÚ³ÌÐòÖпÉÒÔ²»±ØΪËü¸³Öµ¡£



¡¡
À´Ô´£ºµç×Ó¹¤Òµ³ö°æÉç¡¡×÷ÕߣºÂÞÔƱò¡¡ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
ÉÏÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡»ØÊéÄ¿¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ÏÂÒ»Ò³¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡
¡¡¡¡


µÚ3Õ¡¡Ê¹ÓÃMASM


3¡£3¡¡±êºÅ¡¢±äÁ¿ºÍÊý¾Ý½á¹¹£¨2£©

¡¡¡¡¡¡¡¡
3¡£3¡£3¡¡¡¡¾Ö²¿±äÁ¿

¾Ö²¿±äÁ¿Õâ¸öÃû³Æ×îÔçÔ´Óڸ߼¶ÓïÑÔ£¬Ö÷ÒªÊÇΪÁ˶¨ÒåһЩ½öÔÚµ¥¸öº¯ÊýÀïÃæÓÐÓõıäÁ¿¶øÌá³öµÄ£¬Ê¹Óþֲ¿±äÁ¿ÄÜ´øÀ´Ò»Ð©¶îÍâµÄºÃ´¦£¬Ëüʹ³ÌÐòµÄÄ£¿é»¯·â×°±äµÃ¿ÉÄÜ£¬ÊÔÏëһϣ¬Èç¹ûÒªÓõ½µÄ±äÁ¿±ØÐ붨ÒåÔÚ³ÌÐòµÄÊý¾Ý¶ÎÀïÃ棬¼ÙÉèÔÚÒ»¸ö×Ó³ÌÐòÖÐÒªÓõ½Ò»Ð©±äÁ¿£¬µ±°ÑÕâ¸ö×Ó³ÌÐòÒÆÖ²µ½±ðµÄ³ÌÐòʱ£¬³ýÁË°Ñ´úÂëÒƹýÈ¥ÒÔÍ⣬»¹±ØÐë°Ñ±äÁ¿¶¨ÒåÒƹýÈ¥¡£¶ø¼´Ê¹°Ñ±äÁ¿¶¨ÒåÒƹýÈ¥ÁË£¬ÓÉÓÚÕâЩ±äÁ¿¶¨ÒåÔÚ´ó¼Ò¶¼¿ÉÒÔÓõÄÊý¾Ý¶ÎÖУ¬¾ÍÎÞ·¨¶Ô±ðµÄ´úÂë±£³Ö͸Ã÷£¬±ðµÄ´úÂëÓпÉÄÜÓÐÒâÎÞÒâµØÐÞ¸ÄËüÃÇ¡£»¹ÓУ¬ÔÚÒ»¸ö´óµÄ¹¤³ÌÏîÄ¿ÖУ¬´æÔںܶàµÄ×Ó³ÌÐò£¬ËùÓеÄ×Ó³ÌÐòÒªÓõ½µÄ±äÁ¿È«²¿¶¨Òåµ½Êý¾Ý¶ÎÖУ¬»áʹÊý¾Ý¶Î±äµÃºÜ´ó£¬»ìÔÚÒ»ÆðµÄ±äÁ¿Ò²Ê¹Î¬»¤±äµÃ·Ç³£²»·½±ã¡£

¾Ö²¿±äÁ¿Õâ¸ö¸ÅÄî³öÏÖÒÔºó£¬Á½¸öÒÔÉÏ×Ó³ÌÐò¶¼ÒªÓõ½µÄÊý¾Ý²Å±»¶¨ÒåΪȫ¾Ö±äÁ¿Í³Ò»·ÅÔÚÊý¾Ý¶ÎÖУ¬½öÔÚ×Ó³ÌÐòÄÚ²¿Ê¹ÓõıäÁ¿Ôò·ÅÔÚ¶ÑÕ»ÖУ¬ÕâÑù×Ó³ÌÐò¿ÉÒÔ±à³É¡°ºÚÏ»×Ó¡±µÄÄ£Ñù£¬Ê¹³ÌÐòµÄÄ£¿é½á¹¹¸ü¼Ó·ÖÃ÷¡£

¾Ö²¿±äÁ¿µÄ×÷ÓÃÓòÊǵ¥¸ö×Ó³ÌÐò£¬ÔÚ½øÈë×Ó³ÌÐòµÄʱºò£¬Í¨¹ýÐ޸ĶÑÕ»Ö¸ÕëespÀ´Ô¤Áô³öÐèÒªµÄ¿Õ¼ä£¬ÔÚÓÃretÖ¸Áî·µ»ØÖ÷³ÌÐò֮ǰ£¬Í¬Ñùͨ¹ý»Ö¸´esp¶ªÆúÕâЩ¿Õ¼ä£¬ÕâЩ±äÁ¿¾ÍËæÖ®ÎÞЧÁË¡£ËüµÄȱµã¾ÍÊÇÒòΪ¿Õ¼äÊÇÁÙʱ·ÖÅäµÄ£¬ËùÒÔÎÞ·¨¶¨Ò庬Óгõʼ»¯ÖµµÄ±äÁ¿£¬¶Ô¾Ö²¿±äÁ¿µÄ³õʼ»¯Ò»°ãÔÚ×Ó³ÌÐòÖÐÓÉÖ¸ÁîÍê³É¡£

ÔÚDOSʱ´ú£¬µÍ°æ±¾µÄºê»ã±à±¾À´ÎÞËùνȫ¾Ö±äÁ¿ºÍ¾Ö²¿±äÁ¿£¬ËùÓеıäÁ¿¶¼ÊǶ¨ÒåÔÚÊý¾Ý¶ÎÀïÃæµÄ£¬ÄÜÈñ»ËùÓеÄ×Ó³ÌÐò»òÖ÷³ÌÐò´æÈ¡£¬¾ÍÏ൱ÓÚÏÖÔÚËù˵µÄÈ«¾Ö±äÁ¿£¬Óûã±àÓïÑÔÔÚ¶ÑÕ»Öж¨Òå¾Ö²¿±äÁ¿ÊǺÜÂé·³µÄÒ»¼þÊÂÇé¡£ÒªºÍ¸ß¼¶ÓïÑÔ×ö»ìºÏ±à³ÌµÄʱºò£¬³ÌÐòÔ±ÍùÍùºÜÍ´¿àµØÔÚ±ßÉÏ×¼±¸Ò»ÕÅ±í£¬±íÉϵÄÄÚÈÝÊǾֲ¿±äÁ¿ÃûºÍebpÖ¸ÕëµÄλÖùØϵ¡£

1¡£¡¡¾Ö²¿±äÁ¿µÄ¶¨Òå

MASMÓÃlocalαָÁîÌṩÁ˶Ծֲ¿±äÁ¿µÄÖ§³Ö¡£¶¨ÒåµÄ¸ñʽÊÇ£º

local¡¡¡¡¡¡¡¡¡¡¡¡¡¡±äÁ¿Ãû1£§£§Öظ´ÊýÁ¿£§£§£§£ºÀàÐÍ£§£»±äÁ¿Ãû2£§£§Öظ´ÊýÁ¿£§£§£§£ºÀàÐÍ£§¡­¡­

localαָÁî±ØÐë½ô½ÓÔÚ×Ó³ÌÐò¶¨ÒåµÄαָÁîprocºó¡¢ÆäËûÖ¸Áʼǰ£¬ÕâÊÇÒòΪ¾Ö²¿±äÁ¿µÄÊýÄ¿±ØÐëÔÚ×Ó³ÌÐò¿ªÊ¼µÄʱºò¾ÍÈ·¶¨ÏÂÀ´£¬ÔÚÒ»¸ölocalÓï¾ä¶¨Ò岻ϵÄʱºò£¬¿ÉÒÔÓжà¸ölocalÓï¾ä£¬Óï·¨ÖеÄÊý¾ÝÀàÐͲ»ÄÜÓñí3¡£2ÖеÄËõд£¬Èç¹ûÒª¶¨ÒåÊý¾Ý½á¹¹£¬¿ÉÒÔÓÃÊý¾Ý½á¹¹µÄÃû³Æµ±×öÀàÐÍ¡£Win32»ã±àĬÈϵÄÀàÐÍÊÇdword£¬Èç¹û¶¨ÒådwordÀàÐ͵ľֲ¿±äÁ¿£¬ÔòÀàÐÍ¿ÉÒÔÊ¡ÂÔ¡£µ±¶¨ÒåÊý×éµÄʱºò£¬¿ÉÒÔ¡¡£§£§¡¡À¨ºÅÀ¨ÆðÀ´¡£²»ÄÜʹÓö¨ÒåÈ«¾Ö±äÁ¿µÄdupαָÁî¡£¾Ö²¿±äÁ¿²»ÄܺÍÒѶ¨ÒåµÄÈ«¾Ö±äÁ¿Í¬Ãû¡£¾Ö²¿±äÁ¿µÄ×÷ÓÃÓòÊǵ±Ç°µÄ×Ó³ÌÐò£¬ËùÒÔÔÚ²»Í¬µÄ×Ó³ÌÐòÖпÉÒÔÓÐͬÃûµÄ¾Ö²¿±äÁ¿¡£

ÕâÀïÓм¸¸ö¶¨Òå¾Ö²¿±äÁ¿µÄÀý×Ó£º

local¡¡¡¡¡¡¡¡¡¡¡¡loc1£§1024£§£ºbyte¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Àý1

local¡¡¡¡¡¡¡¡¡¡¡¡loc2¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Àý2

local¡¡¡¡¡¡¡¡¡¡¡¡loc3£ºWNDCLASS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡£»Àý3

¡ñ¡¡¡¡¡¡Àý1¶¨ÒåÁËÒ»¸ö1¡¡024×Ö½Ú³¤µÄ¾Ö²¿±äÁ¿loc1¡£

¡ñ¡¡¡¡¡¡Àý2¶¨ÒåÁËÒ»¸öÃûΪloc2µÄ¾Ö²¿±äÁ¿£¬ÀàÐÍÊÇĬÈÏÖµdword¡£

¡ñ¡¡¡¡¡¡Àý3¶¨ÒåÁËÒ»¸öWNDCLASSÊý¾Ý½á¹¹£¬ÃûΪloc3¡£

ÏÂÃæÊǾֲ¿±äÁ¿Ê¹ÓõÄÒ»¸öµäÐ͵ÄÀý×Ó£º

TestProc¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡proc

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡local¡¡¡¡@loc1£ºdword£»@loc2£ºword

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡local¡¡¡¡@loc3£ºbyte

¡¡

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡eax£»@loc1

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡ax£»@loc2

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡¡¡¡¡¡¡al£»@loc3

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret

¡¡

TestProc¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡endp

ÕâÊÇÒ»¸öÃûΪTestProcµÄ×Ó³ÌÐò£¬ÓÃlocalÓï¾ä¶¨ÒåÁË3¸ö±äÁ¿£¬@loc1ÊÇdwordÀàÐÍ£¬@loc2ÊÇwordÀàÐÍ£¬@loc3ÊÇbyteÀàÐÍ£¬ÔÚ³ÌÐòÖзֱðÓÐ3¾ä´æÈ¡3¸ö¾Ö²¿±äÁ¿µÄÖ¸ÁȻºó¾Í·µ»ØÁË£¬±àÒë³É¿ÉÖ´ÐÐÎļþºó£¬ÔÙ°ÑËü·´»ã±à¾ÍµÃµ½ÁËÒÔÏÂÖ¸Á

£º00401000¡¡55¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡push¡¡ebp

£º00401001¡¡8BEC¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡ebp£»¡¡esp

£º00401003¡¡83C4F8¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡add¡¡esp£»¡¡FFFFFFF8

£º00401006¡¡8B45FC¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡eax£»¡¡dword¡¡ptr¡¡£§ebp¡­04£§

£º00401009¡¡668B45FA¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡ax£»¡¡word¡¡ptr¡¡£§ebp¡­06£§

£º0040100D¡¡8A45F9¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡al£»¡¡byte¡¡ptr¡¡£§ebp¡­07£§

£º00401010¡¡C9¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡leave

£º00401011¡¡C3¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ret

¿ÉÒÔ¿´µ½£¬·´»ã±àºóµÄÖ¸Áî±ÈÔ´³ÌÐò¶àÁËÇ°ºóÁ½¶ÎÖ¸ÁËüÃÇÊÇ£º

£º00401000¡¡55¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡push¡¡ebp

£º00401001¡¡8BEC¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡mov¡¡ebp£»¡¡esp

£º00401003¡¡83C4F8¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡add¡¡esp£»¡¡FFFFFFF8

¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡­

£º00401010¡¡C9¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡leave

ÕâЩ¾ÍÊÇʹÓþֲ¿±äÁ¿Ëù±ØÐèµÄÖ¸Á·Ö±ðÓÃÓÚ¾Ö²¿±äÁ¿µÄ×¼±¸¹¤×÷ºÍɨβ¹¤×÷¡£Ö´ÐÐÁËcallÖ¸Áîºó£¬CPU°Ñ·µ»ØµÄµØַѹÈë¶ÑÕ»£¬ÔÙתÒƵ½×Ó³ÌÐòÖ´ÐУ¬espÔÚ³ÌÐòµÄÖ´Ðйý³ÌÖпÉÄÜËæʱÓõ½£¬²»¿ÉÄÜÓÃespÀ´Ëæʱ´æÈ¡¾Ö²¿±äÁ¿£¬´ó¼ÒÒ»¶¨ÓÐÓ¡Ïó£¬ÔÚ½éÉܼĴæÆ÷µÄʱºòÌáµ½¹ýebp¼Ä´æÆ÷Ò²ÊÇÒÔ¶ÑÕ»¶ÎΪĬÈÏÊý¾Ý¶ÎµÄ£¬ËùÒÔ£¬¿ÉÒÔÓÃebp×öÖ¸Õ룬ÓÚÊÇ£¬ÔÚ³õʼ»¯Ç°£¬ÏÈÓÃÒ»¾äpush¡¡ebpÖ¸Áî°ÑÔ­À´µÄebp±£´æÆðÀ´£¬È»ºó°ÑespµÄÖµ·Åµ½ebpÖУ¬¹©´æÈ¡¾Ö²¿±äÁ¿×öÖ¸ÕëÓã¬ÔÙºóÃæ¾ÍÊÇÔÚ¶ÑÕ»ÖÐÔ¤Áô¿Õ¼äÁË£¬ÓÉÓÚ¶ÑÕ»ÊÇÏòÏÂÔö³¤µÄ£¬ËùÒÔÒªÔÚespÖмÓÒ»¸ö¸ºÖµ£¬FFFFFFF8¾ÍÊǨC8¡£Âý×Å£¡Ò»¸ödword¼ÓÒ»¸öword¼ÓÒ»¸ö×Ö½Ú²»ÊÇ7Âð£¬ÎªÊ²Ã´ÊÇ8ÄØ£¿ÕâÊÇÒòΪÔÚ80386´¦ÀíÆ÷ÖУ¬ÒÔdwordΪ½ç¶ÔÆëʱ´æÈ¡ÄÚ´æËÙ¶È×î¿ì£¬ËùÒÔMASMÄþ¿ÉÀ
·µ»ØĿ¼ ÉÏÒ»Ò³ ÏÂÒ»Ò³ »Øµ½¶¥²¿ ÔÞ£¨0£© ²È£¨0£©
¿ì½Ý²Ù×÷: °´¼üÅÌÉÏ·½Ïò¼ü ¡û »ò ¡ú ¿É¿ìËÙÉÏÏ·­Ò³ °´¼üÅÌÉ쵀 Enter ¼ü¿É»Øµ½±¾ÊéĿ¼ҳ °´¼üÅÌÉÏ·½Ïò¼ü ¡ü ¿É»Øµ½±¾Ò³¶¥²¿!
ÎÂÜ°Ìáʾ£º ο´Ð¡ËµµÄͬʱ·¢±íÆÀÂÛ£¬Ëµ³ö×Ô¼ºµÄ¿´·¨ºÍÆäËüС»ï°éÃÇ·ÖÏíÒ²²»´íŶ£¡·¢±íÊéÆÀ»¹¿ÉÒÔ»ñµÃ»ý·ÖºÍ¾­Ñé½±Àø£¬ÈÏÕæдԭ´´ÊéÆÀ ±»²ÉÄÉΪ¾«ÆÀ¿ÉÒÔ»ñµÃ´óÁ¿½ð±Ò¡¢»ý·ÖºÍ¾­Ñé½±ÀøŶ£¡