can be moved to or from memory with one instruction. These registers are always moved
as 96-bit extended data with no conversion (hence no possibility of conversion errors).
Some examples of the move multiple instruction
are as
follows:
FMOVEM <ea>,FP0-FP3/FP7
FMOVEM FP2/FP4/FP6,<ea>
The move multiple instruction is useful during context switches and interrupts to save or
restore the state of a program. It is also useful at the start and end of a procedure to save
and restore the calling routine's register set. In order to reduce procedure call overhead,
the list of registers to be saved or restored can be stored in a data register thus enabling
run-time optimization by allowing a called routine to save as few registers as possible.
Note that no rounding or overflow/underflow checking is performed by these operations.
1,4.3 Monadic Operations
A monadic operation has one operand. This operand may be in a floating-point data
register, in memory, or in an MPU data register. The result is always stored in a floating-
point data register. For example, the syntax for square root is any of the following:
FSQRT.<fmt> <ea>,FPn
FSQRT.X FPm,FPn
FSQRT.X FPn
The monadic operations available with the
FPCP are as follows:
FABS Absolute Value FLOG2 Log Base 2
FACOS Arc Cosine FLOGN Log Base e
FASlN Arc Sine FLOGNP1 Log Base e of (x+ 1)
FATAN Arc Tangent FNEG Negate
FATANH Hyperbolic Arc Tangent FSIN Sine
FCOS Cosine FSINCOS Simultaneous Sine and Cosine
FCOSH Hyperbolic Cosine FSINH Hyperbolic Sine
FETOX e to the x Power FSQRT Square Root
FETOXM1 e to the x Power -1 FI-AN Tangent
FGETEXP Get Exponent FTANH Hyperbolic Tangent
FGETMAN Get Mantissa FTENTOX 10 to the x Power
FINT Integer Part FTST Test
FINTRZ Integer Part (Truncated) FTWOTOX 2 to the x Power
FLOG10 Log Base 10
1.4.4 Dyadic Operations
Dyadic operations have two operands each. The first operand is in a floating-point data
register, memory, or an MPU data register. The second operand is the contents of a floating-
point data register. The destination is the same floating-point data register used for the
second operand. For example, the syntax for floating-point add is either of the following:
FADD.<fmt> <ea>,FPn
FADD.X FPm,FPn
The dyadic operations available with the FPCP are as follows:
FADD Add FREM IEEE Remainder
FCMP Compare FSCALE Scale Exponent
FREESCALE
1-14
MC68881/MC68882 USER'S MANUAL