΢»úÔÀí±Ê¼Ç£¨Ò»£©--Ð÷ÂÛ
µÚÒ»ÕÂÐ÷ÂÛ
1-2 ¼ÆËã»úµÄ½á¹¹
×ÜÏߣºÐÅÏ¢´«ÊäµÄͨµÀ AB¡¢DB¡¢CB ³£ÓÃÊõÓ
루bit£©£ºÐÅÏ¢´¦ÀíºÍ´«Ë͵Ä×îСµ¥Î»
×Ö½Ú£¨byte£©£º8Ϊ¶þ½øÖÆÊý¹¹³ÉÒ»¸ö×Ö½Ú£¨char£©×Ö£º16λ¶þ½øÖÆÊý¹¹³ÉÒ»¸ö×Ö£¬Á½¸ö×Ö½Ú£¨int£©ÐÅÏ¢´¢´æµÄ×îСµ¥Î»
Ë«×Ö£º32λ¶þ½øÖÆÊý¹¹³ÉÒ»¸ö×Ö£¬Á½¸ö×Ö£¨long£©Ö¸ÁÈÃCPUÖ´Ðлù±¾²Ù×÷µÄÃüÁî
Ö¸ÁîµÄ¹¹³É£º²Ù×÷Êý¡¢²Ù×÷Âë CPUÖ´ÐÐÒ»ÌõÖ¸ÁîµÄ¹ý³Ì£ºÈ¡Ö¸Áî´úÂë->ÒëÂë->Ö´ÐÐÖ¸Áîϵͳ£ºCPU¿ÉÖ´ÐÐËùÓÐÖ¸ÁîµÄ¼¯ºÏ
³ÌÐò£ºÖ¸ÁîµÄÓлú½áºÏ 1-3½øÎ»¼ÆÊýÖÆ
¼ÆËã·ûºÅ£º D 10¸ö¡¢B 2¸ö¡¢H 16¸ö Ȩ£ºD 10µÄÃÝ¡¢B 2µÄÃÝ¡¢H 16µÄÃÝ »ù£ºD 10¡¢B 2¡¢H 16 ÈÎÒâ½øÖÆ
ÕûÊý²¿·Ö£¬³ýÒÔ»ùÈ¡Óà£¬ÄæÐòÅÅÁÐ
СÊý²¿·Ö£¬³ËÒÔ»ùÈ¡Õû£¬Ë³ÐòÅÅÁÐ ·ûºÅÊýµÄ±íʾ£º
ÕýÊýµÄ·´Âë±íʾ£ºÓë¸ÃÊýÔÂëÏàͬ
¸ºÊýµÄ·´Âë±íʾ£ºÔÚÆäÕýÊý·´Âë±íʾ»ù´¡Éϰ´Î»Çó·´²¹Â룺 ÕýÊýµÄ²¿ÃÅÓëÔÂëÏàͬ
¸ºÊýµÄ²¿ÃÅÔÚÕýÊýµÄ²¹Âë±íʾ£¬°´Î»Çó·´£¬ÔÚ×îµÍλ¼Ó1 ×¢£º1¡¢²¹Âë²»µÈÓÚ¸ºÊý
2¡¢Çó²¹²»µÈÓÚ²¹Â룬Çó²¹ÊÇÇóÆäÏà·´ÊýµÄ²Ù×÷ ¶þ½øÖƱàÂë 1¡¢ BCDÂë
ѹËõµÄBCDÂ룺һ¸ö×Ö½Ú±íʾ2λBCDÂë ·ÇѹËõµÄBCDÂ룺һ¸ö×Ô¼º±íʾ1λBCDÂë
2¡¢ASC¢òÂ룺Æßλ¶þ½øÖÆÊý±íʾһ¸ö·ûºÅ¸ßλΪ0
0~9=30H~39H A~Z=41H~5AH a~z=61H~7AH ¡°¿Õ¸ñ¡±=20H ¡°»Ø³µ¡±=0DH ¡°»»ÐС±=0AH
΢»úÔÀí±Ê¼Ç£¨¶þ£©--8086½á¹¹ Ò»¡¢8086CPUÄÚ²¿½á¹¹
¶Î¼Ä´æÆ÷£ºCS¡¢DS¡¢SS¡¢ES¡¢IP£¨Ö¸ÁîÖ¸Õ룬´æ·ÅÏÂÒ»ÌõÖ±ÏßÖ¸ÁîÔÚ´æ´¢µ¥ÔªÄڵĵØÖ·£¬Ã¿È¡Ò»¸ö×Ö½ÚµÄÖ¸Áî´úÂë»á×Ô¶¯¼Ó1£©
¶þ¡¢8086¼Ä´æÆ÷½á¹¹
AX£º16λ¼Ä´æÆ÷£¬·ÖΪ2¸ö8λAH¡¢AL ×÷Óãº1¡¢Í¨ÓüĴæÆ÷£¬Êý¾ÝµÄ´æÈ¡
2¡¢ÓëDXÒ»Æð¹¹³ÉË«×Ö×÷ΪµÍ16룬Ôڳ˷¨ºÍ³ý·¨Ö¸ÁîÖÐʹÓà 3¡¢×÷ΪÀÛ¼ÓÆ÷
BX£º16λ¼Ä´æÆ÷£¬·ÖΪ2¸ö8λBH¡¢BL ×÷Óãº1¡¢Í¨ÓüĴæÆ÷
2¡¢×÷Ϊ·ÃÎÊ´æ´¢Æ÷µÄµØÖ·Ö¸Õë
CX£º16λ¼Ä´æÆ÷£¬·ÖΪ2¸ö8λCH¡¢CL
×÷Óãº1¡¢Í¨ÓüĴæÆ÷ 2¡¢ÔÚÑ»·Ö¸ÁîÖÐ×÷Ϊѻ·¼ÆÊýÆ÷¡¢Ñ»·Ö¸Áî¡£ÔÚ´®²Ù×÷Ö¸ÁîÖд«ËͼÆÊýÆ÷¡£ DX£º16λ¼Ä´æÆ÷£¬·ÖΪ2¸ö8λDH¡¢DL ×÷Óãº1¡¢Í¨ÓüĴæÆ÷
2¡¢ÓëAXÒ»Æð¹¹³ÉË«×Ö×÷Ϊ¸ß16룬Ôڳ˷¨¡¢³ý·¨Ö¸ÁîÖÐʹÓà 3¡¢×÷ΪÊäÈë¡¢Êä³öµØÖ·£¬²»¿ÉÓÐ×÷Ϊ´æ´¢Æ÷µØÖ· BP£º16λ¼Ä´æÆ÷
×÷Óãº1¡¢Í¨ÓüĴæÆ÷ 2¡¢·ÃÎÊ´æ´¢Æ÷µÄµØÖ·Ö¸Õë
SP£º16λ¶ÑÕ»Ö¸Õ룬ֻÏë¶ÑÕ»µÄÕ»¶¥£¬¿É×÷Ϊ·ÃÎÊ´æ´¢Æ÷µØÖ· SI¡¢DI£º16λ¼Ä´æÆ÷ ×÷Óãº1¡¢Í¨ÓüĴæÆ÷
2¡¢¿ÉÒÔ×÷Ϊ·ÃÎÊ´æ´¢Æ÷µÄµØÖ· 3¡¢ÔÚ±äַѰַʱ×÷Ϊ±äÖ·¼Ä´æÆ÷
4¡¢ÔÚ´®²Ù×÷ʱ£¬SI×÷ΪԴָÕ룬DI×÷ΪĿµÄÖ¸Õë
FLAGS(psw)£º³ÌÐò״̬×Ö£¬16λ¼Ä´æÆ÷£¬ÓÖ³ÆFL¡¢FR Èý¡¢8086CPUÒý½Å½éÉÜ£¨P28£©
ËÄ¡¢8086´æ´¢Æ÷µÄ×éÖ¯½á¹¹£¨P31£© Æ«ÒÆµØÖ·EA(ÓÐЧµØÖ·)16λ BX¡¢BP¡¢SI¡¢DI¡¢SP¡¢IP Ö±½ÓµØÖ· ÏÞÖÆ£º¶ÎÆðÊÖµØÖ·µÄµÍËÄλ±ØÐëΪ0 ÎïÀíµØÖ·=¶Î»ùÖ·¡Á16+EA(ÓÐЧµØÖ·) ÎïÀíµØÖ·<-->´æ´¢µ¥Ôª
0300H:0100H
PA = 0300H*16 + 0100H = 03000H + 0100H = 03100H ΢»úÔÀí±Ê¼Ç£¨Èý£©--Ѱַ·½Ê½ Ѱַ·½Ê½
µÃµ½²Ù×÷Êý»ò²Ù×÷ÊýµÄµØÖ·µÄ·½·¨
Ô´²Ù×÷ÊýѰַ£¬1-7£¬7ÖÖ£»Ä¿µÄ²Ù×÷ÊýѰַ£¬2-7£¬6ÖÖ 1¡¢Á¢¼´Ñ°Ö·
Ö¸ÁîÖÐÖ±½Ó¸ø³öÁ˲μӲÙ×÷µÄ²Ù×÷Êý MOV AX,3680(80·ÅÈëAL£¬36·ÅÈëAH)
ADD BL,30H
ÓÃBLµÄÄÚÈݼÓÉÏ30HµÄ½á¹ûËÍÈëBL 2¡¢¼Ä´æÆ÷Ѱַ
²Ù×÷ÊýÔÚCPUÄÚ²¿µÄijһ¸ö¼Ä´æÆ÷
16²Ù×÷Êý£¬¼Ä´æÆ÷¿ÉÒÔÊÇAX,BX,CX,DX,SI,DI,SP,BPµÈ 8²Ù×÷Êý£¬¼Ä´æÆ÷¿ÉÒÔÊÇAH,AL.BH,BL,CH,CL,DH,DL 3¡¢Ö±½ÓѰַ
Ö¸ÁîÖÐÖ±½Ó¸ø³öÁ˲Ù×÷ÊýµÄÓÐЧµØÖ·EA(16λ) δÉùÃ÷´æ·ÅÄÄÒ»¶ÎÔòĬÈÏΪÊý¾Ý¶Î¼Ä´æÆ÷DS ²Ù×÷ÊýµÄÎïÀíµØÖ·=16*DS+EA
Ö¸ÁîÖÐÓÐЧµØÖ·ÉϱØÐë¼ÓÒ»¸ö·½À¨ºÅ£¬ÒÔ±ãÓëÁ¢¼´ÊýÏàÇø±ð MOV AX£¬[200H] 4¡¢¼Ä´æÆ÷¼ä½ÓѰַ
²Ù×÷ÊýµÄµØÖ·ÔÚBX¡¢BP¡¢SI¡¢DI¡¢SP ¶Î»ùÖ·£ºBX(ȱʡ)¡¢SI¡¢DI¡¢DS¡¢BP¡¢SP
MOV BX,[SI]
5¡¢Ïà¶Ô¼Ä´æÆ÷Ѱַ
EA = ( BX , BP , SI , DI ) + Ö¸Áî¸ø³öµÄ8λ»ò16Î»Î»ÒÆÁ¿ MOV AX [BX+5] = MOV AX 5[BX]
6¡¢»ùÖ·±äַѰַ·½Ê½
EA = ( BX , BP ) + ( SI, DI) BXȱʡDS , BPȱʡSS 7¡¢Ïà¶Ô»ùÖ·±äַѰַ·½Ê½
EA = £¨ BX , BP £©+ ( SI , DI ) + 8λ»ò16Î»Î»ÒÆÁ¿ ×¢£º¼ÆËãEA£¬½á¹ûÒ»¶¨ÊÇ16λ ¼ÆËãPA£¬½á¹ûÒ»¶¨ÊÇ20λ
΢»úÔÀí±Ê¼Ç(ËÄ) --Êý¾Ý´«ËÍÖ¸Áî Ò»¡¢ MOV MOVÄ¿µÄ£¬Ô´
½«Ô´µÄÄÚÈÝË͵½Ä¿µÄÖÐ
MOV [AX],0 //8λ´«ËÍ»ò16λ´«ËÍ MOV byte ptr [BX],0 //8λ´«ËÍ MOV word ptr [BX],0 //16λ´«ËÍ
ͨÓüĴæÆ÷¡¢´æ´¢Æ÷<-->Êý¼Ä´æÆ÷ [CS²»¿É×÷ΪĿµÄ] ͨÓüĴæÆ÷<-->´æ´¢Æ÷
ͨÓüĴæÆ÷<-->ͨÓô洢Æ÷ ×¢£º
1¡¢ CS¡¢IPºÍÁ¢¼´Êý²»ÄÜ×÷ΪĿµÄ²Ù×÷Êý 2¡¢²Ù×÷ÊýµÄ³ß´ç±ØÐëÒ»ÖÂ
3¡¢Á½¸ö²Ù×÷Êý²»ÄÜͬʱλ´æ´¢Æ÷²Ù×÷Êý£¨´®²Ù×÷³ýÍ⣩ ¶þ¡¢¶ÑÕ»²Ù×÷Ö¸Áî
¶ÑÕ»£º¼ÇѰ·µ»ØµØÖ·£¬°´ÕÕºó½øÏȳöµÄÔÔò×éÖ¯£¬±£´æµØÖ·»òÊý¾ÝµÄ²¼¾Ö Ó²¼þ¶ÑÕ»£º×¨ÃŵIJ¼¾Ö£¬Ò»°ãÔÚCPUÄÚ²¿£¬Ëٶȿ죬ÈÝÁ¿Ð¡£» ÔÚ´æ´¢Æ÷Öпª·¢Ò»¿éÇøÓò×÷Ϊ¶ÑջʹÓã¬ËÙ¶ÈÂý 8086¶ÑÕ»Éú³É·½Ê½
ÏòÏÂÉú³É£º´ÓµØÖ·¸ßµÄµØ·½ÏòµØÖ·µÍµÄµØ·½Ê¹Óà ÏòÉÏÉú³É£º´ÓµØÖ·µÍµÄµØ·½ÏòµØÖ·¸ßµÄµØ·½Ê¹Óà ²Ù×÷·½Ê½£º
°´×Ö½Ú£¨8051£© °´×Ö£¨8086£© °´Ë«×Ö£º
¶ÑÕ»Ö¸ÕëSP(16λ)
Ö¸ÏòÕ»¶¥£¨×îºóÒ»¸öÈëÕ»Êý¾Ý´æ·Åµ¥Ôª£© ÈëÕ»£ºPUSH Ô´ ³öÕ»£ºPOP Ä¿µÄ Èý¡¢½»»»Ö¸Áî XGHG op1,op2
op1,op2²»¿ÉͬʱΪ´æ´¢Æ÷²Ù×÷Êý£¬ÈκÎÒ»¸ö¶¼²»ÄÜΪ¶Î¼Ä´æÆ÷²Ù×÷Êý ËÄ¡¢»»ÂëÖ¸Áî XLAT (±íÃû) µÚ6 / 10Ò³
Îå¡¢µØÖ·´«ËÍÖ¸Áî 1¡¢LEA Ä¿µÄ£¬Ô´
½«Ô´µÄÓÐЧµØÖ·£¨EA£©Ë͵½Ä¿µÄÖÐ 2¡¢LDS ¼Ä´æÆ÷Ãû£¬´æ´¢Æ÷
´ÓÔ´²Ù×÷ÊýÖ¸¶¨µÄ´æ´¢µ¥ÔªÖÐÈ¡³ö4×Ö½ÚµÄÁ¬ÐøµØÖ·£¬Ç°2¸ö×Ö½ÚËÍÈëÄ¿µÄ¼Ä´æÆ÷£¬ºóÁ½¸ö×Ö½ÚËÍÈëDSÖÐ
Áù¡¢±êÖ¾´«ËÍ
1¡¢LAHF ½«pswÖеÍ8λËÍÈëAHÖÐ 2¡¢SAHF ½«AHÄÚÈÝ´æÈëpswÖеÍ8λ 3¡¢pushF½«pswËÍÈëÕ»ÖÐ 4¡¢popF±êÖ¾³öÕ» Æß¡¢ÊäÈëÊä³öÖ¸Áî IN/OUT
΢»úÔÀí±Ê¼Ç£¨Î壩 -- ËãÊýÔËËãÖ¸Áî Ò»¡¢¼Ó·¨Ö¸Á
£¨Ò»£©ADD£º²»´ø½øÎ»Î»µÄ¶þ½øÖƼӷ¨Ö¸Áî
ADD Ä¿µÄ£¬Ô´ //Á½Õß¾ù²»ÄÜΪ¶Î¼Ä´æÆ÷£¬Ä¿µÄ²»ÄÜΪÁ¢¼´Êý ¹¦ÄÜ£ºÄ¿µÄ+Ô´-->Ä¿µÄ
½«CFÇåÁã ADD AL,0
£¨¶þ£©ADC£º´ø½øÎ»µÄ¶þ½øÖƼӷ¨Ö¸Áî ADC Ä¿µÄ£¬Ô´ //Ó°Ïìpsw ¹¦ÄÜ£ºÄ¿µÄ+Ô´+CF-->Ä¿µÄ £¨Èý£©INC£º¼Ó1Ö¸Áî
INC Ä¿µÄ£¨Ô´£© //Ó°Ïìpsw,²»Ó°ÏìCF ¹¦ÄÜ£ºÄ¿µÄ+1-->Ä¿µÄ £¨ËÄ£©BCD¼Ó·¨µ÷ÕûÖ¸Áî
1¡¢ DAA£º×éºÏµÄBCDÂë¼Ó·¨µ÷ÕûÖ¸Áî
¹¦ÄÜ£ºALµÄµÍËÄλ>9»òAF=1,AL+06H-->AL£»·ñÔòʲô¶¼²»×ö ALµÄ¸ßËÄλ>9»òCF=1,AL+06H-->AL£»·ñÔò²»¶¯×÷ ×¢£ºDAAÖ»Äܵ÷ÕûAL£¬²»Äܵ÷ÕûAH¡£ 2¡¢ AAA£º·ÇѹËõµÄ¼Ó·¨µ÷ÕûÖ¸Áî
¹¦ÄÜ£º¸ù¾Ýµ±Ç°±êÖ¾£¬¶ÔALÄÚÈݽøÐе÷Õû ALµÄµÍËÄλ<=9ÇÒAF=0,Ö»½«ALµÄ¸ßËÄλÇåÁã ALµÄµÍËÄλ>9»òAF=1£¨²»»áͬʱ²úÉú£©£¬AL+06H-->AL,AH+1-->AH µÚ7 / 10Ò³ ¶þ¡¢¼õ·¨Ö¸Áî
£¨Ò»£©SUB£º²»´ø½øÎ»µÄ¶þ½øÖƼõ·¨Ö¸Áî SUB Ä¿µÄ£¬Ô´
¹¦ÄÜ£ºÄ¿µÄ-Ô´-->Ä¿µÄ
£¨¶þ£©SBB£º´ø½øÎ»µÄ¶þ½øÖƼõ·¨Ö¸Áî SBB Ä¿µÄ£¬Ô´ //Ó°Ïìpsw ¹¦ÄÜ£ºÄ¿µÄ-Ô´-CF-->Ä¿µÄ £¨Èý£©DEC£º¼õ1Ö¸Áî
DEC Ä¿µÄ //Ó°Ïìpsw£¬²»Ó°ÏìCF ¹¦ÄÜ£ºÄ¿µÄ-1-->Ä¿µÄ £¨ËÄ£©NEG£ºÇó²¹Ö¸Áî NEG Ä¿µÄ //Ó°Ïìpsw ¹¦ÄÜ£º0-Ä¿µÄ-->Ä¿µÄ £¨Î壩CMP£º±È½ÏÖ¸Áî
CMP op1,op2 //op1-op2,Ó°Ïìpsw£¨Í¬SUB£©
ÓÃ;£º±È½ÏÁ½ÊýÊÇ·ñÏàµÈ£ºZF=1,op1=op2£»ZF=0,op1!=op2 ±È½ÏÁ½¸öÎÞ·ûºÅÊý´óС£ºCF=1,op1=op2£»CF=0&ZF=0,op1>op2; ±È½ÏÁ½¸ö´ø·ûºÅÊý´óС£ºOF¨’SF=0,op1>=op2; OF¨’SF=1,op1 (OF¨’SF=0)&ZF=0,op1>op2 £¨Áù£©DAS£ºÑ¹ËõBCDÂëµ÷Õû £¨Æß£©AAS£º·ÇѹËõBCDÂëµ÷Õû Èý¡¢³Ë·¨Ö¸Áî £¨Ò»£©MUL£ºÎÞ·ûºÅÊý³Ë·¨Ö¸Áî MUL Ô´ //Ô´²»ÄÜΪÁ¢¼´Êý£¬¿ÉÒÔÊÇ8λ¶þ½øÖÆÊý£¬16λ¶þ½øÖÆÊý ¹¦ÄÜ£ºÈôԴΪ8룬AL*Ô´-->AX£» ÈôԴΪ16룬AL*Ô´-->DX,AX