7 (8087)

Syntax

7

Description

The 8087 (7) command dumps the contents of the math processor registers. If you do not have an 8087 or equivalent math processor chip, this command dumps the contents of the software-emulated registers.

Example

The following example shows and describes the output from the 7 command:

cControl 037F (Closure=Projective Round=nearest, Precision=64-bit )

IEM=0 PM=1 UM=1 OM=1 ZM=1 DM=1 IM=1

cStatus 6004 cond=1000 top=4 PE=0 UE=0 OE=0 ZE=1 DE=0 IE=0

Tag A1FF instruction=59380 operand=59360 op-code=D9EE

Stack Exp Mantissa Value

cST(3) special 7FFF 8000000000000000 = + Infinity

cST(2) special 7FFF 0101010101010101 = + Not A Number

cST(1) valid 4000 C90FDAA22168C235 = +3.141592265110390E+000

cST(0) zero 0000 0000000000000000 = +0.000000000000000E+000

Here, the lowercase c that precedes several lines of the output indicates that the coprocessor is in use. If this command had been used with an emulated coprocessor, an e would precede the lines. The following is a line-by-line description of the output from the 7 command:

Line 1

This line shows the value in the control register, 037F. The rest of the line interprets the bits represented by the number in the control register:

The closure method, which can be projective or affine.

The rounding method, which can be nearest (even), down, up, or chop (truncate to zero).

The precision, which can be 64, 53, or 24 bits.

Line 2

This line lists the status of the exception-mask bits, described in the following table:

Name Description

IEM Interrupt enable
PM Precision
UM Underflow
OM Overflow
ZM Zero divide
DM Denormalized operand
IM Invalid operation

Line 3

This line lists the value in the status register (6004 hexadecimal), the condition code (1000 binary), and the top of stack register (4 decimal). It then lists the exception flags, described in the following table:

Flag Meaning

PE Precision
UE Underflow
OE Overflow
ZE Zero divide
DE Denormalized operand
IE Invalid operation

Line 4

This line lists the 20-bit address of the tag register, the offset of the instruction, the offset of the operand, and the offset of the op-code, all in hexadecimal. When using software-emulated coprocessor routines, this line does not appear.

Lines 5-9

The rest of the output from the 8087 command lists the contents of the stack register. In this example, ST(3) contains the value infinity, ST(2) contains a value that cannot be interpreted as any number, ST(1) contains a real number, and ST(0) contains zero.