1. 8086 (8 ), (16 ), (32 ). , . . .
. ( ). .
, 4 (Paging), . . , . .
. ( ) , . , , ( ) . .
( 0, 1, 2, 3) , . 0 . 3 . , . , /, / .
, , 64 (16 4 ). , . ( ), . ( ). , . , (, ),
.
, .
|
|
: LDT, GDT IDT. (, LDTR, GDTR IDTR), . , , . 8 ( 80286). .
: , . 32- , .
, , ( ) . (base, index, disp) . 16 , , , 4 , 64 . ( ).
32- . . 16 ( 8086). , , ,
.
32- . ( ) . () 4 . .
32- 11 . :
. -, 8, 16 32- .;
. (8, 16 32-), .
.
:
- (Displacement Disp) 8-, 16- 32- , .
- (Base) . .
- (Index) . .
- (Scale) (1, 2, 4 8), . . 32- .
|
|
EA=Base+Index*Scale+Disp.
.
2. . 32- , . ( ) . . .
. i8086 , i8086. . , . . 3.9.
. , . .
( ) (. . 3.1). . . . 3.2. . . , . 3.3. . 3.10.
16- , 16- .
D ( D = 0 16- , D = 1 32- ).
( , ). . , , , . , , , , . , , ( ), .
:
, , ;
(, , , , );
, ;
, .
3.6. AL
MOV AL, [ +4. SI + 1000]
I2456789H. = 0120, SI = 1234. .
= 0120 + 4 1234 + 1000 = 59F0H.
32- , , :
12456789 + 59F0H = I245CI79H.
, 1245CI79H.