![](http://datasheet.mmic.net.cn/230000/INTEL387DX_datasheet_15584970/INTEL387DX_39.png)
Intel387
TM
DX MATH COPROCESSOR
Intel387
TM
DX MCP Extensions to the Intel386
TM
DX CPU Instruction Set
(Continued)
Encoding
Instruction
Byte
0
Byte
1
Optional
Bytes 2–6
Clock Count Range
TRANSCENDENTAL
FCOS
k
e
Cosine of ST(0)
ESC 001
1111 1111
122–680
FPTAN
k
e
Partial tangent of ST(0)
ESC 001
1111 0010
162–430
j
FPATAN
e
Partial arctangent
ESC 001
1111 0011
250–420
FSIN
k
e
Sine of ST(0)
ESC 001
1111 1110
121–680
FSINCOS
k
e
Sine and cosine of ST(0)
ESC 001
1111 1011
150–650
F2XM1
l
e
2
ST(0)
b
1
ESC 001
1111 0000
167–410
FYL2X
m
e
ST(1)
*
log
2
(ST(0))
ESC 001
1111 0001
99–436
FYL2XP1
n
e
ST(1)
*
log
2
(ST(0)
a
1.0)
PROCESSOR CONTROL
ESC 001
1111 1001
210–447
FINIT
e
Initialize MCP
ESC 011
1110 0011
33
FSTSW AX
e
Store status word
ESC 111
1110 0000
13
FLDCW
e
Load control word
ESC 001
MOD 101 R/M
SIB/DISP
19
FSTCW
e
Store control word
ESC 101
MOD 111 R/M
SIB/DISP
15
FSTSW
e
Store status word
ESC 101
MOD 111 R/M
SIB/DISP
15
FCLEX
e
Clear exceptions
ESC 011
1110 0010
11
FSTENV
e
Store environment
ESC 001
MOD 110 R/M
SIB/DISP
103–104
FLDENV
e
Load environment
ESC 001
MOD 100 R/M
SIB/DISP
71
FSAVE
e
Save state
ESC 101
MOD 110 R/M
SIB/DISP
375–376
FRSTOR
e
Restore state
ESC 101
MOD 100 R/M
SIB/DISP
308
FINCSTP
e
Increment stack pointer
ESC 001
1111 0111
21
FDECSTP
e
Decrement stack pointer
ESC 001
1111 0110
22
FFREE
e
Free ST(i)
ESC 101
1100 0 ST(i)
18
FNOP
e
No operations
ESC 001
1101 0000
12
Shaded areas indicate instructions not available in 8087/80287.
NOTES:
j. These timings hold for operands in the range
l
x
l
k
q
/4. For operands not in this range, up to 76 additional clocks may be
needed to reduce the operand.
k. 0
s
l
ST(0)
l
k
2
63
.
l.
b
1.0
s
ST(0)
s
1.0.
m. 0
s
ST(0)
k
%
,
b
%
k
ST(1)
k
a
%
.
n. 0
s
l
ST(0)
l
k
(2
b
SQRT(2))/2,
b
%
k
ST(1)
k
a
%
.
39
39