Приложение 2. Команды Intel 80x86

В этом приложении приведены скорости выполнения всех команд процессоров Intel от 8086 до Pentium II и машинные коды, которые им соответствуют.

1. Общая информация о кодах команд

1.1. Общий формат команды процессора Intel

Команда может содержать до шести полей:

1. Префиксы - от нуля до четырех однобайтных префиксов.

2. Код - один или два байта, определяющие команду.

3. ModR/M - 1 байт (если он требуется), описывающий операнды: биты 7-6: поле MOD - режим адресации;

биты 5-3: поле R/O - либо указывает регистр, либо является продолжени­ем кода команды;

биты 2-0: поле R/M - либо указывает регистр, либо совместно с MOD -режим адресации.

4. SIB - 1 байт, если он требуется (расширение ModR/M для 32-битной адре­сации):

биты 7-6: S - коэффициент масштабирования; биты 5-3:1 - индексный регистр; биты 2-0: В - регистр базы.

5. Смещение - 0, 1, 2 или 4 байта.

6. Непосредственный операнд - О, 1, 2 или 4 байта - будем использовать /ib и /iw для указания этих операндов.

1.2. Значения полей кода команды

В кодах некоторых команд мы будем встречать специальные биты и группы битов, которые обозначим w, s, d, reg, sreg и cond: ■

□ w = 0, если команда работает с байтами;

□ w = 1, если команда работает со словами или двойными словами;

□ s = 0, если непосредственный операнд указан полностью;

Q s = 1, если непосредственный операнд - младший байт большего операнда. и должен рассматриваться как число со знаком;

Q d = 0, если код источника находится в поле R/O, а приемника - в R/M; Q d = 1, если код источника находится в поле R/M, а приемника - в R/O.

Запись 10dw будет означать, что код команды - OOOlOOdw.

Поле reg определяет используемый регистр и имеет длину 3 бита:

000 - AL/AX/EAX/ST(0)/MMO/XMM0

001 - CL/CX/ECX/ST(1)/MM1/XMM1

010 - DL/DX/EDX/ST(2)/MM2/XMM2

011 - BL/BX/EBX/ST(3)/MM3/XMM3

100 - AH/SP/ESP/ST(4)/MM4/XMM4

101 - CH/BP/EBP/ST(5)/MM5/XMM5

110 - DH/SI/ESI/ST(6)/MM6/XMM6

111 - BH/DI/EDI/ST(7)/MM7/XMM7 Запись C8r будет означать HOOlreg.

Поле sreg определяет используемый сегментный регистр:

000 - ES

001 - cs

010-ss ОН - DS

100 - FS

101 - GS

Полесопа определяет условие для команд Jcc, CMOVcc, SETcc, FCMOVcc. Его значения для разных команд: ' 0000 - о

0001-NO

0010-C/B/NAE

ООН - NC/NB/AE

0100 - E/Z

0101 - NE/NZ 0110-BE/NA 0111 -NBE/A

1000 - S

1001 - NS 1010 - Р/РЕ 1011- NP/PO

1100 -L/NGE

1101 - NL/GE

1110 - LE/NG

1111 - LNE/G

Запись типа 4сс будет означать OlOOcond.

1.3. Значения поля ModRM

Поле R/O (биты 5-3) содержит либо дополнительные три бита кода команды, либо код операнда, который может быть только регистром. Будем обозначать вто­рой случай reg, а в первом записывать используемые биты.

Поля MOD (биты 7-6) и R/M (биты 3-0) определяют операнд, который мо­жет быть как регистром, так и переменной в памяти:

Команды Intel 80x86      • • ^ШШПШКШ

MOD если используется регистровая адресация и R/M содержит код регистра reg

□ MOD = 00, если используется адресация без смещения ([ВХ + SI] или [EDX])

□ MOD - 01, если используется адресация с 8-битным смещением (vari-able[BX+SI])

Q MOD = lQ, если используется адресация с     или 32-битным смещением

Значение поля R/M различно в ^- и 32-битных режимах. R/M в 16-6итном режиме: QQQ - [BX + SI] ООІ-ПЗХ+DI]

010 - [BP + SI]

+ DI]

lQQ - [SI]

1Q1 - [DI]

ПО - [BP] (кроме MOD = 00 - в этом случае после ModR/M располагается

1б-битное смещение, то есть используется прямая адресация) 111-[ВХ]

R/M в режиме:

QQQ - [EAX] QQ1 - [ECX] Q1Q - [EDX] Qll -

lQQ - используется SIB

101 - [EBP] (кроме MOD = 00 - в этом случае используется SIB, после кото­рого располагается 32-битное

110- [ESI]

111- [EDI]

1.4. Значения поля SIB

Значение поля S: QQ - не Используется

Ql - умножение на 2 lQ - умножение на 4

11 - умножение на 8

Значения полей I и В:

(I - регистр, используемый в качестве индекса, то есть умножающийся на S; В -

регистр базы, который не умножается) QQQ - EAX 001-ЕСХ 010-EDX Q11 - EBXнаш

100 - для I - индекса нет

для В - ESP

101 -для I - ЕВР

для В - ЕВР, только если MOD = 01 или 10; если MOD - 00 - базы нет 110-ESI 111 - EDI

Поля ModR/M и SIB будут записываться как /г, если поле R/O содержит код регистра, или /0 - /7, если поле R/O содержит дополнительные три бита кода команды. В других случаях поля ModR/M и SIB отсутствуют только у команд без операндов, поэтому они не будут обозначаться дополнительно.

2. Общая информация о скоростях выполнения

Скорости выполнения команд для процессоров 8086 - Р5 даны в тактах (ког­да говорят, что тактовая частота процессора 100 MHz, это означает, что за секун­ду проходит 100 миллионов тактов).

Для процессоров Р5 (Pentium, Pentium MMX) помимо скорости указано, мо­жет ли команда выполняться одновременно с другими, и если да, то в каком кон­вейере (см. раздел 9.3.2):

□ UV- может выполняться одновременно, в любом конвейере;

□ PU - может выполняться одновременно, в U-конвейере; Q PV - может выполняться одновременно, в V-конвейере;

FX - может выполняться одновременно с командой FXCH; a NP - не может выполняться одновременно (для ММХ - не может выпол­няться одновременно с командой того же типа, который указан после буквы п).

Для процессоров Р6 (Pentium Pro, Pentium II) указано количество микроопе­раций, на которые декодируется команда. Буквой С отмечены команды со слож­ным строением (см. раздел 9.3.3).

Во всех случаях даны минимально возможные скорости - если шина данных не заблокирована, операнды выровнены по границам двойных слов, операнды на­ходятся в кэше данных, команды по адресу для перехода расположены в кэше кода, переходы угаданы процессором правильно, в момент выполнения команды не происходит заполнения кэша, страницы находятся в TLB (иначе для Р5 следу­ет прибавить 13-28 тактов), в момент выполнения команды нет исключений, не происходят AGI и т. д.

Операнды обозначаются следующим образом:

Q im - непосредственный операнд;

□ i8, il6, i32 - непосредственный операнд указанного размера;

□ ac-EAX,AX,AL;

г - любой регистр общего назначения;

□ г8 - АН, AL, ВН, BL, DH, DL, СН, CL; а г 16 - АХ, ВХ, СХ, DX, BP, SP, SI, DI;

□ г32 - ЕАХ, ЕВХ, ЕСХ, EDX, EBP, ESP, ESI, EDI;

□ sr - сегментный регистр;

□ m - операнд в памяти; Q mm - регистр ММХ;

а xmm - регистр SSE;

□ s0 - регистр ST(0);

□ si - регистр ST(i).

Для команд условных переходов приводятся два значения скорости выполне­ния - если переход произошел и если нет. Другие используемые сокращения:

□ РМ - защищенный режим; Q RM - реальный режим;

□ VM - режим V86;

Q TS - переключение задачи; Q CG - шлюз вызова;

□ TG - шлюз задачи;

Q /in - увеличение привилегий;

Q /out - уменьшение привилегий;

Q        - переход во вложенную задачу.

Время переключения задачи:

Q Pentium: TS = 85 при переключении в 32-битный и ' 16-битный TSS и 71 при переключении в V86 TSS;

□ 80486: TS = 199 при переключении в 32-битный и 16-битный TSS и 177 при переключении в V86 TSS;

□ 80386: TS = 307-314 при переключении в 32-битный и 16-битный TSS и 224-231 при переключении в V86;

□ 80286: TS = 280.

3. Префиксы

Все префиксы выполняются за 1 такт и имеют размер 1 байт:

0F0h: LOCK

OF2h: REPNE/REPNZ

OF3h: REP/REPE/REPZ

2Eh: CS:

36h: SS:

3Eh: DS:

26h: ES:

64h: FS:

65h: GS:

66h:OS

67h: AS

4. Команды процессоров Intel 8088 - Pentium III

Таблица 27. Команды

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

ААА

37

8

8

3

4

3

3 NP

1m

AAD i&

D5 ib

60

15 .

14

19

14

10 NP

3m

MM i8

D4 ib

83

19

16

17

15

18 NP

4m

MS

3F

8

7

3

4

3

3 NP

1m

ADC ac.im

14w im

4

4

3

2

1

1 PU

2m

ADC r,im

80sw/2 im

4

4

3

2

1

1 PU

2m

ADC m,im

80sw/2 im

23+ea

16

7

7

3

3 PU

4m

ADC r,r

10dw /г

3

3

2

2

1

1 PU

2m

ADC m,r

,H)dw_/r__

24+ea

10

7

7 <:

3

3 PU

4m

ADC r,m

10dw /г

13+ea

10

7

6

2

2 PU

3m

ADD ac.im

04w im

4

4

3

2

1

1 UV

1m

ADD r,im

80sw/0 im

4

4

3

2

1

1 UV

1m

ADD m,im

80sw/0 im

23+ea

16

7

7

3

3 UV

4m

ADD r,r

OOdw /r

3

3

2

2

1

1 UV

1m

ADD m,r

OOdw /r

24+ea

10

7

7"

3

3 UV

4m

ADD r,m

OOdw /r

13+ea

10

7

6

2

2 UV

2m

AND ac.im

24wim

4

4

3

2

1

1 UV

1m

AND r.im

80sw/4 im

4

4

3

2

1

1 UV

1m

AND m,im

80sw/4 im

23+ea

16

7

7

. 3

3 UV

4m

AND r,r

20dw /r

3

3

2

2

1

1 UV

1m

AND m,r

20dw /r

24+ea

10

7

7

3

3 UV

4m

AND r,m

20dw /r

13+ea

10

7

6

2

2 UV

2m

ARPL r,r

63/г

 

 

10

20

9

7 NP

С

ARPL m,r

63 Д

 

 

11

21

9

7 NP

С.

BOUND r,m

62 A

 

35

13

10

7

8 NP

С

BSFr16,r16

OF BC /r

 

 

 

10+3n

6..42

6..34 NP

2m

BSF r32,r32

OF BC /r

 

 

 

10+3n

6..Д2

6..42 NP

2m

BSFr16,m16

OF BC /r

 

 

 

10+3n

6..43

6..35NP

3m

BSF r32,m32

OF BC /r

 

 

 

10+3n

6..43

6..43 NP

3m

BSR r16,r16

OF BD /r

 

 

 

10+3n

6..103

7..39 NP

2m

BSR r32,r32

OF BD /r

 

 

 

10+3n

7.. 104

7..71 NP

2m

BSRr16,m16

OF BD /г

 

 

 

10+3n

6..103

7..40 NP

3m

BSR r32,m32

OF BD /r

 

 

 

10+3n

7..104

7..72 NP

3m

BSWAP r32

0FC8r

 

 

 

 

1

1 NP

2m

ВТ r,r

OF A3 /r

 

 

 

3

3

4 NP

1m

ВТ m,r

OF A3 /r

 

 

 

12

8

9 NP

С

ВТ r,i8

OF BA /4 ib

 

 

 

3

3

4 NP

1m

ВТ m,i8

OF BA /4 ib

 

 

 

6

2

4 NP

2m

BTC r,r

OF BB /r

 

 

 

6

6

7 NP

1m

BTC m,r

OF BB /r

 

 

 

13

13_

13 NP

С

BTC r,i8

OF BA /7 ib

 

 

 

6

6

7 NP

1m

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

ВТС m,i8

OF BA /7 ib

 

 

 

8

8

8 NP

4m

BTR г, г

OF B3 /r

 

 

 

6

6

7 NP

1m

BTR mjr '

OF B3 /r

 

 

 

13

13

13 NP

С

BTR r,i8

OF BA /6 ib

 

 

 

6

6

7 NP

1m

BTRm,i8

OF BA /6 ib

 

 

 

8

8

8 NP

4m

BTS r,r

OF AB /r

 

 

 

6

6

7 NP

1m

BTSrrv

OF AB /r

 

 

 

13

13

13 NP

С

BTS r,i8

OF BA /5 ib

 

 

 

6

6

7 NP

1m

BTS т, i8

OF BA /5 ib

 

 

 

8

8

8 NP

4m

CALL near im

E8 im

23

14

7

7

3

1 PV

4m

CALL near r

FF /2

20

13

7

7

5

2 NP

С

CALL near т

FF/2

29+ea

19

11

10

5

2 NP

С

CALL far im (RM)

9A im :

36

23

13

17

18

4 NP

С

CALL far im (PM)

9A im

 

 

26

34

20

4..13 NP

С

CALL im (CG)

9A im

 

 

41

52

35

22 NP

С

CALL im (CG/in)

9A im

 

 

82

86

69

44 NP

С

.CALL im (TS)

9A im

 

 

177

TS

37+TS

21+TS NP

С

CALL im (TG)

9A im

 

 

177

TS

27+TS

22+TS NP

С

CALL far т (RM)

FF /3

53+ea

38

16

22

17

4 NP

С

CALL far т (PM)

. FF/3

 

 

29

38

20

5..14NP

С

CALL т CG

FF /3

 

 

44

56

35

22 NP

С

CALL т CG/in

FF /3

 

 

83

90

69

44 NP

С

CALL т TS

FF/3

 

 

 

TS

37+TS

21+TS NP

С

CALL т TG

FF/3

 

 

 

TS

37+TS

22+TS NP

С

CBW

98

2

2

2

3

3

3 NP

CDQ

99

 

 

 

2

3

2 NP

CLC

F8

2

2

2

2

2

2 NP

CLD

FC

2

2

2

2

2

2 NP

CLI

-- FA

2

2

3

3

5

7 NP

С

CLTS

OF 06

 

 

2

5

7

10 NP

С

CMC

F5

2

2

2

2

2

2 NP

CMOVcc r,r

OF 4cc /г

 

 

 

 

 

 

CMOVcc r,m

OF 4cc /r

 

 

 

 

 

 

Зт

CMPac,im

3Cw im

4

4

3

2

1 "

1 UV

CMP r,im

80sw /7 im

4

4

3

2

1

1 UV

CMP m,im

80sw /7 im

14+ea

10

6

5

2

2 UV

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

CMP r,r

38dw /r

3

3

2

2

1

1 UV

1m

CMP m,r

38dw /r

13+ea

10

7

5

2

2UV

2m

CMP r,m

38dw/r

10+ea

10

6

6

2

2 UV

2m

CMPSB

A6

30

22

8

10

8

5 NP

С

REP* CMPSB

F2/3 A6

9+30n

5+22n

5+9n

5+9n

7+7n

9+4n NP

С

CMPSW/

CMPSD

A7

30

22

8

10

8

5 NP

С

REP*

CMPSW/D

F2/3 A7

9+30n

5+22n

5+9n

5+9n

7+7n

9+4n NP

С

CMPXCHG r,r

OF BOw /r

 

 

 

 

6

5NP

С

CMPXCHG m,r

OF BOw /r

 

 

 

 

7..10

6 NP

С

CMPXCHG8B m64

OF C7 /1

 

 

 

 

 

10 NP

С

CPUID

0FA2

 

 

 

 

14

13 NP

С

CWD

99

5

4

2

2

3

2 NP

CWDE

98

 

 

 

3

3

3 NP

DAA

27

4

4

3

4

2

3 NP

DAS

2F

4

4

3

4

2

3 NP

DEC r16/32

48r

3

3

2

2

1

1 UV

DEC r

FEw/1

3

3

2

2

1

1 UV

DEC m

FEW /1

23+ea

15

7

6

3

3 UV

DIVr8

F6w/6

80..90

29

14

14

16

17 NP

Зт

DIV П6

F6w/6

144..162

38

22

22

24

25 NP

DIV r32

F6w/6

 

 

 

38

40

41 NP

DIVm8

F6w/6

86..96+ea

35

17

17

16

17 NP

DIV m16

F6w/6

150..168+ea

44

25

25

24

25 NP

DIV m32

F6w /6

 

 

 

41

40 .

41 NP

EMMS

OF 77

 

 

 

 

 

NP

С

ENTER И 6,0

C8 iw ib

 

15

11

10

14

11 NP

С

ENTER И 6,1

C8 iw ib

 

25

15

12

17

15 NP

С

ENTER i16,i8

C8 iw ib

(m=n-1)

22+16m

12+4m

15+4m

17+3n

15+2n NP

С

F2XM1

D9 FO

310..630

 

310..630

211..476

140..'279

13..57 NP

С

FABS

D9 E1

10..17

 

10..17

22

3

1 FX

FADD m32

D8/0

90..120+ea

 

90.. 120

24. .32

8..20

3/1 FX

FADD m64

DC/0

95..125+ea

 

S5..125

29..37

8..20

3/1 FX

FADD sO.Si

D8 COr

70.. 100

 

70..100

23..34

8..20

3/1 FX

FADD si.sO

DC COr

70.. 100

 

70.. 100

23..34

8..20

3/1 FX

FADDP si.sO

DECOr

75.. 105

 

75..105

23..31

8..20

3/1 FX

FBLD m80

DF/4

290..310+ea

 

290..310

266..275

70..103

48..58NP

С

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

Р5

Р6

РВЗТР т80

ОР /6

520..540+еа

 

520..540

512..534

172..176

148..154 ЫР

С

РСРБ

09 ЕО

10..17

 

10..17

24..25

6

1 РХ

РС1_ЕХ

9В РВ Е2

2..8

 

2..8

11

7

9 ИР

рсмоув во.в;

ОАСОг

 

 

 

 

 

 

FCMOVE эО,^

ОА С8г

 

 

 

 

 

 

FCMOVBE

ОА ООг

 

 

 

 

 

 

румоуи эО,^

0А08г

 

 

 

 

 

 

РСМСЛМВ

ОВ СОг

 

 

 

 

 

 

РСМСЛ/МЕ эО^

ОВ С8г

 

 

 

 

 

 

FCMOVNBE

08 ООг

 

 

 

 

 

 

80,31

ОВ 08г

 

 

 

 

 

 

РСОМ т32

08 /2

60..70+еа

 

60..70

26

4

4/1 РХ

РСОМ т64

ОС/2

65..75+еа

 

65. .75

31

4

4/1 РХ

РСОМ в1

08 ООг

40..50

 

40..50

24

4

4/1 РХ

РСОМР т32

08 /3

60..70+еа

 

60..70

26

4

4/1 РХ

РСОМР т64

ОС/3

65..75+еа

 

65..75

31

4

. 4/1 РХ

РСОМР в1

Р8 Р8г

42..52

 

42.. 52

26

4

4/1 РХ

РСОМРР

ОЕ 09

45..55

 

45..55

26

5

4/1 РХ

РСОМ1 эО,^

РВ РОг

 

 

 

 

 

 

РСОМ1Р зо,а

ОР РОг

 

 

 

 

 

 

РСОБ

09 РР

 

 

 

123..772

257..354

18..124 ^

С

РРЕСБТР

09 Р6

6..12

 

6..12

22

3

1 ЫР

РОМ т32

08/6

215..225+еа

 

215..225

89

73

39 РХ

Р01У т64

ОС/6

220..230+еа

 

220..230

94

73

39 РХ

РР1У эСв!

08 РОг

193..203

 

193..203

88..91

73

39 РХ

Р01У ^.эО

ОС Р8г

193..203

 

193..203

88..91

73

39 РХ'

РИУР Б^О

0ЕР8г

197..207 '

 

197. .207

. 91

73

39 РХ

РО\УВ т32

08 /7

216..226+еа

 

216..226

89

73

39 РХ

?0\ЧВ т64

ОС/7

221..231+еа

 

221..231

94

73

39 РХ

РР!УР, эО^

08 Р8г

194..204

 

194. .204

88..91

73

39 РХ

Р01УР, Э^О

РС РОг

194.204

 

194..204

88..91

73

39 РХ

Р01УР,Р Э^О

ОЕРОг

198..208

 

198..208

91

73

39 РХ

Р01$1

9В РВ Е1

2..8

 

РЫОР

 

 

 

 

РЕМ

9В РВ ЕО

2. .8

 

РЫОР

 

 

 

 

РРР.ЕЕ а

00 СОг

9..16

 

9..16

18

3

1 ЫР

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

Р5

Р6

Р!АРР т32

ОА/0

Ю2..137+еа

 

102..137

71..85

20..35

7/4 ЫР

С

Р!АРР т64

РЕ/0 .

Ю8..143+еа

 

108..143

57..72

19..32

7/4 ЫР

С

Р1С0М т16

ЬЕ/2

72..86+еа

 

72..86

71..75

16..20

8/4 ЫР

с

РГСОМ т32

ОА/2

78..91+еа

 

78..91

56..63

15..17

8/4 ЫР

с

РЮОМР т16

РЕ /3

74..88+еа

 

74., 88

71.,75

16..20

8/4 ЫР

с

РГСОМР т32

ОА/З

80..93+еа

 

80..93

56..63

15..17

8/4 ЫР

с

РР^пИб

ОА/6

224..238+еа

 

224..238

136..140

85..8Э

42 МР-

с

Р!Р!У т32

ОЕ /6

230..243+еа

 

230..243

120..127

84.. 86

42 ЫР

с

Р!Р!УЯ т16

РА Я

225..239+еа

 

225..239

135..141

85.. 89

42 ЫР

с

НОМР, т32

ОЕ/7

231„245+еа

 

231..245

121..128

84..86

42 ЫР

с

ПШ т16

РР/0

46..54+еа

 

46..54

61..65

13..16

3/1 ЫР

Р!1_Р т32

ОВ/0

52..60+еа

 

52..60

45..52

9..12

3/1 ЫР

НШ т64

ОР /5

60..68+еа

 

60..68

56..67

10..18

3/1 ЫР

ВМи1-т16

ОА/1

124,.138+еа

 

124..138

76..87

23..27

7/4 ЫР

С

Р1М111-т32

ОЕ/1

130..144+еа

 

130..144

61..82

22.,24

7/4 ЫР

С

Р!ЫС8ТР

Р9 Р7

6..12

 

6..12

21

3

1 ЫР

ПМТ

9В РВ Е3

2..8

 

2..8

33

17

16 ЫР

С

Р15Тт16

ОР/2

80..90+еа

 

80..90

82..Э5

29..34

6 ЫР

Р!вТ т32

ОВ /2

82..92+еа

 

82..92

79..93

28..34

6 ЫР

Р18ТР т16

РР/3

82..92+еа

 

82..92

82..Э5

29..34

6 ЫР .

ПЭТР т32

ОВ/3

84..94+еа

 

84..94

79..93

28..34

6 ЫР

ПЭТР т64

РР/7

94..105+еа

 

94.. 105

80..97

28..34

6ЫР

ПЭиВ т16

ОЕ/4

Ю2..137+еа

 

102..137

71..85

20..35

7/4 ЫР

С

НЗиВ т32

ЭА/4

Ю8..143+еа

 

108..143

57.. 82

19..32

7/4 ЫР

С

ИБиВР. т16

ОЕ /5

102..137+еа

 

102..137

71..85

20..35

7/4 МР

С

РШВЯ т32

ОА/5

Ю8..143+еа

 

108..143

57..82

19..32

7/4 ЫР

С

Р1_Р т32

09/0

З8..56+еа

 

38..56

20

4

1 РХ

Р1_Р т64

00 /0

40..60+еа

 

40..60

25

3

1 РХ

РШ т80

ОВ /5

53..65+еа

 

53..65

44

3

3 ЫР

Р1_Р в1

09 СОг

17..22

 

17..22

14

4

1 РХ

Р1_Р1

Р9 Е8

15..21

 

15..21

24

4

2ЫР

Р1_Р1_2Т

09 Е9

16.-22

 

16..22

40

8

5/3 ЫР

Р1_Р1_2Е

09 ЕА

15..21

 

15..21

40

8

5/3 ЫР

РШР1

09 ЕВ

16..22

 

16..22

40

8

5/3 ЫР

Р1_РЮ2

09 ЕС

1 18.-24

 

18..24

41

8

5/3 ЫР

Р1_Р1_Ы2

09 ЕР

17..23

 

17..23

41

8

5/3 ЫР

Р1_Р2

09 ЕЕ

11..17

 

11..17

20

4

2 ЫР

РУХ\/Ут16

09 /5

7..14+еа

 

7..14

19

4

7 ИР

Зт

Р1_РЕЫА/ т 14

09 /4

35..45+еа

 

35..45

71

44

37 ЫР

С

Р1_РЕ1\А/ т14 (РМ)

09/4

 

 

 

71

34

32..33 ЫР

С

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

FMUL m32

08/1

110..125+еа

 

110..125

27..35

11

3/1 FX

2m

FMUL т64

DC/1

154..168+ea

 

154..168

32..57

14

3/1 FX

2m

FMULsO.si

D8 C8r

90..145+ea

 

90.. 145

29..57

16

3/1 FX

1m

FMULsi.sO

DC C8r

90..145+ea

 

90..145

2Э..57

16

3/1 FX

1m

FMULP si.sO

DE C8r

94..148+ea

 

94.. 148

2Э..57

16

3/1 FX

1m I

FNCLEX

OB E2

2..8

 

2..8

11

7

9/9 NP

3m

FNDISI

DB El

2..8

 

FNOP

 

 

 

 

FNENI

DB EO

2..8

 

FNOP

 

 

 

 

FNINIT

DB E3

2..8

 

2..8

33

17

12 NP

С

FNOP

D9 DO

10..16

 

10..16

12

3

1 NP

1m

FNSAVE т (RM)

DD/6

197..207+ea

 

197..207

375..376

154

127..151 NP

С

FNSAVE т (PM)

DD/6

 

 

 

375..376

143

124 NP

С

FNSETPM

DB E4

 

 

2.. 8

FNOP

 

 

 

FNSTCWm16

D9/7

12..18

 

12..18

15

3

2 NP

3m

FNSTENV m16

■09/6

40..50+ea

 

40..50

103..104

56..67

48..50 NP

С

FSTSWm16

9B DD/7

12..18

 

12..18

15

3

2 NP

Зт

FSTSW AX

9B DF EO

 

 

10..16

13

3

2 NP

Зт

FPATAN

D9 F3

250..800

 

250..800

314..487

218..303

19..134 NP

С

FPREM

D9 F8

15..190

 

15..190

74.. 155

70..138

16..64 NP

С

FPREM1

D9F5 1

 

 

 

95.. 185

72.. 167

20..70 NP

С

FPTAN

D9 F2

30..540

 

30..540

191..497

200..273

17..173NP

С

FRNDINT

D9 FC

16..50

 

16..50

66..80

21..30

9..20 NP

С

FRSTOR т (RM)

DD/4

197..207+ea

 

197..207

308

131

75..95 NP

С

FRSTOR т

(PM)

DO/4

 

 

 

308

120

70 NP

С

FSAVE т (RM)

9B DO /6

197..207+ea

 

197..207

375..376

154

127..151 NP

С

FSAVE т (PM)

9B DD /6

 

 

 

375..376

143

124 NP

С

FSCALE

D9FD

32..38

 

32..38

67..86

30..32

20..31 NP

С

FSETPM

9B DB E4

 

 

2.. 8

FNOP

 

 

 

FSIN

D9 FE

 

 

 

122..771

257..354

16..126NP

С

FSINCOS

D9 FB

 

 

 

194..809

292..365

17..137 NP

С

FSQRT

D9FA

180..186

 

180..186

122..129

83..87

70 NP

FST m32

09/2

84..90+ea

 

84..90

44

7

2 NP

FST m64

DD /2

96..104+ea

 

96.. 104

45

8

2 NP

FST si

DD DOr

15..22

 

15..22

11

3

1 NP

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286

80287

80386

80387

80486

Р5

Р6

РвТР т32

09/3

86..92+еа

 

86..Э2

44

7

2ЫР

РвТР т64

00/3

98..106+еа

 

98..106

45

8

2НР

РвТР т80

ОВ/7

52..58+еа

 

52.,58

53

6

3 ЫР

С

РвТР в1

00 08г

17..24

 

17..24

12

3

1 ЫР

Р5ТС\Л/т16

9В 09 /7

12,.18

 

12..18

15

3

2 ЫР

РвТЕЫМ т

9В Ю9 /6

40,.50+еа

 

40..БО

103„104

56..67

48..50ЫР

С

Р5Т5«/т16

9В 00/7

12..18

 

12..18

15

3

2 ЫР

РвTвW АХ

9В ЮР ЕО

 

 

10..16

13

3

2 ЫР

РвиВ т32

08/4

90,.120+еа

 

90.. 120

24. .32

8..20

3/1 РХ

РвиВ т64

ОС/4

95..125+еа

 

95.. 125

28..36

8..20

3/1 РХ

РвиВ 80,31

08 ЕОг

70.. 100

 

70.. 100

26„37

8..20

3/1 РХ

РвиВ 51,80

ОС Е8г

70,. 100

 

70..100

| 26..37

8..20

3/1 РХ~

РвиВР 81,50

0ЕЕ8г

75., 105

 

75.. 105

26..34

8..20

3/1 РХ

РвиВЯ т32

08/5

90,.120+еа

 

90.. 120

24..32

8..20

3/1 РХ

РвиВЯ т64

ОС/5

95..125+еа

 

95.. 125

28..36

8..20

3/1 РХ

РвиВЯ бО,^

08Е8г

70.. 100

 

70!.100

26..37

8..20

3/1 РХ

РЭиВР, 81,80

ОС ЕОг

70.. 100

 

70..100

26..37

8..20

3/1 РХ

РвиВЯР 51,80

ОЕ ЕОг

75.. 105

 

75.. 105

26..34

8..20

3/1 РХ

РТЭТ

09 Е4

38..48

 

38..48

28

4

4/1 РХ

РиСОМ а

Ой ЕОг

 

 

 

24

4

4/1 РХ

РиСОМР в1

00Е8г

 

 

 

26

4

4/1 РХ

рисомрр

0АЕ9

 

 

 

26

5

4/1 РХ

РиСОМ1 эО.в!

ОВ Е8г

 

 

 

 

 

 

рисомр

ОР Е8г

 

 

 

 

 

 

тмт

4

 

3

6

1..3

1..3 ЫР

РХАМ

09 Е5

12..23

 

12..23

30..38

8

21 ЫР

РХСН э1

09 С8г

10..15

 

10..15

18

4

1 PV

РХЯвТОЯ т

ОР АЕ /1

 

 

 

 

 

 

С

РХТЯАСТ

09 Р4

27„55

 

27..55

79.-76

16..20

13 ЫР

С

РХвАУЕ т

ОР АЕ /0

 

 

 

 

 

 

С

руьгх

09 Р1

900..1100

 

900..1100

120..538

196..329

22..111 ЫР

С

РУ1_2ХР1

09 Р9

700.. 1000

 

700.. 1000

257..547

171..326

22..103ЫР

С

Н_Т

Р4

2

2

2

5

4

4 ЫР

С

\0\У г8

Р6\л//7

101..112

44..52

17

19

19

22 ЫР

Зт

ЮМ г16

Р6\м/7

165..184

53..61

25

27

27

30 ЫР

ЮМ г32

[7

 

 

 

43

43

46 ЫР

т8

Р6\лл/7

107,.118+еа

50..58

20

22

20

22 ЫР

Ю1Ут16

/7

171..190+еа

5Э..67

28

30

28

30 ЫР

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

IDIV т32

F6w/7

 

 

 

46

44

46 NP

4m

IMULr8

F6w /5

80..98

2S..28

13

9..14

13..18

11 NP

1m

IMUL П6

F6w/5

128..154

34..37

21

Э..22

13..26

11 NP

3m

IMUL r32

F6w/5

 

 

 

9..38

13..42

10 NP

3m

JMULm8

F6w/5

86..104+ea

32..34

16

12..17

13..18

11 NP

2m

IMULm16

F6w/5

134,.160+ea

40..43

24

12..25

13..26

11 NP

4m

IMUL r32

F6w/5

 

 

 

12..41

13..42

10 NP

4m

IMUL r,r,i8

6B /r ib

 

22

21

9..14

13..18

10 NP

1m

IMUL

П6,П6,П6

69 /r im

 

29

21

Э..22

13..26

10 NP

1m

IMUL

r32,r32,i32

69 /r im

 

 

 

9..38

13..42

10 NP

1m

IMUL r,r,i8

6B /r ib

 

25

24

12-17

13..18

10 NP

2m

IMUL

r16,m16,i16

69 /r im

 

32

24

12..25

13..26

10 NP

2m

IMUL

r32,m32,i32

69 /r im

 

 

 

12..41

13..42

10 NP

2m

lMULr16, П6

OF AF /r

 

 

 

Э..22

13.18

10 NP

1m

IMUL r32,r32

OF AF /r

 

 

 

9..38

13..42

10 NP

1m

IMULr16, m16

OF AF /r

 

 

 

12..25

13..18

10 NP

2m

!MULr32,

m32

OF AF /r

 

 

 

12..41

13..42

10 NP

2m

IN ac,i8 (RM)

E4w ib

14

10

5

12

14

7 NP

С

IN ac,i8 <CPL<IOPL)

E4w ib

 

 

 

6

9

4 NP

С

IN ac,i8 (CPL>IOPL)

E4w ib

 

 

 

26

29

21 NP

С

IN ac,i8

(V86)

E4w ib

 

 

 

26

27

19 NP

С

IN ac.DX

(RM)

ECw

12

8

5

13

14

7 NP

С

IN ac.DX (CPL<IOPL)

ECw

 

 

 

7

8

4 NP

С

lNac,DX

(CPL>IOPL)

ECw .

 

 

 

27

28

21 NP

С

IN ac.DX

(V86)

ECw

 

 

 

27

27

19 NP

С

INC r

FEw/0

3

3

2

2

. 1

1 UV

INCri 6/32

40r

3

3

2

2

1

1 UV

INCt

FEw/0

23+ea

15

7

6

3

3 UV

INS* (RM)

6Cw

 

14

5

15

17

9 NP

С

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386

80387

80486

Р5

Р6

(СРиЮРЬ)

 

 

 

 

9

10

6 МР

С

INS*

(CPL>ЮPL)

6Cvv

 

 

 

29

32

24 ЖР

С

INS* (V86)

 

 

 

 

29

30

22 ЖР

с

1ЫТ 18 (ИМ)

СО \ь

71

47

23

37

30

16 ЖР

№ 18 (РМ)

CD 1Ь

 

 

40

59

44

31 ЖР

С

INT 18 (РМ/1п)

СО 1Ь

 

 

78

99

71

48 ЖР

С

11ЧГТ 18 (У86)

СР 1Ь

 

 

78

119

82

60 ЖР

С

11ЧГТ 18 (ТС)

СО \ь

 

 

167

TS

37+TS

23+TS ЖР

С

11ЧТЗ (ЯМ)

сс

72

45

23

33

26

16 ЖР

С

!Ж"3 (РМ)

сс

 

 

40

59

44

30 ЖР

С

!NT3 (РМ/1п)

сс

 

 

78

99

71

47 ЖР

С

!NT3 (У86)

сс

 

 

78

119

82

59 ЖР

С

!NT3 (ТС)

сс

 

 

167

TS

37+TS

22+TS ЖР

С

!NTO (ОР=0)

CE

4

4

3

3

3

4 ЫР

С

ЖТО (ЯМ)

CE

73

48

24

35

28

13 ЖР

С

!NTO (РМ)

CE

 

 

 

59

46

30 ЖР

С

!NTO (РМ/т)

CE

 

 

 

99

73

47 ЖР

С

!NTO (V86)

CE

 

 

 

118

84

59 ЖР

С

!NTO (TG)

CE

 

 

 

TS

29+TS

22+TS ЖР

С

ШО

ОР 08

 

 

 

 

4

15 ЖР

С

!NVLPG т

ОР01 /7

 

 

 

 

12

25 ЖР

с

)НЕТ/|Р,ЕТО

(ЯМ)

ср

44

28

17

22

15

7 ЫР

с

!RET/!RETD (РМ)

ср

 

 

31

38

15

10..19 ЫР

с

!RET/!RETD (РМ/оиН

ср

 

 

55

82

36

27 ЖР

с

РЕТЛнЕТО

(РМ/Ж")

ср

 

 

169

TS

32+TS

Ю+ТБ

с

исс 18 (не вып.)

70с <Ь

4

4

3

3

1

1 РУ

Тсс >8 (вып.)'

70с 1Ь

16

13

7

7

3

1 РУ

(не вып.)

ОР 80с Иэ

 

 

 

3

1

1 РУ

1т (вып.)

ОР 80с 1Ь

 

 

 

3

1

1 РУ

иСХ7 18 (не вып.)

ЕЗ 1Ь

6

5 '

4

5

-~-

5

-

5 ЫР

иСХ7 18 (вып.)

ЕЗ 1Ь

18

16

8

9

8

6ЫР

иМР пеаг 18

ЕВ1Ь

15

13

7

7

3

1 РУ

пеаг 1 16/32

"E9 1Ь

15

13

7

7

3

1 РУ

Таблица 27. Команды (продолжение).

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

ОМР пеаг г

РЯ/4

11

11

7

7

5

2 ЫР

*)МР пеаг т

РР/4

18+еа

17

11

10

5

2 ^

Л\/1Р Таг 1т (ЯМ)

ЕА 1т

15

13

11

12

17

3 ЫР

С

JMP Таг т (РМ)

ЕА 1т

 

 

 

27

19 '

23 ^

С

JMP Таг т (СО

ЕА 1т

 

 

38

45

32

18 ^

С

JMP Таг 1т (Тв)

ЕА 1т

 

 

175

Тв

42+Тв

19+ТЭ ЫР

С

JMP Таг 1т (ТО)

ЕД 1т

 

 

180

Тв

43+Тв

20+Тв NP

С

^ Таг т (RM)

РР /5

24+еа

26

15

12

13

4 ЫР

С

JMP Таг т ^)

РР /5

 

 

 

31

18

23 NP

с

JMP Таг т (СО

ЯР /5

 

 

41

49

31

18 NP

с

^ Таг т (Тв)

РР/5

 

 

178

5+Тв

41+Т5

19+Т5 ЫР

с

JMP Таг т (ТО

РР /5

 

 

183

5+Тв

42+Тв

20+Тв NP

с

1АНР

4

2

2

2

3

2 ЫР

ив г,г

ОР 02 /г

 

 

14

15

11

8 NP

С

1Ан г,т

ОР 02 /г

 

 

16

16

11

8 ЫР

С

ЦЭЭ г,т (RM)

С5 /г

24+еа

18

7

7

6

4ЫР

С

ШЗ г,т (РМ)

С5/Г

 

 

 

22

12

4..13 ЫР

С

1.ЕА г,т

ВО

2+еа

6

3

2

1..2

1 иу

ЬЕДУЕ

С9

 

8

5

4

5

3 ЫР

Зт

ЬЕв г,т (RM)

С4/г

24+еа

18

7

7

6

4ЫР

С

ЬЕБ г,т (PM)

С4 /г

 

 

 

22

12

4.,13 ЫР

С

1^5 г,т (ЯМ)

ОР В4 /г

 

 

 

7

6

4 ЫР

С

ЬРв г,т ^)

ОР В4Д

 

 

 

22

12

4.,13 ЫР

С

ЬОРТ т

ОР 01 /2

 

 

11

11

11

6 ЫР

С

Юв г,т ^)

ОР В5 /г

■          " т~

 

 

7

6

4 NP

С

Юв г,т (PM)

ОР В5 /г

 

 

 

22

12

4.. 13 ЫР

С

иРТт

ОР 01 /3

 

 

12

11

11

6 NP

1 с

ШЭТг

0Р 00 /2 ■

 

 

17

20

11

9 NP

С

ЩТт

ОР 00 /2

 

 

19

24

11

9ЫР

С

(.Мв^/г

ОР 01 /6

 

 

3

10

13

8 ЫР

1 с

LMвW т

ОР 01 /6

 

 

6

13

13

8 ЫР

С

ЮСК

РО

2

2

0

0

1

1' NP

С

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286

80287

80386

80387

-

80486

Р5

Р6

юовэ

ДСш

16

10

5

5

5

2 ЫР

ЮОР 18 (не вып.)

Е2 1Ь

5

5

4

11

6

5ЫР

ЮОР 18 (вып.)

Е2 1Ь

17

15

8

11

7

6 ЫР

ЮОРЕ 18 (не вып.)

Е1 1Ь

6

5

4

11

6

7ЫР

ШОРЕ 18 (вып.)

Е1 Ь

18

16

8

11

9

8 ЫР

ЮОРЫЕ 18 (не вып.)

ЕО 1Ь

5

5

4

11

6

7ЫР

ЮОРЫЕ 18 (вып.)

Е01Ь

19

16

8

11

9

8ЫР

1_в1_ г,г

ОР 03 /г

 

 

14

20 или 25

10

8 ЫР

С

ЬвЬ г,т

ОР 03 /г

 

 

16

21 или

26

10

8ЫР

С

Ьвв г,т (ИМ)

ОР В2 /г

 

 

 

7

6

4 НР

С

Евв г,т (РМ)

ОР В2 /г

 

 

 

22

12

8..17 ЫР

С

1ТР,г

ОР 00 /3

 

 

17

23

20

10 ЫР

С

ИВт

ОР 00 /3

 

 

19

27

20

10 ЫР

С

МОУ г,г

88с1ш /г

2

2

2

2

1

1.1У

МОУ т.ас

ДОс1\л/ )т

14

9

3

2

1

1 иУ

МОУ т,г

13+еа

9

3

2

1

1 иУ

МОУ ас,т

ДOdw 1т

14

8

5

4

1

1 иУ -

МОУ г,т

88Сш /г

12+еа

12

5

4

1

1 иУ

МОУ т,пп

С6^ /0 1т

14+еа

12..13

3

2

1

1 иУ

МОУ г8,18

ВОг \Ъ

4

3..4

2

2

1

1 иУ

МОУ

г16/32,И6/32

В8г №

4

3..4

2

2

1

1 иУ

МОУэг.г

8Е /г

2

2

2

2

3

2..11 ЫР

МОУ вг,г (РМ)

8Е /г

 

 

17

18

9

2..11 ЫР

МОУ вг,т

8Е/г

12+еа

9

5

5

3

3..12 ЫР

МОУ вг,т (РМ)

8Е/г

 

 

19

19

9

3..12 ЫР

МОУ г,вг

8С/г

2

2

2

2

3

1-МР

Зт

МОУ т,вг

8СД

13+еа

11

3

2

3'

1 ЫР

МОУ СР.0,г

ОР 22 /г

 

 

 

10

16

22 ЫР

С

МОУ СЯ2,г

ОР 22 /г

 

 

 

4

4

10 ЫР

С

Таблица 27. Команды (продолжение)

Команда

Код

8087

80186

80286 80287

80386 80387

80486

P5

P6

MOV CR3,r

OF 22 /r

 

 

 

5

4

21 NP

С

MOV CR4,r

OF 22 /r

 

 

 

 

 

14 NP

С

MOV r.CRx

OF 20 /r

 

 

 

6

4

4NP