¡²Ï°Ìâ2.2¡³ÅжÏÌâ ¡²½â´ð¡³
¢Ù ´í ¢Þ ¶Ô
¢Ú ¶Ô ¢ß ¶Ô ¢Û ¶Ô ¢à ´í ¢Ü ¶Ô ¢á ¶Ô ¢Ý ´í ¢â ¶Ô
¡²Ï°Ìâ2.3¡³Ìî¿ÕÌâ
¡²½â´ð¡³
¢Ù 32£¬DX£¬DH ¢Ú 16
¢Û ¶ÎµØÖ·£¬Æ«ÒƵØÖ·£¬EIP£¬IP ¢Ü 00100110£¬0
¢Ý 73C00H£¬73800H
¢Þ EBX£¬ECX£¬ESI£¬EDI£¬EBP£¬ESP ¢ß ʵµØÖ·£¬64KB
¢à ASM£¬Ä¿±êÄ£¿é£¬FLAT
¢á Á¢¼´ÊýѰַ¡¢¼Ä´æÆ÷ѰַºÍ´æ´¢Æ÷Ѱַ ¢â DS£¬SS ¡²Ï°Ìâ2.4¡³
´¦ÀíÆ÷ÄÚ²¿¾ßÓÐÄÄ3¸ö»ù±¾²¿·Ö£¿8086·ÖΪÄÄÁ½´ó¹¦Äܲ¿¼þ£¿Æä¸÷×ÔµÄÖ÷Òª¹¦ÄÜÊÇʲô£¿
¡²½â´ð¡³
´¦ÀíÆ÷ÄÚ²¿ÓÐALU¡¢¼Ä´æÆ÷ºÍÖ¸Áî´¦ÀíÈý¸ö»ù±¾µ¥Ôª¡£ 8086ÓÐÁ½´ó¹¦Äܲ¿¼þ£º×ÜÏß½Ó¿Úµ¥ÔªºÍÖ´Ðе¥Ôª¡£ ×ÜÏß½Ó¿Úµ¥Ôª£º¹ÜÀí×Å8086Óëϵͳ×ÜÏߵĽӿڣ¬¸ºÔð´¦ÀíÆ÷¶Ô´æ´¢Æ÷ºÍÍâÉè½øÐзÃÎÊ¡£8086ËùÓжÔÍâ²Ù×÷±ØÐëͨ¹ýBIUºÍÕâЩ×ÜÏß½øÐС£
Ö´Ðе¥ÔªEU£º¸ºÔðÖ¸ÁîÒëÂë¡¢Êý¾ÝÔËËãºÍÖ¸ÁîÖ´ÐС£ ¡²Ï°Ìâ2.5¡³
8086ÔõÑùʵÏÖÁË×î¼òµ¥µÄÖ¸ÁîÁ÷Ë®Ïߣ¿ ¡²½â´ð¡³
8086ÖУ¬Ö¸ÁîµÄ¶ÁÈ¡ÊÇÔÚBIUµ¥Ôª£¬¶øÖ¸ÁîµÄÖ´ÐÐÊÇÔÚEUµ¥Ôª¡£ÒòΪBIUºÍEUÁ½¸öµ¥ÔªÏ໥¶ÀÁ¢¡¢·Ö±ðÍê³É¸÷×Ô²Ù×÷£¬ËùÒÔ¿ÉÒÔ²¢ÐвÙ×÷¡£Ò²¾ÍÊÇ˵£¬ÔÚEUµ¥Ôª¶ÔÒ»¸öÖ¸Áî½øÐÐÒëÂëÖ´ÐÐʱ£¬BIUµ¥Ôª¿ÉÒÔͬʱ¶ÔºóÐøÖ¸Áî½øÐжÁÈ¡£»Õâ¾ÍÊÇ×î¼òµ¥µÄÖ¸ÁîÁ÷Ë®Ïß¼¼Êõ¡£ ¡²Ï°Ìâ2.6¡³
ʲôÊDZêÖ¾£¿Ê²Ã´ÊÇIA-32´¦ÀíÆ÷µÄ״̬±êÖ¾¡¢¿ØÖƱêÖ¾ºÍϵͳ±êÖ¾£¿ËµÃ÷״̬±êÖ¾ÔÚ±êÖ¾¼Ä´æÆ÷EFLAGSµÄλÖúͺ¬Òå¡£ ¡²½â´ð¡³
±êÖ¾£ºÓÃÓÚ·´Ó³Ö¸ÁîÖ´Ðнá¹û»ò¿ØÖÆÖ¸ÁîÖ´ÐÐÐÎʽµÄÒ»¸ö»ò¶à¸ö¶þ½øÖÆÊýλ¡£ÀýÈ磬ÓÐЩָÁîÖ´Ðкó»áÓ°ÏìÓйرê־λ£»ÓÐЩָÁîµÄÖ´ÐÐÒªÀûÓÃÏà¹Ø±êÖ¾¡£
״̬±êÖ¾£ºÓÃÀ´¼Ç¼³ÌÐòÔËÐнá¹ûµÄ״̬ÐÅÏ¢¡£ ¿ØÖƱêÖ¾£ºDF±êÖ¾£¬¿ØÖÆ×Ö·û´®²Ù×÷µÄµØÖ··½Ïò¡£
£ £5
ϵͳ±êÖ¾£ºÓÃÓÚ¿ØÖÆ´¦ÀíÆ÷Ö´ÐÐÖ¸ÁîµÄ·½Ê½¡£
״̬±êÖ¾ÔÚ±êÖ¾¼Ä´æÆ÷EFLAGSÖеÄλÖúͺ¬ÒåÈçÏ£º
31 ¡¡ 11 OF 10 9 8 7 SF 6 ZF 5 4 AF 3 2 PF 1 0 CF ¡²Ï°Ìâ2.7¡³
¾ÙÀý˵Ã÷CFºÍOF±êÖ¾µÄ²îÒì¡£ ¡²½â´ð¡³
½øÎ»±êÖ¾CF±íʾÎÞ·ûºÅÊýÔËËã½á¹ûÊÇ·ñ³¬³ö·¶Î§£¬³¬³ö·¶Î§ºó¼ÓÉϽøÎ»»ò½è룬ÔËËã½á¹ûÈÔÈ»ÕýÈ·£»Òç³ö±êÖ¾OF±íʾÓзûºÅÊýÔËËã½á¹ûÊÇ·ñ³¬³ö·¶Î§£¬Èç¹û³¬³ö·¶Î§£¬ÔËËã½á¹ûÒѾ²»ÕýÈ·¡£
Àý1£º3AH £« 7CH£½B6H
ÎÞ·ûºÅÊýÔËË㣺58£«124£½182£¬·¶Î§ÄÚ£¬ÎÞ½øÎ»¡£ ÓзûºÅÊýÔËË㣺58£«124£½182£¬·¶Î§Í⣬ÓÐÒç³ö¡£ Àý2£ºAAH + 7CH£½¢Ù26H
ÎÞ·ûºÅÊýÔËË㣺170£«124£½294£¬·¶Î§Í⣬ÓнøÎ»¡£ ÓзûºÅÊýÔËË㣺£86£«124£½28 £¬·¶Î§ÄÚ£¬ÎÞÒç³ö¡£ ¡²Ï°Ìâ2.8¡³
ʲôÊÇ8086ÖеÄÂß¼µØÖ·ºÍÎïÀíµØÖ·£¿Âß¼µØÖ·ÈçºÎת»»³ÉÎïÀíµØÖ·£¿Ç뽫ÈçÏÂÂß¼µØÖ·ÓÃÎïÀíµØÖ·±í´ï£¨¾ùΪʮÁù½øÖÆÐÎʽ£©£º
¢Ù FFFF¡Ã0 ¢Ú 40¡Ã17 ¢Û 2000¡Ã4500 ¢Ü B821¡Ã4567 ¡²½â´ð¡³
ÎïÀíµØÖ·£ºÔÚ´¦ÀíÆ÷µØÖ·×ÜÏßÉÏÊä³öµÄµØÖ·³ÆÎªÎïÀíµØÖ·¡£Ã¿¸ö´æ´¢µ¥ÔªÓÐÒ»¸öΨһµÄÎïÀíµØÖ·¡£
Âß¼µØÖ·£ºÔÚ´¦ÀíÆ÷ÄÚ²¿¡¢³ÌÐòÔ±±à³Ìʱ²ÉÓÃÂß¼µØÖ·£¬²ÉÓᰶεØÖ·£ºÆ«ÒƵØÖ·¡°ÐÎʽ¡£Ä³¸ö´æ´¢µ¥Ôª¿ÉÒÔÓжà¸öÂß¼µØÖ·£¬¼´´¦ÓÚ²»Í¬ÆðµãµÄÂß¼¶ÎÖУ¬µ«ÆäÎïÀíµØÖ·ÊÇΨһµÄ¡£
Âß¼µØÖ·×ª»»³ÉÎïÀíµØÖ·£ºÂß¼µØÖ·ÓÉ´¦ÀíÆ÷ÔÚÊä³ö֮ǰת»»ÎªÎïÀíµØÖ·¡£½«Âß¼µØÖ·ÖеĶεØÖ·×óÒÆ¶þ½øÖÆ4루¶ÔÓ¦16½øÖÆÊÇһ룬¼´³ËÒÔ16£©£¬¼ÓÉÏÆ«ÒƵØÖ·¾ÍµÃµ½20λÎïÀíµØÖ·¡£
¢Ù FFFFH:0£½FFFF0H ¢Ú 40H:17H£½00417H
¢Û 2000H:4500H£½24500H ¢Ü B821H:4567H£½BC777H ¡²Ï°Ìâ2.9¡³
IA-32´¦ÀíÆ÷ÓÐÄÄÈýÀà»ù±¾¶Î£¬¸÷ÊÇʲôÓÃ;£¿ ¡²½â´ð¡³
IA-32´¦ÀíÆ÷ÓдúÂë¶Î¡¢Êý¾Ý¶Î¡¢¶ÑÕ»¶ÎÈýÀà»ù±¾¶Î¡£
´úÂë¶Î£º´æ·Å³ÌÐòµÄÖ¸Áî´úÂë¡£³ÌÐòµÄÖ¸Áî´úÂë±ØÐë°²ÅÅÔÚ´úÂë¶Î£¬·ñÔò½«ÎÞ·¨Õý³£Ö´ÐС£
Êý¾Ý¶Î£º´æ·Åµ±Ç°ÔËÐгÌÐòËùÓõÄÊý¾Ý¡£³ÌÐòÖеÄÊý¾ÝĬÈÏÊÇ´æ·ÅÔÚÊý¾Ý¶Î£¬Ò²¿ÉÒÔ´æ·ÅÔÚÆäËûÂß¼¶ÎÖС£
£ £6
¶ÑÕ»¶Î£ºÖ÷´æÖжÑÕ»ËùÔÚµÄÇøÓò¡£³ÌÐòʹÓõĶÑÕ»Ò»¶¨ÔÚ¶ÑÕ»¶Î¡£ ¡²Ï°Ìâ2.10¡³
ʲôÊÇÆ½Õ¹´æ´¢Ä£ÐÍ¡¢¶Îʽ´æ´¢Ä£ÐͺÍʵµØÖ·´æ´¢Ä£ÐÍ£¿ ¡²½â´ð¡³
ƽչ´æ´¢Ä£ÐÍÏ£¬¶Ô³ÌÐòÀ´Ëµ´æ´¢Æ÷ÊÇÒ»¸öÁ¬ÐøµÄµØÖ·¿Õ¼ä£¬³ÆÎªÏßÐÔµØÖ·¿Õ¼ä¡£³ÌÐòÐèÒªµÄ´úÂë¡¢Êý¾ÝºÍ¶ÑÕ»¶¼°üº¬ÔÚÕâ¸öµØÖ·¿Õ¼äÖС£
¶Îʽ´æ´¢Ä£ÐÍÏ£¬¶Ô³ÌÐòÀ´Ëµ´æ´¢Æ÷ÓÉÒ»×é¶ÀÁ¢µÄµØÖ·¿Õ¼ä×é³É£¬¶ÀÁ¢µÄµØÖ·¿Õ¼ä³ÆÎª¶Î¡£Í¨³££¬´úÂë¡¢Êý¾ÝºÍ¶ÑջλÓÚ·Ö¿ªµÄ¶ÎÖС£
ʵµØÖ·´æ´¢Ä£ÐÍÊÇ8086´¦ÀíÆ÷µÄ´æ´¢Ä£ÐÍ¡£ËüÊǶÎʽ´æ´¢Ä£Ð͵ÄÌØÀý£¬ÆäÏßÐÔµØÖ·¿Õ¼ä×î´óΪ1MBÈÝÁ¿£¬ÓÉ×î´óΪ64KBµÄ¶à¸ö¶Î×é³É¡£ ¡²Ï°Ìâ2.11¡³
ʲôÊÇʵµØÖ··½Ê½¡¢±£»¤·½Ê½ºÍÐéÄâ8086·½Ê½£¿ËüÃÇ·Ö±ðʹÓÃʲô´æ´¢Ä£ÐÍ£¿ ¡²½â´ð¡³
ʵµØÖ··½Ê½£ºÓë8086¾ßÓÐÏàͬµÄ»ù±¾½á¹¹£¬Ö»ÄÜѰַ1MBÎïÀí´æ´¢Æ÷¿Õ¼ä£¬Âß¼¶Î×î´ó²»³¬¹ý64KB£»µ«¿ÉÒÔʹÓÃ32λ¼Ä´æÆ÷¡¢32λ²Ù×÷ÊýºÍ32λѰַ·½Ê½£»Ï൱ÓÚ¿ÉÒÔ½øÐÐ32λ´¦ÀíµÄ¿ìËÙ8086¡£ÊµµØÖ·¹¤×÷·½Ê½Ö»ÄÜÖ§³ÖʵµØÖ·´æ´¢Ä£ÐÍ¡£
±£»¤·½Ê½£º¾ßÓÐÇ¿´óµÄ¶Îҳʽ´æ´¢¹ÜÀíºÍÌØÈ¨Óë±£»¤ÄÜÁ¦£¬Ê¹ÓÃÈ«²¿32ÌõµØÖ·×ÜÏߣ¬¿ÉѰַ4GBÎïÀí´æ´¢Æ÷¡£±£»¤·½Ê½Í¨¹ýÃèÊö·ûʵÏֶַδ洢¹ÜÀí£¬Ã¿¸öÂß¼¶Î¿É´ï4GB¡£´¦ÀíÆ÷¹¤×÷ÔÚ±£»¤·½Ê½Ê±£¬¿ÉÒÔʹÓÃÆ½Õ¹»ò¶Îʽ´æ´¢Ä£ÐÍ¡£
ÐéÄâ8086·½Ê½£ºÔÚ±£»¤·½Ê½ÏÂÔËÐеÄÀàËÆÊµ·½Ê½µÄÔËÐл·¾³£¬Ö»ÄÜÔÚ1MB´æ´¢¿Õ¼äÏÂʹÓá°16λ¶Î¡±¡£ ´¦ÀíÆ÷¹¤×÷ÔÚÐéÄâ8086·½Ê½Ê±£¬Ö»ÄÜʹÓÃʵµØÖ·´æ´¢Ä£ÐÍ¡£ ¡²Ï°Ìâ2.12¡³
»ã±àÓï¾äÓÐÄÄÁ½ÖÖ£¬Ã¿¸öÓï¾äÓÉÄÄ4¸ö²¿·Ö×é³É£¿ ¡²½â´ð¡³
»ã±àÓï¾äÓÐÁ½ÖÖ£ºÖ´ÐÐÐÔÓï¾ä£¨´¦ÀíÆ÷Ö¸Á¡¢ËµÃ÷ÐÔÓï¾ä£¨Î±Ö¸Á¡£ ÿ¸öÓï¾äÓУº±êºÅ¡¢Ö¸ÁîÖú¼Ç·û¡¢²Ù×÷Êý»ò²ÎÊý¡¢×¢ÊÍ4¸ö²¿·Ö×é³É¡£ ¡²Ï°Ìâ2.13¡³
»ã±àÓïÑÔ³ÌÐòµÄ¿ª·¢ÓÐÄÄ4¸ö²½Ö裬·Ö±ðÀûÓÃʲô³ÌÐòÍê³É¡¢²úÉúʲôÊä³öÎļþ¡£ ¡²½â´ð¡³
»ã±àÓïÑÔ³ÌÐòµÄ¿ª·¢ÓÐ4¸ö²½Ö裺
±à¼£ºÓÃÎı¾±à¼Æ÷ÐγÉÒ»¸öÒÔASMΪÀ©Õ¹ÃûµÄÔ´³ÌÐòÎļþ¡£ »ã±à£ºÓûã±à³ÌÐò½«ASMÎļþת»»ÎªOBJÄ£¿éÎļþ¡£
Á¬½Ó£ºÓÃÁ¬½Ó³ÌÐò½«Ò»¸ö»ò¶à¸öÄ¿±êÎļþÁ´½Ó³ÉÒ»¸öEXE»òCOM¿ÉÖ´ÐÐÎļþ¡£ µ÷ÊÔ£ºÓõ÷ÊÔ³ÌÐòÅųý´íÎó£¬Éú³ÉÕýÈ·µÄ¿ÉÖ´ÐÐÎļþ¡£ ¡²Ï°Ìâ2.14¡³
MASM»ã±àÓïÑÔÖУ¬ÏÂÃæÄÄЩÊdzÌÐòÔ±¿ÉÒÔʹÓõÄÕýÈ·µÄ±êʶ·û¡£ FFH£¬DS£¬0xvab£¬Again£¬next£¬@data£¬h_ascii£¬6364b£¬.exit£¬small ¡²½â´ð¡³
FFH£¬Again£¬next£¬h_ascii ¡²Ï°Ìâ2.15¡³
¸ø³öIA-32´¦ÀíÆ÷µÄ32λѰַ·½Ê½ºÍ16λѰַ·½Ê½µÄ×é³É¹«Ê½£¬²¢ËµÃ÷¸÷²¿·Ö×÷Óá£
£ £7
¡²½â´ð¡³
¢Ù 32λ´æ´¢Æ÷Ѱַ·½Ê½µÄ×é³É¹«Ê½
32λÓÐЧµØÖ· £½ »ùÖ·¼Ä´æÆ÷£«£¨±äÖ·¼Ä´æÆ÷¡Á±ÈÀý£©£«Î»ÒÆÁ¿ ÆäÖеÄ4¸ö×é³É²¿·ÖÊÇ£º
¡¤»ùÖ·¼Ä´æÆ÷??ÈκÎ8¸ö32λͨÓüĴæÆ÷Ö®Ò»£»
¡¤±äÖ·¼Ä´æÆ÷??³ýESPÖ®ÍâµÄÈκÎ32λͨÓüĴæÆ÷Ö®Ò»£»
¡¤±ÈÀý??¿ÉÒÔÊÇ1£¬2£¬4»ò8£¨ÒòΪ²Ù×÷ÊýµÄ³¤¶È¿ÉÒÔÊÇ1£¬2£¬4»ò8×Ö½Ú£©£» ¡¤Î»ÒÆÁ¿??¿ÉÒÔÊÇ8»ò32λÓзûºÅÖµ¡£ ¢Ú 16λ´æ´¢Æ÷Ѱַ·½Ê½µÄ×é³É¹«Ê½
16λÓÐЧµØÖ· £½ »ùÖ·¼Ä´æÆ÷£«±äÖ·¼Ä´æÆ÷£«Î»ÒÆÁ¿
ÆäÖлùÖ·¼Ä´æÆ÷Ö»ÄÜÊÇBX»òBP£¬±äÖ·¼Ä´æÆ÷Ö»ÄÜÊÇSI»òDI£¬Î»ÒÆÁ¿ÊÇ8»ò16λÓзûºÅÖµ¡£ ¡²Ï°Ìâ2.16¡³
˵Ã÷ÏÂÁÐÖ¸ÁîÖÐÔ´²Ù×÷ÊýµÄѰַ·½Ê½£¿¼ÙÉèVARDÊÇÒ»¸öË«×Ö±äÁ¿¡£ £¨1£©mov edx,1234h £¨2£©mov edx,vard £¨3£©mov edx,ebx £¨4£©mov edx,[ebx]
£¨5£©mov edx,[ebx+1234h] £¨6£©mov edx,vard[ebx] £¨7£©mov edx,[ebx+edi]
£¨8£©mov edx,[ebx+edi+1234h] £¨9£©mov edx,vard[esi+edi] £¨10£©mov edx,[ebp*4] ¡²½â´ð¡³
¢Ù Á¢¼´Êý ¢Ú Ö±½Ó ¢Û ¼Ä´æÆ÷
¢Ü ¼Ä´æÆ÷¼ä½Ó ¢Ý ¼Ä´æÆ÷Ïà¶Ô ¢Þ ¼Ä´æÆ÷Ïà¶Ô ¢ß »ùÖ·±äÖ·
¢à Ïà¶Ô»ùÖ·±äÖ· ¢á Ïà¶Ô»ùÖ·±äÖ· ¢â ´ø±ÈÀýѰַ ¡²Ï°Ìâ2.17¡³
ʹÓñ¾ÊéÅäÌ×µÄÈí¼þ°ü£¨»òÕß°´ÕÕ±¾Êé˵Ã÷£©´´½¨MASM¿ª·¢»·¾³£¬Í¨¹ý±à¼ÀýÌâ2-1ºÍÀýÌâ2-2³ÌÐò¡¢»ã±àÁ¬½ÓÉú³É¿ÉÖ´ÐгÌÐòºÍÁбíÎļþ£¬ÕÆÎÕ»ã±àÓïÑԵĿª·¢¡£
µÚ3Õ Êý¾Ý´¦Àí
¡²Ï°Ìâ3.1¡³¼ò´ðÌâ ¡²½â´ð¡³
£ £8