²é¿´: 692  |  »Ø¸´: 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 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 0703»¯Ñ§µ÷¼Á£¬Çóµ¼Ê¦ÊÕ +7 ÌìÌìºÃÔËÀ´Éϰ¶° 2026-03-24 7/350 2026-03-24 20:26 by peike
[¿¼ÑÐ] ¡¾¿¼Ñе÷¼Á¡¿»¯Ñ§×¨Òµ 281·Ö£¬Ò»Ö¾Ô¸ËÄ´¨´óѧ£¬³ÏÐÄÇóµ÷¼Á +15 ³Ô³Ô³Ô²ÅÓÐÒâÒå 2026-03-19 16/800 2026-03-24 19:51 by ÁËÁËÁËÁË¡£¡£
[¿¼ÑÐ] ²ÄÁÏר˶ÕÒµ÷¼Á +5 ¹þ¹þ¹þºðºðºð¹þ 2026-03-23 5/250 2026-03-24 19:07 by ÁËÁËÁËÁË¡£¡£
[¿¼ÑÐ] 291Çóµ÷¼Á +3 HanBeiNingZC 2026-03-24 3/150 2026-03-24 16:34 by barlinike
[¿¼ÑÐ] ²ÄÁÏרҵÇóµ÷¼Á +11 hanamiko 2026-03-18 11/550 2026-03-23 23:12 by peike
[¿¼ÑÐ] 361Çóµ÷¼Á +3 Glack 2026-03-22 3/150 2026-03-23 22:03 by fuyu_
[¿¼ÑÐ] 384Çóµ÷¼Á +3 ×Óϵ²© 2026-03-22 6/300 2026-03-23 21:45 by ×Óϵ²©
[¿¼ÑÐ] 336Çóµ÷¼Á +4 ÊÕµ½VS 2026-03-20 4/200 2026-03-23 19:02 by macy2011
[¿¼ÑÐ] ±±¿Æ281ѧ˶²ÄÁÏÇóµ÷¼Á +8 tcxiaoxx 2026-03-20 9/450 2026-03-23 12:16 by tcxiaoxx
[¿¼ÑÐ] 333Çóµ÷¼Á +6 87639 2026-03-21 10/500 2026-03-23 10:41 by Iveryant
[¿¼ÑÐ] 324Çóµ÷¼Á +6 luckyѽѽѽѼ 2026-03-20 6/300 2026-03-22 16:01 by ColorlessPI
[¿¼ÑÐ] 319Çóµ÷¼Á +4 СÁ¦Æøçæçæ 2026-03-20 4/200 2026-03-22 15:53 by ColorlessPI
[¿¼ÑÐ] Ò»Ö¾Ô¸±±¾©»¯¹¤´óѧ070300 ѧ˶336Çóµ÷¼Á +5 vvÃÔ 2026-03-21 8/400 2026-03-22 14:20 by ColorlessPI
[¿¼ÑÐ] 354Çóµ÷¼Á +7 Tyoumou 2026-03-18 10/500 2026-03-22 11:11 by ÈËÀ´Ê¢
[¿¼ÑÐ] 336Çóµ÷¼Á +5 rmc8866 2026-03-21 5/250 2026-03-21 17:24 by ѧԱ8dgXkO
[¿¼ÑÐ] Ò»Ö¾Ô¸ËÕÖÝ´óѧ²ÄÁÏÇóµ÷¼Á£¬×Ü·Ö315£¨Ó¢Ò»£© +5 sbdksD 2026-03-19 5/250 2026-03-20 22:10 by luoyongfeng
[¿¼ÑÐ] ÖÐÄÏ´óѧ»¯Ñ§Ñ§Ë¶337Çóµ÷¼Á +3 niko- 2026-03-19 6/300 2026-03-20 21:58 by luoyongfeng
[¿¼ÑÐ] 0703»¯Ñ§µ÷¼Á +4 18889395102 2026-03-18 4/200 2026-03-19 16:13 by 30660438
[¿¼ÑÐ] 085600²ÄÁÏÓ뻯¹¤µ÷¼Á 324·Ö +10 llllkkkhh 2026-03-18 12/600 2026-03-19 14:33 by llllkkkhh
[¿¼ÑÐ] ÊÕ¸´ÊÔµ÷¼ÁÉú +4 ÓêºóÇïºÉ 2026-03-18 4/200 2026-03-18 14:16 by elevennnne
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û