. , . :
1) 32- , ( -):
1.1) eax 32 / ax 16 / ah/ al 8 ;
1.2) ebx 32 / bx 16 / bh/ bl 8 ;
1.3) edx 32 / dx 16 / dh/ dl 8 ;
1.4) ecx 32 / cx 16 / ch/ cl 8 ;
1.5) ebp 32 / bp 16 ;
1.6) esi 32 / si 16 ;
1.7) edi 32 /di 16 ;
1.8) esp 32 / sp 16 .
2) : cs, ds, ss, es, fs, gs 16 ;
3) :
3.1) eflags 32 / flags 16 ;
3.2) eip 32 / ip 16 .
i486 Pentium 32- . , , , i8086, , - e (Extended).
, . - (), :
1) eax/ax/ah/al (Accumulator register) - . . . , , , .
2) ebx/bx/bh/bl (Base register) - . (, ).
3) ecx/cx/ch/cl (Count register) - -. , . . , loop , , ecx/cx;
4) edx/dx/dh/dl (Data register) - . , eax/ax/ah/al, . ; . - 32- .
, , , 32, 16 8 :
1) esi/si (Source Index register) - . -;
2) edi/di (Destination Index register) - (). -.
|
|
- , . , :
1) esp/sp (Stack Pointer register) - . .
2) ebp/bp (Base Pointer register) - , . .
. . .
: cs, ss, ds, es, gs, fs. ? . , , . :
1) . . cs (code segment register) - . , ( , ).
2) . . ds (data segment register) - , .
3) . , . : . ss (stack segment register) - , .
4) . , , ds. , . , ds, . es, gs, fs (extension data segment registers).
, , , , . :
1) eflags/flags;
2) eip/ip.
eflags flags ( , ) i8086.
eip/ip cs . , , , . eip/ip.
|
|
, .
. .
:
1) - (2 );
2) - (2 - 4 );
3) - (3 - 4 );
4) - (3-6 ).
, . 4.2.
4.2 -
MOV DST,SRC | (DST)(SRC) | |
LEA DST,SRC | (REG) (SRC) | |
DS | LDS DST,SRC | (REG) (SRC) (DS) (SRC+2) |
ES | LES DST,SRC | (REG) (SRC) (ES) (SRC+2) |
XCHG OPR1,OPR2 | (OPR1) (OPR2) |
. , CS. LEA, LES, LDS REG , . MOV . XCHG , .