²é¿´: 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 rrr : W=0 : W=1 : reg32
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 rrr : Index Register
000 : EAX
001 : ECX
010 : EDX
011 : EBX
100 : No Index
101 : EBP
110 : ESI
111 : EDI
______________________________________________________________________________
±í3 mmm : Function 11
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 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sbttmxk

½ð³æ (ÖøÃûдÊÖ)

1

ÐÁ¿àÁË
Do one thing, do it well. http://www.nanost.net/bbs/index.php
2Â¥2006-02-26 11:12:05
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

wss71

гæ (ÕýʽдÊÖ)

3Â¥2006-02-26 22:59:55
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

flybooter

1

ѧϰÖÐ
4Â¥2006-02-27 16:08:00
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ kiyeer µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 0856²ÄÁÏÓ뻯¹¤£¬270Çóµ÷¼Á +11 YXCT 2026-03-01 13/650 2026-03-02 21:38 by sunny81
[¿¼ÑÐ] 0856²ÄÁÏÇóµ÷¼Á +12 hyf hyf hyf 2026-02-28 13/650 2026-03-02 20:19 by hypershenger
[¿¼ÑÐ] Öйú¿ÆÑ§¼¼Êõ´óѧ²ÄÁÏÓ뻯¹¤281Çóµ÷¼Á£¬ÓпÆÑкͻñ½±¾­Àú +5 wsxw 2026-03-02 5/250 2026-03-02 20:12 by hypershenger
[¿¼ÑÐ] ²ÄÁϸ´ÊÔµ÷¼Á +5 ѧ²ÄÁϵĵã 2026-03-01 6/300 2026-03-02 20:01 by hypershenger
[¿¼ÑÐ] 0805×Ü·Ö292£¬Çóµ÷¼Á +10 »ÃÏëÖ®éä 2026-03-01 10/500 2026-03-02 19:51 by zhukairuo
[¿¼ÑÐ] ²ÄÁÏ085601µ÷¼Á +5 ¶à¶à×Ó. 2026-03-02 5/250 2026-03-02 19:15 by zhukairuo
[¿¼ÑÐ] 268Çóµ÷¼Á +3 ºÃÔËÁ¬Ã಻¾ø 2026-03-02 3/150 2026-03-02 19:05 by zhukairuo
[¿¼ÑÐ] Ò»Ö¾Ô¸¶«±±´óѧ»¯Ñ§314·ÖÇóµ÷¼Á +3 lr1212.. 2026-03-02 3/150 2026-03-02 17:36 by yeahyou
[¿¼ÑÐ] Ò»Ö¾Ô¸¶«±±´óѧ²ÄÁÏר˶328£¬Çóµ÷¼Á +3 shs1083 2026-03-02 3/150 2026-03-02 17:27 by houyaoxu
[¿¼ÑÐ] 291 Çóµ÷¼Á +3 »¯¹¤2026½ì±ÏÒµÉ 2026-03-02 3/150 2026-03-02 12:55 by houyaoxu
[¿¼ÑÐ] ¹þ¹¤´ó¼ÆËã»úÁõ„ÂÍŶÓÕÐÉú +4 hit_aiot 2026-03-01 6/300 2026-03-02 11:53 by Ò»ÉùÎʺÃ
[¿¼ÑÐ] ²ÄÁÏѧ˶318Çóµ÷¼Á +14 February_Feb 2026-03-01 16/800 2026-03-02 11:17 by yuchj
[¿¼ÑÐ] 274Çóµ÷¼Á +3 cgyzqwn 2026-03-01 7/350 2026-03-02 10:38 by lature00
[¿¼ÑÐ] ²ÄÁÏÀàÇóµ÷¼Á +11 wana_kiko 2026-02-28 14/700 2026-03-02 08:46 by ´ÏÃ÷µÄ´óËÉÊó
[¿¼ÑÐ] 298Çóµ÷¼Á +6 axyz3 2026-02-28 6/300 2026-03-01 19:00 by 18137688336
[¿¼ÑÐ] 0856²ÄÁÏÇóµ÷¼Á +4 ÂéÀ±öÏÓã 2026-02-28 4/200 2026-03-01 16:51 by caszguilin
[¿¼ÑÐ] 295¸´ÊÔµ÷¼Á +3 ¼òľChuFront 2026-03-01 3/150 2026-03-01 14:27 by zzxw520th
[¿¼ÑÐ] µ÷¼Á +3 ¼òľChuFront 2026-02-28 3/150 2026-03-01 11:46 by ÍõΰҪÉϰ¶°¡
[¿¼ÑÐ] ѰÕÒµ÷¼Á +4 LYidhsjabdj 2026-02-28 4/200 2026-03-01 10:56 by sunny81
[ÂÛÎÄͶ¸å] Optics lettersͶ¸å±»¾ÜÇóÖú 30+3 luckyry 2026-02-26 4/200 2026-03-01 09:06 by babero
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û