´ð£º²»¿ÉÒÔ£¬¶ÑÕ»¶ÎµÄ·¶Î§ÓɶÑÕ»Ö´Õþ¼Ä´æÆ÷ESPµÄ³õֵȷ¶¨£¬Õâ¸öλÖþÍÊǶÑÕ»µÄµ×²¿£¨²»Ôٱ仯£©£¬Òò´Ë²»ÄÜËæÒâ¸Ä±äESPµÄÖµ¡£Ð޸ĿÉÄܻᵼÖÂÕ»ÀïÄÚÈݶªÊ§£¬ÒýÆðÒì³£¡£ 8. ´óСд×Öĸת»»µÄ¹æÂÉÊÇʲô£¿¸ø³öת»»µÄ¹«Ê½¡£ ´ð£º´óСд×Öĸת»»ÀûÓÃËüÃǵÄASCIIÂëÏà²î20H¡£ SUB BL 20H:ʵÏÖСд×Öĸת»»Îª´óд£» ADD BL 20H:ʵÏÖ´óд×Öĸת»»ÎªÐ¡Ð´¡£ 9. ESPÊÇͨÓüĴæÆ÷£¬ÊÇ·ñ¿ÉÒÔËæÒâµÄÐÞ¸ÄESPµÄÖµ£¿ ´ð£º²»¿ÉÒÔ£¬¶ÑÕ»¶ÎµÄ·¶Î§ÓɶÑÕ»Ö´Õþ¼Ä´æÆ÷ESPµÄ³õֵȷ¶¨£¬Õâ¸öλÖþÍÊǶÑÕ»µÄµ×²¿£¨²»Ôٱ仯£©£¬Òò´Ë²»ÄÜËæÒâ¸Ä±äESPµÄÖµ¡£Ð޸ĿÉÄܻᵼÖÂÕ»ÀïÄÚÈݶªÊ§£¬ÒýÆðÒì³£¡£ 15
µÚÎåÕ »ã±àÓïÑÔ³ÌÐòÉè¼Æ 5.1.Ñ¡Ôñ 1. Ñ»·Ö¸ÁîLOOPÖÕֹѻ·µÄÌõ¼þÊÇ£¨ £©¡£ A£®ECX=0 B. ECX=0£¬ÇÒZF=0 C ECX¡Ù0£¬ÇÒZF=0 D. ECX¡Ù0£¬»òZF=1 2. Ñ»·Ö¸ÁîLOOPNZÖÕֹѻ·µÄÌõ¼þÊÇ£¨ £©¡£ A£®ECX=0£¬»òZF=1 B. ECX=0£¬ÇÒZF=0 C£®ECX¡Ù0£¬ÇÒZF=0 D. ECX¡Ù0£¬»òZF=1 3. LOOPÖ¸ÁîÖ´ÐÐʱ£¬Òþº¬¼ÆÊýÆ÷ÊÇ£¨ £©¡£ A£® ESP B£®EBX C£® ECX D£®EDI 4. µ±A£¾BÊ±×ªÒÆµÄÌõ¼þ×ªÒÆÖ¸ÁîΪ£¨A¡¢BΪÎÞ·ûºÅÊý£©£¨ £©¡£ A. JA B. JAE C. JG D. JGE 5. µ±A£¾=BÊ±×ªÒÆµÄÌõ¼þ×ªÒÆÖ¸ÁîΪ£¨A¡¢BΪ ÓзûºÅÊý£©£¨ £©¡£ A. JA B. JAE C. JG D. JGE 6. Ìõ¼þ×ªÒÆÖ¸ÁîJC LabelµÄ²âÊÔÌõ¼þÊÇ£¨ £©¡£ A. ZF = 1 B. SF = 1 C. OF = 1 D. CF = 1 7. ÈôÖ÷³ÌÐòͨ¹ý¶ÑÕ»Ïò×Ó³ÌÐò´«µÝÁË3¸ö²ÎÊý£¬×Ó³ÌÐò·µ»ØÖ÷³ÌÐòʱ£¬ÔÚ×Ó³ÌÐòÖÐÇå³ý¶ÑÕ»ÖÐ3¸ö²ÎÊýÕýÈ·µÄRETÖ¸ÁîÊÇ£¨ £©¡£ A. RET 3*1 B. RET 3*2 C. RET 3*3 D. RET 3*4 8. Ö÷³ÌÐòͨ¹ý¶ÑÕ»Ïò×Ó³ÌÐò´«µÝÁË3¸ö²ÎÊý£¬×Ó³ÌÐòµ÷ÓýáÊøºó£¬ÔÚÖ÷³ÌÐòÖÐÇå³ý¶ÑÕ»ÖÐ3¸ö²ÎÊýÕýÈ·µÄÖ¸ÁîÊÇ£¨ £©¡£ A. ADD ESP£¬ 3*2 B. ADD ESP£¬ 3*4 C. ADD EBP£¬ 3*2 D. ADD EBP£¬ 3*4 9. Ìõ¼þ×ªÒÆÖ¸ÁîJZ LabelµÄ²âÊÔÌõ¼þÊÇ£¨ £©¡£ A. ZF = 1 B. SF = 1 C. OF = 1 D. CF = 1 10. ÀûÓöÑÕ»´«µÝ×Ó³ÌÐò²ÎÊýµÄ·½·¨Êǹ̶¨µÄ£¬ÈôÖ÷³ÌÐòͨ¹ý¶ÑÕ»Ïò×Ó³ÌÐò´«µÝÁË3¸ö²ÎÊý£¬ÔòÔÚ×Ó³ÌÐòÖÐ, Ö÷³ÌÐòÖÐ×îºóÒ»¸ö±»Ñ¹ÈëÕ»ÖеIJÎÊý¿ÉÒÔÓ㨠£©µÄÐÎʽÀ´·ÃÎÊ¡£ A. [EBP£4] B. [EBP£8] C. [EBP£«4] D. [EBP£«8] 11. ͨ¹ý¶ÑÕ»´«µÝ²ÎÊý£¬ÔÚ×Ó³ÌÐòÖÐʹÓÃEBP¼äÖ·È¡µÃ²ÎÊýµÄÔÒòÊÇ£¨ £©¡£ A. EBPûÓб»Õ¼Óà B. EBP¼äÖ·ËٶȽϿì C. EBP¼äַĬÈϵĶÎÊǶÑÕ»¶Î D. EBPÊÇ»ùÖ·Ö¸Õë 12. ͨ¹ý¼Ä´æÆ÷´«µÝ²ÎÊý±Èͨ¹ý¶ÑÕ»´«µÝ²ÎÊýµÄÓŵãÊÇ£¨ £©¡£ A. ÄÜ´«µÝ¸ü¶àµÃ²ÎÊý B. ´æÈ¡Ð§ÂÊ¸ß C. ÄÜÈ·±£ÕýÈ·µ÷Óà D. ûÓи±×÷Óà 13. ÀûÓöÑÕ»´«µÝ×Ó³ÌÐò²ÎÊýµÄ·½·¨Êǹ̶¨µÄ£¬ÔÚ×Ó³ÌÐòÖÐ, Ð޸IJÎÊý£¨ £©¿ÉÒԸıä×Ó³ÌÐòµÄ·µ»ØµØÖ·¡£ A. [EBP£4] B. [EBP£8] C. [EBP£«4] D. [EBP£«8] 14. ÔÚÓÃLOOP Label Ö¸Áî¹¹³ÉµÄÑ»·ÖУ¬ÈôECXµÄ³õֵΪ£10£¬ÔòÑ»·Ì彫±»Ö´ÐУ¨ £©´Î¡£ A. 10 B. 0 C. 100 D. >100 15. ÔÚÓÃLOOP Label Ö¸Áî¹¹³ÉµÄÑ»·ÖУ¬ÈôECXµÄ³õֵΪ10£¬ÔÚLOOP Label Ö¸ÁîǰÓÐÒ»Ìõ¡°SUB ECX,2¡± Ö¸ÁÔòÑ»·Ì彫±»Ö´ÐУ¨ £©´Î¡£ 16
A. 10 B. 5 C. 4 D. >10000 5.2.Ãû´Ê½âÊÍ 5.3.ÅÐ¶Ï 1. Ö¸ÁîÖ¸Õë»òÕß»¹°üÀ¨´úÂë¶Î¼Ä´æÆ÷ÖµµÄ¸Ä±ä½«ÒýÆð³ÌÐòÁ÷³ÌµÄ¸Ä±ä¡£T 2. JMPÖ¸Áî¶ÔÓ¦¸ß¼¶ÓïÑÔµÄGOTOÓï¾ä£¬ËùÒÔ²»ÄÜʹÓá£F 3. ÒòΪÌõ¼þ×ªÒÆÖ¸ÁîJccÒªÀûÓñêÖ¾×÷ΪÌõ¼þ£¬ËùÒÔÒ²Ó°Ïì±êÖ¾¡£F 4. JAºÍJGÖ¸ÁîµÄÌõ¼þ¶¼ÊÇ¡°´óÓÚ¡±£¬ËùÒÔÊÇͬһ¸öÖ¸ÁîµÄÁ½¸öÖú¼Ç·û¡£F 5. ¿ØÖÆÑ»·ÊÇ·ñ½áÊøÖ»ÄÜÔÚÒ»´ÎÑ»·½áÊøÖ®ºó½øÐС£F 6. ½éÉÜLOOPÖ¸Áîʱ£¬³£ËµËüÏ൱ÓÚDEC ECXºÍJNZÁ½ÌõÖ¸Áî¡£µ«¿¼ÂǶÔ״̬±êÖ¾µÄÓ°Ï죬 ËüÃÇÓвî±ð¡£LOOPÖ¸Áî²»Ó°Ïì±êÖ¾£¬¶øDECÖ¸ÁîÈ´»áÓ°Ïì³ýCFÖ®ÍâµÄÆäËû״̬±êÖ¾¡£T 7. CALLÖ¸ÁîÓÃÔÚµ÷ÓóÌÐòÖУ¬Èç¹û±»µ÷ÓóÌÐòÖÐÒ²ÓÐCALLÖ¸Á˵Ã÷³öÏÖÁËǶÌס£T 8. ×Ó³ÌÐòÐèÒª±£»¤¼Ä´æÆ÷£¬°üÀ¨±£»¤´«µÝÈë¿Ú²ÎÊýºÍ³ö¿Ú²ÎÊýµÄͨÓüĴæÆ÷¡£F 9. ÀûÓüĴæÆ÷ÔÚÖ÷×Ó³ÌÐò¼ä´«µÝ²ÎÊý£¬ÆäʵÖʾÍÊÇÀûÓÃÈ«¾Ö±äÁ¿À´´«µÝ²ÎÊý¡£T 10. ×Ó³ÌÐò²ÉÓöÑÕ»´«µÝ²ÎÊýʱ£¬Ö»ÄÜÔÚÖ÷³ÌÐòÖÐÐÞ¸ÄESP·½¿É±£³Ö¶ÑÕ»µÄƽºâ¡£F 11. »ã±àÓïÑÔÖв»ÔÊÐíµÝ¹éµ÷ÓÃ×Ó³ÌÐò¡£F 12. Óë¸ß¼¶ÓïÑÔÖеÄ×Ô¶¨Ò庯Êý²»Í¬£¬»ã±àÓïÑÔÖеÄ×Ó³ÌÐò²»Äܽ«¼ÆËãµÄ½á¹û·µ¸øÖ÷³ÌÐòF 13. »ã±àÓïÑÔÖУ¬×Ó³ÌÐòǶÌ×µ÷ÓþÍÊǵݹéµ÷Óá£F 14. ÔÚLOOPÖ¸Áî¹¹³ÉµÄÑ»·½á¹¹ÖУ¬ÔÊÐíÐÞ¸ÄECXµÄÖµ¡£T 15. Ö¸ÁîCALL»òRETµÄÖ´ÐУ¬²»¸Ä±ä³ÌÐòÖ´ÐеÄÁ÷³Ì¡£F 16. ÔÚÈí¼þÖÐֻʹÓÃÒ»´ÎµÄ¹¦Äܱàд³É×Ó³ÌÐòÍêȫûÓбØÒª¡£F 17. ÔÚÖ´ÐÐCALLÖ¸Áîʱ£¬Ó²¼þ×Ô¶¯½«¶ÏµãµØÖ·Ñ¹Èë¶ÑÕ»ÖС£T 18. Ôڸ߼¶ÓïÑÔÖУ¬Èô¶àÖØÑ»·³öÏÖ\½»²æ¡±µÄ´íÎ󣬱àÒëϵͳͨ³£»á¸ø³öÌáʾÀ´¡£Èô»ã±à ÓïÑÔ³ÌÐòÖÐÒ²³öÏÖ\½»²æ¡±´íÎóʱ£¬»ã±à³ÌÐòÒ²»á¸ø³öÌáʾÀ´¡£F 5.4.Ìî¿Õ 1. JMPÖ¸Áî¸ù¾ÝÄ¿±êµØÖ·µÄѰַ·½Ê½£¬¿ÉÒÔ·Ö³ÉÈýÖÖÀàÐÍ£ºÏà¶ÔѰַ¡¢Ö±½ÓѰַ ºÍ¼ä½ÓѰַ¡£ 2. ¼ÙÉèÔÚÆ½Õ¹´æ´¢Ä£ÐÍÏ£¬EBX£½1256H£¬Ë«×Ö±äÁ¿TABLEµÄÆ«ÒÆµØÖ·ÊÇ20A1H£¬ÏßÐÔµØÖ·32F7H´¦´æ·Å3280H£¬Ö´ÐÐÖ¸Áî¡°JMP EBX¡± ºóEIP£½ 1256H _£¬Ö´ÐÐÖ¸Áî¡°JMP TABLE*EBX+¡±ºóEIP£½ 3280H¡£ 3. ¡°CMP EAX,3721H¡±Ö¸ÁîÖ®ºóÊÇJZÖ¸Á·¢Éú×ªÒÆµÄÌõ¼þÊÇEAX£½_3721H_£¬´ËʱZF£½_1__¡£ 4. JMPÖ¸Áî¸ù¾ÝÄ¿±êµØÖ·µÄѰַ·½Ê½£¬¿ÉÒÔ·Ö³ÉÈýÖÖÀàÐÍ£ºÏà¶ÔѰַ¡¢_¼ä½ÓѰַ ºÍÖ±½ÓѰַ£¬Í¨³£ Ïà¶ÔѰַ ·½Ê½Ê¹ÓõÄ×î¶à¡£ 5. Ñ»·½á¹¹³ÌÐòÒ»°ãÓÐÈý¸ö²¿·Ö×é³É£¬ËüÃÇÊÇ_Ñ»·³õʼ_£¬ Ñ»·Ìå ºÍ Ñ»·¿ØÖÆ__²¿·Ö¡£ 6. Ìõ¼þ×ªÒÆÖ¸Áî JE LabelµÄ²âÊÔ±ê־λÊÇ__ZF__£¬Ìõ¼þ×ªÒÆÖ¸Áî JNO LabelµÄ²âÊÔ±ê־λÊÇ_OF__¡£ 7. ¹ý³Ì¶¨Ò忪ʼÊÇ¡°TEST PROC¡±Óï¾ä£¬Ôò¹ý³Ì¶¨Òå½áÊøµÄÓï¾äÊÇ__TEST ENDP__¡£ºê¶¨Ò忪ʼÊÇ¡°DISP MACRO¡±Óï¾ä£¬Ôòºê¶¨Òå½áÊøµÄÓï¾äÊÇ_ENDM_¡£ 8. ÀûÓöÑÕ»´«µÝ×Ó³ÌÐò²ÎÊýµÄ·½·¨Êǹ̶¨µÄ£¬ÔÚ×Ó³ÌÐòÖÐͨ³£ÊÇÀûÓüĴæÆ÷__EBP__À´·ÃÎÊÕ»ÖеIJÎÊý£¬²ÉÓõÄѰַ·½Ê½ÊÇ ¼ä½ÓѰַ¡£ 17
9. µ÷ÓóÌÐòºÍ×Ó³ÌÐòÖ®¼äµÄÐÅÏ¢´«ËͳÆÎª__²ÎÊý__£¬¶øµ±´«µÝµÄÐÅÏ¢ºÜ´óʱͨ³£Í¨¹ý ¶ÑÕ» À´½øÐд«µÝ¡£ 10. ÔÚLOOP Label Ö¸Áî¹¹³ÉµÄÑ»·ÖУ¬ÈôECXµÄ³õֵΪ0£¬ÔòÑ»·Ì彫±»Ö´ÐÐ__232_´Î£»ÈôECXµÄ³õֵΪ¡ª100£¬ÔòÑ»·Ì彫±»Ö´ÐУ¨232-100£©__´Î¡£ 11. Ö»Òª¶ÑÕ»¿Õ¼äÔÊÐí£¬×Ó³ÌÐòǶÌ×µ÷ÓõIJã´ÎÎÞÏÞÖÆ_£¬×Ó³ÌÐòÒ²¿Éµ÷Óñ¾Éí£¬Õâ³ÆÎªµÝ¹éµ÷ÓÃ_¡£ 12. ͨ³£ÔÚ×Ó³ÌÐòµÄ¿ªÊ¼²¿·ÖÒª±£»¤_×Ó³ÌÐòÖÐÓõ½µÄ__¼Ä´æÆ÷£¬µ«ÓÃ×ö³ö¿Ú²ÎÊýµÄͨÓüĴæÆ÷Ôò_ _²»Äܱ£»¤ºÍ»Ö¸´ _¡£ 13. ͨ³£ÔÚ×Ó³ÌÐòÖеIJÎÊý·ÖΪÁ½ÖÖÀàÐÍ£¬·Ö±ð³ÆÎª__Öµ²Î__ºÍ ÐβΠ¡£ 14. ͨ³£ÔÚ×Ó³ÌÐòÖÐÖÁÉÙÒªÓÐÒ»Ìõ_·µ»Ø__Ö¸ÁîÓÃÓÚ·µ»ØÖ÷³ÌÐò£¬¶ø»ã±à³ÌÐòÔÚ»ã±àʱ²¢²»¼ì²â__·µ»Ø_Ö¸ÁîÊÇ·ñ´æÔÚ¡£ 15. ÔÚÖ÷³ÌÐòÖУ¬²ÉÓá°JMP subName¡± Ö¸Áî¿ÉÒÔ__תµ½_ ×Ó³ÌÐòsubName£¬ µ«×Ó³ÌÐò½áÊøºó ·µ»ØµØÖ·²»È·¶¨ ¡£ 5.5.¼ò´ðÌâ 1. ÊÇÊ²Ã´ÌØµã¾ö¶¨ÁËÄ¿±êµØÖ·µÄÏà¶ÔѰַ·½Ê½Ó¦ÓÃ×î¶à£¿ ´ð£ºµ±Í¬Ò»¸ö³ÌÐò±»²Ù×÷ϵͳ°²Åŵ½²»Í¬µÄ´æ´¢ÇøÓòÖ´ÐÐʱ£¬Ö¸Áî¼äµÄÎ»ÒÆÃ»Óиı䣬Ŀ±êµØÖ·²ÉÓÃÏà¶ÔѰַ¿É·½±ã²Ù×÷ϵͳµÄÁé»îµ÷¶È¡£ 2. ½«ÏÂÃæCÓïÑÔ³ÌÐòµÄ´úÂëÆ¬¶Îת»»Îª¹¦Äܵȼ۵Ļã±àÓïÑÔ´úÂëÆ¬¶Î£¬ÆäÖÐsignÓësinteger¾ùΪ˫×Ö±äÁ¿¡£ if ( sinteger = 0) sign = 0; else if ( siteger > 0) sign = 1; else sign = £1; ´ð: .data ;Êý¾Ý¶Î ¶¨ÒåÁ½¸öË«×Ö±äÁ¿£¨´Ë´¦¿ÉÒÔÊ¡ÂÔ£© sign dword ? sintegter dword ? .code ;´úÂë¶Î cmp sinteger , 0 jne outjudge ;Èô²»´óÓÚÔòÌø×ª mov sign , 0 ; sinteger = = 0 outjudge: cmp sinteger , 0 jl injudge ;ÈôСÓÚÔòÌø×ª£¨½«sinteger¿´×÷ÓзûºÅÊý£© ;Èô¿´×÷ÎÞ·ûºÅÊýÓÃjbÀ´ÅÐ¶Ï mov sign , 1 ; sinteger > 0 injudge: mov sign , -1 ; sinteger < 0 done: ; ½áÊø 3. ½«ÏÂÃæCÓïÑÔ³ÌÐòµÄ´úÂëÆ¬¶Îת»»Îª¹¦Äܵȼ۵Ļã±àÓïÑÔ´úÂëÆ¬¶Î£¬ÆäÖÐch1Óëcaps¾ùΪ×Ö½Ú±äÁ¿¡£ 18