You are on page 1of 10

i80x86

j j j j
j. j, j
j j j. :
-
, j
.

1
1 j j
8086. j
, j. j.
j
j. 8-, 16-
32- .
8086

Pentium Pro

. j

j 32- , j.
80386 j, 8086 80286
.

1.1

j .
, j .
8-, 16- 32-

AL, AH, BL, BH, CL, CH, DL DH, L


H j 16-
(High Byte ). 16- AX, BX, CX, DX, SI DI. 32-
j (Extended ) j j 16- ,
jj EAX, EBX, ECX, EDX, ESI EDI.
. 8-

j (Low

Byte ),

j 1.

1:

EAX
EBX
ECX

8086

1:

Accumulator
Base index
Count

, .

j.
j j j

j.

CL

j, j


EDX

Data

CX

ECX.

KOOP/LOOPD

j, j
ESI
EDI
EBP

Source index
Destination
index
Base pointer

.

.

.
j
j
j.

2:

1.2

EFLAG j

j j (instruction

pointer ), (stack pointer ),


register ) (segment registers ).

(ag

j (Instruction Pointer, IP) j

j .

IP j

j j ,
j
j j .

(Flag Register, EFLAGS) j

j.
. j
. EFLAG j j
2. j
.
(ags ) j j
j
j j j j (
). j :

C (Carry ). j

. j
.

P (Parity ). 0 (odd parity ),


1 (even

parity ),

j .

A (Auxiliary Carry ). j
j 3 4 (

). j BCD j j AL.

Z (Zero ). j j j
j Z=1, j j Z=0.

S (Sign ).

j. j S=1 j , j S=0
a j .

D (Direction ). j

DI SI j .
j D=1 j, j D=0


CS

2:

Code

j j
( ).

64K j j
j j

Data

DS

4G j.
j j j
j ().

(oset )

j j j
. j 64K

Extra

ES

j 4G .

j j

Stack

SS

.
j j
.
ESP
(Stack Pointer).

FS, GS

EBP.
j 32 .

j. D j STD
(set

direction ) j CLD (clear direction ).

O (Overow ). jj
j. j
. j j
.
CS, DS, ES, SS, FS GS j

j.
j j.

. 2
j.

2 j
j MB j.
.
j 16- 32 .
jj j j
j . j

3:

j . , j
, j
64K-j j . j
j . 3 j
j j
.

20- j j 1MB j.
0h j j,
2000h
j 20000h. j FFFFh
j 64K j.
j 2FFFFh.
j j j j
.
j j
j CS IP, EIP j
16- 32- . CS j , IP
j j .
j
. SS j j
SP, ESP .
j SS
BP, EBP.
16-
DS j
SI, DI BX 16- j. 32-
DS j ESI,
EDI, EAX, EBX, ECX EDX 32- j.

4:


ES j DI, EDI
16- 32- . 4 j
4 j .
64K j j
5.

j : j
j. ,

j . j
j .

3 j
j j
80286 j. j
1M j j,
j j .

5:

j (se-

lector )

j j (descriptor ),

j . j ,
.
j
. j :
(global

descriptors ) j j,
descriptors ) j

(local

j j. 8192
, j 16384 , j
j.
32- j
6. :

(Base ). 32- j j ,
j 4GB j.

(Limit ). 20- j j , j.
j j .

(Access rights ). 8- j

. j

j .

G (Granularity ). j G=0
1 1MB. j G=1

6:

32-

j 32-

7:

4KB, j j

000h

j j

4KB 4GB. j
4GB.

AV (Availability ). j
j (AV=1) j (AV=0).

D (Data access ). j j j j
j. j D=0 j
16- j ( 808680286), D=1 j 32- j
. 32- j
j
j j j

, j 7.
:

(Request privilege level ).


j j .

j j j 00, j
j 11. j j j
( 6)
.

TI. j TI=0 j
, j TI=1 j
.

(Selector ). 13- j j
j 8192 j .

8 j 8-j
j j 6.

8:

j 32-

9:

3.1

j j.
j (program-invisible
registers), j j .
.

. 9 .
j j ,
j . j j
, j j j (cache

memory ). ,


j . :

Global descriptor table registsr (GDTR) -

Interrupt descriptor table registsr (IDTR) -


.

Local descriptor table registsr (LDTR) -


Task registsr (TR) - j ,


j .

4
1. j i80x86?
2. j j j j?
3. ?
4. j j j (carry

ag, C)?

5. j j ?
6. j
?
7. j j j
?
8. j ?
9. j j.
10. j ?
11. j j
j CS=2000h IP=300h.
12. j j j?
13. j
j DS=3500h DI=50h.

10

You might also like