|
RM0004 Datasheet, PDF (690/1176 Pages) STMicroelectronics – Programmer’s reference manual for Book E processors | |||
|
◁ |
RM0004
Instruction set
frsp
Book E User
Floating round to single-precision
frsp
frsp.
frD,frB
frD,frB
frsp
(Rc=0)
(Rc=1)
0
56
10 11
15 16
20 21
30 31
111111
frD
///
frB
0 0 0 0 0 0 1 1 0 0 Rc
X)
numberâ
numberâ
If frB[1:11] < 897 and frB1:63 > 0 then Do
If FPSCR[UE] = 0 then goto Disabled Exponent Underflow
If FPSCR[UE] = 1 then goto Enabled Exponent Underflow
If frB[1:11] > 1150 and frB[1:11] < 2047 then Do
If FPSCR[OE] = 0 then goto Disabled Exponent Overflow
If FPSCR[OE] = 1 then goto Enabled Exponent Overflow
If frB[1:11] > 896 and frB[1:11] < 1151 then goto Normal Operand
If frB1:63 = 0 then goto Zero Operand
If frB[1:11] = 2047 then Do
If frB[12:63] = 0 then goto Infinity Operand
If frB12 = 1 then goto QNaN Operand
If frB12 = 0 and frB[13:63] > 0 then goto SNaN Operand
Disabled Exponent Underflow:
sign â frB0
If frB[1:11] = 0 then
Do
exp â :1022
frac0:52 â 0b0 || frB[12:63]
If frB[1:11] > 0 then
Do
exp â frB[1:11] : 1023
fr â 0b1 || frB[12:63]
Denormalize operand:
G || R || X â 0b000
Do while exp < :126
exp â exp + 1
frac0:52 || G || R || X â 0b0 || frac0:52 || G || (R |
FPSCR[UX] â (frac24:52 || G || R || X) > 0
Round Single(sign,exp,frac0:52,G,R,X)
FPSCR[XX] â FPSCR[XX] | FPSCR[FI]
If frac0:52 = 0 then Do
frD0 â sign
frD1:63 â 0
If sign = 0 then FPSCR[FPRF] â â+zeroâ
If sign = 1 then FPSCR[FPRF] â â:zeroâ
If frac0:52 > 0 then Do
If frac0 = 1 then Do
If sign = 0 then FPSCR[FPRF] â â+normal
If sign = 1 then FPSCR[FPRF] â â:normal
If frac0 = 0 then Do
If sign = 0 then FPSCR[FPRF] â
690/1176
|
▷ |