| ²é¿´: 686 | »Ø¸´: 3 | |||
| µ±Ç°Ö÷ÌâÒѾ´æµµ¡£ | |||
kiyeerÌú³æ (³õÈëÎÄ̳)
|
[½»Á÷]
»ã±àÖ¸ÁîÓë»úÆ÷ÂëµÄÏ໥ת»»
|
||
|
»ã±àÖ¸ÁîÓë»úÆ÷ÂëµÄÏ໥ת»» »úÆ÷ÓïÑÔÎÒÃÇÖ»ÒªÖØµãÀí½âһϼ¸¸ö¸ÅÄ 1. »úÆ÷ÓïÑÔÖ¸ÁîÓвÙ×÷Âë(OP)ºÍµØÖ·ÂëÁ½²¿·Ö×é³É |_____________OP_______________|__d__|__w__| |_____________OP_______________|__s__|__w__| <--´Ë¸ñʽÓÃÓÚÁ¢¼´Ñ°Ö··½Ê½ ÔÚ¶àÊý²Ù×÷ÂëÖУ¬³£Ê¹ÓÃijЩλÀ´Ö¸Ê¾Ä³Ð©ÐÅÏ¢£º ÈçͼÉϽṹÀïµÄ£º w£½1 ʱ ¶Ô×ÖÀ´²Ù×÷ w£½0 ʱ ¶Ô×Ö½ÚÀ´²Ù×÷ dÖµÔÚË«²Ù×÷ÊýÖ¸ÁîÖвÅÓÐЧ µ± d£½1 ʱ ÓÐÇÒÖ»ÓÐÒ»¸ö¼Ä´æÆ÷ÓÃÓÚÄ¿µÄ²Ù×÷Êý d£½0 ʱ ÓÐÇÒÖ»ÓÐÒ»¸ö¼Ä´æÆ÷ÓÃÓÚÔ´²Ù×÷Êý s£½1 ʱ Á¢¼´ÊýΪ8룬µ«ÒªÇóÀ©Õ¹³É16λÊý s£½0 ʱ µ±Ö¸Áî×÷×Ö½Ú²Ù×÷/ÓÐ16λÁ¢¼´Êý ÓÉÓÚ»ã±àµÄÖ¸Áî¸ñʽºÜ¶à£¬ÕâÀïÎÒÖ»×÷һЩ»ù±¾Çé¿ö½éÉÜ£¬±ØÒªÊ±¶ÁÕß¿ÉÒÔÏÂÔØ/²éÔÄ80x86»ã±àСվhttp://www.x86asm.comÌṩµÄOPCODESÊÖ²áÀ´²éÔÄ¡£ 2. Ѱַ·½Ê½µÄ»úÆ÷ÓïÑÔ±íʾ£º | mod | reg | r/m | |_____|_____|_____|_____|_____|_____|_____| reg ±íʾ¼Ä´æÆ÷·½Ê½£¬ÔÚ²»°üÀ¨Á¢¼´ÊýµÄË«²Ù×÷ÊýÖ¸ÁîµÄÇé¿öÏ£¬¹æ¶¨±ØÐëÓÐÒ»¸ö²Ù×÷ÊýÔڼĴæÆ÷ÖУ¬¸Ã¼Ä´æÆ÷ÓÉreg×Ö¶ÎÖ¸¶¨£¬²¢Óë²Ù×÷Âë×Ö½ÚÖеÄwλÏà×éºÏÈ·¶¨µÄ¼Ä´æÆ÷ mod×Ö¶ÎÓër/m(register/memory)×ֶνáºÏÔÚÒ»ÆðÈ·¶¨ÁíÒ»¸ö²Ù×÷ÊýµÄѰַ·½Ê½ÏÖÔÚÄãÃÇÏÂÔØÁË80x86»ã±àСվ(http://www.x86asm.com)ÌṩµÄOPCODES ÊÖ²áÁËÂ𣿠ÏÂÔØºÃÁË£¬Çë½âѹºó´ò¿ªÀïÃæµÄ£ºopcodes.html Îļþ£¬È»ºóÊìϤÀïÃæµÄ±í¸ñ£º ÏÖÔÚÊìϤ¼òµ¥µÄ£º ______________________________________________________________________________ ±í1 000 : AL : AX : EAX 001 : CL : CX : ECX 010 : DL : DX : EDX 011 : BL : BX : EBX 100 : AH : SP : ESP 101 : CH : BP : EBP 110 : DH : SI : ESI 111 : BH : DI : EDI ______________________________________________________________________________ ±í2 000 : EAX 001 : ECX 010 : EDX 011 : EBX 100 : No Index 101 : EBP 110 : ESI 111 : EDI ______________________________________________________________________________ ±í3 w£½1 000 : DS:[BX+SI] 001 : DS:[BX+DI] 010 : SS:[BP+SI] 011 : SS:[BP+DI] BX 100 : DS:[SI] 101 : DS:[DI] 110 : SS:[BP] 111 : DS:[BX] ______________________________________________________________________________ ±í4 oo : Function 00 : If mmm = 110, then a displacement follows the operation; otherwise, no displacement is used 01 : An 8-bit signed displacement follows the opcode 10 : A 16-bit signed displacement follows the opcode 11 : mmm specifies a register, instead of an addressing mode ______________________________________________________________________________ ÉÏÃæµÄ±í£¬Äã¶¼¿´Ã÷°×ÁËÂ𣿠ÏÖÔÚÎҾͽÌÄãÃÇÈçºÎÀûÓÃÕâÑùµÄ±í¸ñÀ´°Ñ»ã±àÖ¸Áî·Òë»úÆ÷Âë 3.Ö¸Áî¸ñʽ¼ò½é 8086ËùÓõÄ16λָÁî¸ñʽ£º ________ _____________ ________ ________ |²Ù×÷Âë| + |mod-reg-r/m| + |Î»ÒÆÁ¿| + |Á¢¼´Êý| 1~2×Ö½Ú 0~1×Ö½Ú 0~2×Ö½Ú 0~2×Ö½Ú OK!ÒÔÉϾÍÊÇ»ù±¾ÖªÊ¶£¬ÏÂÃæÎÒÃÇÀ´Êµ¼ù°É£º ¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª ÎÊÌ⣺ MOV AX,1234H ¶ÔÓ¦µÄ»úÆ÷ÂëΪ£ºB83412 MOV EBX,0 ¶ÔÓ¦µÄ»úÆ÷ÂëΪ£º66BB00000000 MOV CL,55H ¶ÔÓ¦µÄ»úÆ÷ÂëΪ: B155 MOV AX,BX ¶ÔÓ¦µÄ»úÆ÷ÂëΪ£º8BC3 ÎÒÔÚÎÊһϣ¬»úÆ÷ÂëµÄÊý¾Ý¸ñʽÊÇʲô£¿ ºÃÏñÊÇ »úÆ÷Ö¸Áî+²Ù×÷Êý(¸ßλ´æ·ÅÔÚµØÖ·¸ß룬µÍλ´æ·ÅÔÚµØÖ·µÍλ)£¬µ«ÊÇÇ°ÃæMOV AX,Ôõô¾Í±ä³ÉÁËB8,Ū²»Ã÷°×£¬ÇëÖ¸½Ì¡£ PS: ÉÏÃæµÄÌâÄ¿ÊÇÒ»¸öÍøÓÑÎʵģ¬ÏÖÔÚÎÒÀ´Êµ¼ùÒ»±é¸øÄãÃÇ¿´¡£ ¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª Ö¸Áî1 £> MOV AX,1234H ¶ÔÓ¦µÄ»úÆ÷ÂëΪ£ºB83412 ½â·¨£º Åжϣ> Õâ¸öÊÇ8086»ã±à16λ»ã±àÖ¸Áî¸ñʽ£¬²¢ÇÒÊÇÁ¢¼´Ñ°Ö··½Ê½ ²é±í£> ´ò¿ªopcodes.htmlÎļþ£¬ÕÒµ½±êÌâΪ¡°Main Instructions¡±£¬µ¥»÷¡°M¡±×Öĸ£¬È»ºó¶ÔÓ¦²é¿´ ¡°MOV Reg,Imm¡±¸ñʽµÄ¡°OpCode¡±ÏîΪ£º1011wrrr ÔÙÅжϣ> ÓÉÓڼĴæÆ÷ÊÇAX, Á¢¼´ÊýÊÇ1234H£¬Ã÷ÏÔÊÇ¡°¶Ô×Ö²Ù×÷¡±£¬ËùÒÔw£½1 Ôڲ鿴±¾ÎÄÕÂÉÏÃæµÄ¡°±í1¡±£¬¶ÔÓ¦µÄ²éµ½rrrµÄֵΪ000 ×éºÏ½á¹û£> w£½1 rrr£½000 1011wrrr£½1011 1000B £>B8H ¸ù¾Ý¡° 3.Ö¸Áî¸ñʽ¼ò½é¡± £> B8H + |Á¢¼´Êý(µÍλÔÚǰ¸ßλÔÚºó)|£½ B83412H PS: "+" ·ûºÅ²»Îª¡°¼ÓºÅ¡± ºÃÁË£¬ÒѾ½âÍêµÚÒ»ÌâÁË£¬»úÆ÷ÂëΪ B83412H ¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª Ö¸Áî4 £> MOV AX,BX ¶ÔÓ¦µÄ»úÆ÷ÂëΪ£º8BC3 ½â·¨£º Åжϣ> Õâ¸öÊÇ8086»ã±à16λ»ã±àÖ¸Áî¸ñʽ£¬²¢ÇÒÊǼĴæÆ÷Ѱַ·½Ê½ ²é±í£> ´ò¿ªopcodes.htmlÎļþ£¬ÕÒµ½±êÌâΪ¡°Main Instructions¡±£¬µ¥»÷¡°M ¡±×Öĸ£¬È»ºó¶ÔÓ¦²é¿´ ¡°MOV Reg,Reg¡±¸ñʽµÄ¡°OpCode¡±ÏîΪ£º1000101woorrrmmm ÔÙÅжϣ> ÓÉÓڼĴæÆ÷ÊÇAX, BX Ã÷ÏÔÊÇ¡°¶Ô×Ö²Ù×÷¡±£¬ËùÒÔw£½1 Ôڲ鿴±¾ÎÄÕÂÉÏÃæµÄ¡°±í4¡±£¬¶ÔÓ¦²éµ½oo£½11 ÒòΪÊǼĴæÆ÷Ѱַ·½Ê½ Ôڲ鿴±¾ÎÄÕÂÉÏÃæµÄ¡°±í1¡±£¬¶ÔÓ¦²éµ½rrrµÄֵΪ000 £¬ÒòΪµ±Á½¸ö²Ù ×÷Êý¶¼ÊǼĴæÆ÷£¬ÄÇôһ°ãÒªÒÔÄ¿µÄ²Ù×÷ÊýΪ׼ Ôڲ鿴±¾ÎÄÕÂÉÏÃæµÄ¡°±í3¡±, ¶ÔÓ¦²éµ½mmmµÄֵΪ011 £¬ÒòΪµ±Á½¸ö²Ù×÷Êý¶¼ÊǼĴæÆ÷£¬ÄÇôһ°ãÒªÒÔÔ´²Ù×÷ÊýΪ׼ ×éºÏ½á¹û£> w£½1 oo£½11 rrr£½000 mmm£½011 1000101woorrrmmm£½1000 1011 1100 0011B ->8BC3H ºÃÁË£¬ÒѾ½âÍêµÚ¶þÌâÁË£¬»úÆ÷ÂëΪ8BC3H ¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª ºÇºÇ£¬²»´í°É£¬ºÜ¼òµ¥°É£¬ÓÐÁË80X86 OPCODES ²éѯ±íÒ»Çж¼ÊÇÄÇô¼òµ¥£¬Èç¹û»¹ÓÐʲôÎÊÌ⣬´ó¼Ò¶¼À´ÕâÀïÌáÎÊ£¡ Ê£Ïµģº Ö¸Áî2 £> MOV EBX,0 ¶ÔÓ¦µÄ»úÆ÷ÂëΪ£º66BB00000000 Ö¸Áî3 £> MOV CL,55H ¶ÔÓ¦µÄ»úÆ÷ÂëΪ: B155 ´ó¼ÒÀ´Á·Á·ÊÖ£¬×¢ÒâÖ¸Áî2 ÐèÒªÓõ½32λָÁî¸ñʽ£¬Çë²éÔÄÏà¹ØµÄ80x86»ã±àÓïÑÔÊé¼®µÄ»úÆ÷ÓïÑÔ²¿·Ö£¬Ó¦¸ÃÓнâÊ͵ġ£ Ö¸Áî2µÄ½â·¨£¬Çë´ó¼ÒµÈ´ý£¬»òÕß´ó¼ÒÑо¿Ò»Ï£¬°Ñ½â·¨Ìù³öÀ´£¬¸ø´ó¼Ò²Î¿¼Å¶£¡ [ Last edited by »ÃÓ°ÎÞºÛ on 2006-11-7 at 07:45 ] |
» ²ÂÄãϲ»¶
338Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
11408£¬Ñ§Ë¶276Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
²ÄÁÏ»¯¹¤µ÷¼Á
ÒѾÓÐ16È˻ظ´
267Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
µ÷¼Á
ÒѾÓÐ6È˻ظ´
290·Ö²ÄÁϹ¤³Ì085601Çóµ÷¼Á Êý¶þÓ¢Ò»
ÒѾÓÐ9È˻ظ´
085600 Ó¢Ò»Êý¶þ272Çóµ÷¼Á
ÒѾÓÐ18È˻ظ´
Çóµ÷¼Á
ÒѾÓÐ13È˻ظ´
µ÷¼Á²ÄÁÏѧ˶
ÒѾÓÐ3È˻ظ´
085602»¯Ñ§¹¤³Ì350£¬µ÷¼Á£¬ÓÐûÓÐ211µÄ
ÒѾÓÐ7È˻ظ´
sbttmxk
½ð³æ (ÖøÃûдÊÖ)
- Ó¦Öú: 0 (Ó×¶ùÔ°)
- ¹ó±ö: 0.45
- ½ð±Ò: 886.8
- Ìû×Ó: 2509
- ÔÚÏß:
- ³æºÅ: 158329
- ×¢²á: 2006-01-06
- ÐÔ±ð: GG

2Â¥2006-02-26 11:12:05
3Â¥2006-02-26 22:59:55
4Â¥2006-02-27 16:08:00













»Ø¸´´ËÂ¥
30