inter80386

Table 8-1. 80386 Instruction Set Clock Count Summary(contlnued)

 

 

 

 

 

CLOCK COUNT

NOTES

 

 

 

 

 

Real

 

Real

 

INSTRUCTION

FORMAT

 

 

 

Address

Protected

Address

Protected

 

 

 

 

 

Modear

Virtual

Modear

Virtual

 

 

 

 

 

Virtual

Address

Virtual

Address

 

 

 

 

 

8086

Mode

8086

Mode

 

 

 

 

 

Mode

 

Mode

 

REPEATED STRING MANIPULATION (Continued)

 

 

 

 

 

 

 

REPNE CMPS ~ Compare String

Itill 00 1 0

 

 

ClkCount

 

 

 

 

(Find Match)

1010011 w

 

Virtual

5+9n

5+9n

b

h

 

8086 Mode

REP INS ~ Input String

I11110010

0110110w

I

t27+6n

13+6n

7 + 6n·'27 + 6n-·

b

h,m

REP LODS ~ Load String

I11110010

1010110w

 

 

5+6n

5+6n

b

h

REP MOVS ~ Move String

I11110010

1010010w

I

 

7+4n

7+4n

b

h

REP OUTS ~ Output String

111110010

0110111 w

t26+5n

12+5n

6 + 5n-/26 + 5n··

b

h,m

REPE SCAS ~ Scan String

 

 

 

 

 

 

 

 

(Find Non-ALIAX/EAX)

I 1111001111010111Wl

 

 

5+8n

5+8n

b

h

REPNE SCAS ~ Scan String

 

 

 

 

 

 

 

 

(Find ALIAX/EAX)

I 1111001011010111Wl

 

 

5+8n

5+8n

b

h

REP STOS ~ Store String

11111001011010101Wl

 

 

5+5n

5+5n

b

h

BIT MANIPULATION

 

 

 

 

 

 

 

 

BSF ~ Scan Bit Forward

I 00001111

I 1 0 1 1 1 1 00 ImOd reg

r/ml

 

10+3n

10+3n

b

h

BSR ~ Scan Bit Reverse

I00001111

I 1 0 1 1 1 1 00 ImOd reg

r/ml

 

10+3n

10+3n

b

h

BT ~ Test Bit

 

 

 

 

 

 

 

 

Register/Memory. Immediate

I 0000 1 1 1 1 I 1 0 1 1 1 0 1 0 Imod 1 00

r/mlirnmed 8-bit data

3/6

3/6

.b

h

RegisterlMemory, Register

I 00001 111

11 01 0001 1 ImOd reg

r/ml

 

3/12

3/12

b

h

BTC ~ Test Bit and Complement

 

 

 

 

 

 

 

 

RegisterlMemory, Immediate

I 00001111

110111010 Imod 111

r/mj;mmed 8-bit datal

6/8

6/8

b

h

RegisterlMemory, Register

I 00001111

110111011 ImOd reg

r/ml

 

6/13

6/13

b

h

BTR ~ Test Bit and Reset

 

 

 

 

 

 

 

 

RegisterlMemory, Immediate

I 0000 1 1 1 1 I 1 0 1 1 1 0 1 0 Imod 1 1 0

r/mlimmed a-bit datal

6/8

6/8

b

h

Register/Memory, Register

I 00001111

11 011 001 1 Imod reg

r/ml

 

6/13

6/13

b

h

BTS ~ Test Bit and Set

 

 

 

 

 

 

 

 

RegisterlMemory, Immediate

I 0000111 1 I 1 01 1 1 01 0 Imod 1 01

r/mlirnmed a-bitdatal

6/8

6/8

b

h

Register/Memory, Register

I00001111 I 10101011 ImOdreg

r/ml

 

6/13

6/13

b

h

BIT STRING MANIPULATION

 

 

 

 

 

 

 

 

IBTS ~ Insert Bit String

I 00001111 I 10100111 ImOdreg

r/ml

 

12/19

12/19

b

h

XBTS ~ Extract Bit String

I 00001111

I 1 0 1 00 1 1 0 ImOd reg

r/ml

 

6/13

6/13

b

h

CONTROL TRANSFER

 

 

 

 

 

 

 

 

CALL ~ Can

 

 

 

 

 

 

 

 

Direct Within Segment

I 1 1 1 0 1 0 0 0

Ifull displacement

 

 

7+m

7+m

b

r

RegisterIMemory

 

 

 

 

 

 

 

 

Indirect Within Segment

I 11111111 Imodolo r/ml

 

 

7+ml

7+ml

b

h, r

 

 

10+m

10+m

Direct Intersegment

I 1 00 1 1 0 1 0

lunSigned full offset, selector

 

 

17+m

34+m

b

j,k,r

Notes:

tClock count shown applies if I/O permission allows I/O to the port in virtual 6066 mode_ If I/O bit map denies permission exception 13 fault occurs; refer to clock counts for INT 3 instruction_

• If CPL s; 10PL

•• If CPL > 10PL

116

Page 177
Image 177
Intel 80386 manual Instruction Set Clock Count Summarycontlnued, BIT Manipulation