΢»úÔ­Àí½Ì°¸ ÁªÏµ¿Í·þ

·¢²¼Ê±¼ä : ÐÇÆÚÈÕ ÎÄÕÂ΢»úÔ­Àí½Ì°¸¸üÐÂÍê±Ï¿ªÊ¼ÔĶÁ96294b92b0717fd5370cdc0e

΢»úÔ­Àí¼°½Ó¿Ú¼¼Êõ

¢Ú¼Ó1Ö¸ÁîINC

INCÖ»ÓÐ1¸ö²Ù×÷Êý£¬Ö¸ÁîÔÚÖ´ÐÐʱ£¬½«²Ù×÷ÊýµÄÄÚÈݼÓ1¡£Ò»°ãÓÃÔÚÑ­»·³ÌÐòÖÐÐÞ¸ÄÖ¸ÕëºÍÑ­»·´ÎÊý¡£Ëü²»Ó°Ïì½øλ±êÖ¾CF¡£

2¡¢¼õ·¨Ö¸Áî

SUB SBB DEC NEG CMP

¢Ù²»´ø½èλµÄ¼õ·¨Ö¸ÁîSUB£»´ø½èλµÄ¼õ·¨Ö¸ÁîSBB ¸ñʽ£ºSUB DST£¬SRC£» SBB DST£¬SRC

¹¦ÄÜ£º(DST)¡û(DST)-(SRC)£»(DST)¡û(DST)-(SRC)-CF ˵Ã÷£ºÕâÁ½ÌõÖ¸ÁîµÄÖ´Ðж¼»áÓ°ÏìÌõ¼þÂë±êÖ¾¡£

Òç³ö(OF)µÄÅжϣºÈôÁ½¸ö²Ù×÷Êý·ûºÅÏà·´£¬¶ø½á¹ûµÄ·ûºÅÓë¼õÊýÏàͬ£¬ÔòÒç³ö(OF=1)¡£

¢Ú±È½ÏÖ¸ÁîCMP ¸ñʽ£ºCMP OPR1£¬OPR2 ¹¦ÄÜ£º(OPR1)-(OPR2)

˵Ã÷£ºÖ´Ðмõ·¨²Ù×÷£¬µ«²»±£´æ½á¹û£¬Ö»¸ù¾Ý½á¹ûÉèÖÃÏàÓ¦µÄÌõ¼þÂë±êÖ¾¡£CMPÖ¸ÁîºóÃæÍùÍù¸ú×ÅÒ»ÌõÌõ¼þתÒÆÖ¸Á¸ù¾Ý±È½Ï½á¹û²úÉú²»Í¬µÄ·ÖÖ§¡£

Àý£ºÒÑÖªÊý×éÊ×µØַΪ1000H£¬¶ÎµØÖ·ÒÑ·ÅÔÚDSÖУ¬Ä©×ÖΪ0FFFFH£¬ÊÔͳ¼ÆÆäÖÐ0µÄ¸öÊý·ÅÔÚÄ©×Öµ¥Ôª¡£

MOV DX£¬0 LEA SI£¬[1000H]

LOP£ºCMP WORD PTR [SI]£¬FFFFH JZ END0

CMP WORD PTR [SI]£¬0 JNZ NEXT INC DX NEXT£ºADD SI£¬2 JMP LOP END0£ºMOV [SI]£¬DX

17

΢»úÔ­Àí¼°½Ó¿Ú¼¼Êõ

BEGIN 0¡ú(DX) 1000H¡ú(SI) [SI]=FFFFH? N N [SI]=0? Y (DX)¡û(DX)+1 ±£´æ½á¹û END (SI)¡û(SI)+2

3¡¢³Ë·¨Ö¸Áî

ÎÞ·ûºÅÊý³Ë·¨Ö¸ÁîMUL ´ø·ûºÅÊý³Ë·¨Ö¸ÁîIMUL ¸ñʽ£ºMUL SRC£»IMUL SRC

¹¦ÄÜ£º(AX)¡û(AL)¡Á(SRC)£»(DX£¬AX)¡û(AX)¡Á(SRC)

˵Ã÷£º½øÐг˷¨ÔËËãʱ£¬Èç¹ûÁ½¸ö8λÊý¾ÝÏà³Ë£¬»áµÃµ½Ò»¸ö16λµÄ³Ë»ý£»Èç¹ûÁ½¸ö16λÊýÏà³Ë£¬»áµÃµ½Ò»¸ö32λµÄ³Ë»ý¡£8086ÔÚÖ´Ðг˷¨Ö¸Áîʱ£¬ÓÐÒ»¸ö³ËÊý×ÜÊÇ·ÅÔÚAL»òÕßAXÖС£µ±µÃµ½16λ»ýʱ£¬½á¹û·ÅÔÚAXÖУ»¶øµÃµ½32λ»ýʱ£¬½á¹û·ÅÔÚDXºÍAXÁ½¸ö¼Ä´æÆ÷ÖУ¬DXÖÐΪ³Ë»ýµÄ¸ß16룬AXÖÐΪ³Ë»ýµÄµÍ16λ¡£

4¡¢³ý·¨Ö¸Áî

ÎÞ·ûºÅÊý³ý·¨Ö¸ÁîDIV ´ø·ûºÅÊý³ý·¨Ö¸ÁîIDIV ¸ñʽ£ºDIV SRC£»IDIV SRC

˵Ã÷£º8086Ö´Ðгý·¨ÔËËãʱ£¬¹æ¶¨³ýÊý±ØÐëΪ±»³ýÊýµÄÒ»°ë³¤¶È¡£¼´±»³ýÊýΪ16λʱ£¬³ýÊýΪ8룬±»³ýÊýΪ32λʱ£¬³ýÊýΪ16λ¡£16λµÄ±»³ýÊý·ÅÔÚAXÖУ¬32λµÄ±»³ýÊý·ÅÔÚDXºÍAXÖС£µ±±»³ýÊýΪ16룬³ýÊýΪ8λʱ£¬µÃµ½8λµÄÉÌ

18

΢»úÔ­Àí¼°½Ó¿Ú¼¼Êõ

·ÅÔÚALÖУ¬8λµÄÓàÊý·ÅÔÚAHÖС£µ±±»³ýÊýΪ32룬³ýÊýΪ16λʱ£¬µÃµ½16λµÄÉÌ·ÅÔÚAXÖУ¬16λµÄÓàÊý·ÅÔÚDXÖС£ ËÄ¡¢Âß¼­ÔËËã¼°ÒÆλָÁî

1¡¢Âß¼­ÔËËãÖ¸Áî AND OR NOT XOR TEST

NOTΪµ¥²Ù×÷ÊýÖ¸Á²»ÔÊÐíʹÓÃÁ¢¼´Êý£¬²»Ó°Ïì±ê־λ¡£ÆäËüËÄÌõÖ¸ÁîΪ˫²Ù×÷ÊýÖ¸ÁʹCFºÍOFΪ0£¬AFÎÞ¶¨Ò壬¶øSF¡¢ZFºÍPFÔò¸ù¾ÝÔËËã½á¹ûÉèÖá£

¢ÙAND

¸ñʽ£ºAND DST£¬SRC ¹¦ÄÜ£º²Ù×÷ÊýijλÇå0¡£ ¢ÚOR ²Ù×÷ÊýijλÖÃ1¡£ ¢ÛXOR ¶Ô²Ù×÷ÊýÇå0¡£

¢ÜTEST Ö´ÐÐANDÔËË㣬²»±£´æ½á¹û£¬Ò»°ãÓÃÀ´¼ì²âÖ¸¶¨Î»ÊÇ1»¹ÊÇ0 2¡¢ÒÆλָÁî

SHL SHR SAL SAR ROL ROR RCL RCR ˵Ã÷£º¸ñʽÏàͬ£¬Ë«²Ù×÷ÊýÖ¸Áî

ÎÞ·ûºÅÊýʹÓÃÂß¼­ÒÆλָÁ´ø·ûºÅÊýʹÓÃËãÊõÒÆλָÁî ×óÒÆÒ»´ÎÏ൱ÓÚ³Ë2£¬ÓÒÒÆÒ»´ÎÏ൱ÓÚ³ý2 ÒÆλ´ÎÊýn>1ʱ£¬n±ØÐëÔ¤ÏÈ´æÈëCLÖÐ ÒÆλָÁîÓ°ÏìSF¡¢ZF¡¢PF Îå¡¢´®²Ù×÷Ö¸Áî

MOVS CMPS SCAS LODS STOS 1¡¢´®´«ËÍMOVSB MOVSW

¹¦ÄÜ£º°ÑSIÖ¸ÏòµÄÊý¾Ý¶ÎÖеÄÒ»¸ö×Ö½Ú»ò×Ö´«Ë͵½ÓÉDIÖ¸ÏòµÄ¸½¼Ó¶ÎÖеÄÒ»¸ö×Ö½Ú»ò×ÖÖÐÈ¥£¬Í¬Ê±¸ù¾Ý·½Ïò±êÖ¾¼°Êý¾Ý¸ñʽÐÞ¸ÄSIºÍDI¡£

Àý£ºÊÔ½«×Ö·û´®MESS1´«Ë͵½MESS2ÇøÓò£¬ÉèMESS1ºÍMESS2µÄ¶ÎµØÖ·ÒÑ·Ö±ð´æÈëDSºÍESÖС£

·½·¨1£ºLEA SI£¬MESS1 LEA DI£¬MESS2

19

΢»úÔ­Àí¼°½Ó¿Ú¼¼Êõ

MOV CX£¬8 NEXT£ºMOV AL£¬[SI] MOV [DI]£¬AL INC SI INC DI DEC CX JNZ NEXT

·½·¨2£ºÊ¹Óô®´«ËÍÖ¸Áî¡£ÔÚʹÓøÃÖ¸Áî֮ǰ£¬±ØÐëÏÈ×öËļþÊ£º

a.ÉèÖ÷½Ïò±êÖ¾

b.Ô´´®ÆðʼµØÖ·¡úDS£ºSI c.Ä¿µÄ´®ÆðʼµØÖ·¡úES£ºDI d.Êý¾Ý¸öÊý¡úCX CLD

LEA SI£¬MESS1 LEA DI£¬MESS2 MOV CX£¬8 REP MOVSB

2¡¢´®±È½ÏÖ¸ÁîCMPSB CMPSW ʹÓÃǰ׺REPEºÍREPNE

REPE/REPZ£ºÁ½ÊýÏàµÈ¾Í¿ÉÒÔ¼ÌÐø±È½Ï£»ÈçÓöµ½Á½Êý²»ÏàµÈ¿ÉÌáÇ°½áÊø¡£ REPNE/REPNZ£ºÁ½Êý±È½Ï²»ÏàµÈ£¬¾Í¿ÉÒÔ¼ÌÐø´®±È½ÏÖ¸ÁÈçÓöµ½Ä³´Ë±È½ÏÏàµÈ£¬Ôò¿ÉÌáÇ°½áÊø¡£

Àý£º±àдһ¸ö³ÌÐò¶Î£¬±È½Ï5¸ö×Ö½Ú×Ö·û´®OLDSºÍNEWS£¬Èç¹ûOLDS×Ö·û´®²»Í¬ÓÚNEWS×Ö·û´®ÔòNEW_LESS³ÌÐò£»·ñÔò˳ÐòÖ´ÐгÌÐò¡£¼ÙÉèÔÚÊý¾Ý¶ÎºÍ¸½¼Ó¶ÎÖж¨ÒåÁËÁ½¸ö×Ö·û´®¡£

CLD

LEA SI£¬MESS1 LEA DI£¬MESS2 MOV CX£¬8

20