VCVT (between floating-point and fixed-point)
Convert between floating-point and fixed-point numbers.
Syntax
VCVT
{
}.cond
type
.F64 Dd
, Dd
, #fbits
VCVT
{
}.cond
type
.F32 Sd
,
Sd
, #fbits
VCVT
{
}cond
.F64.
type Dd
, Dd
, #fbits
VCVT
{
}cond
.F32.
type Sd
, Sd
, #fbits
where:
cond
is an optional condition code.
type
can be any one of:
S16
16-bit signed fixed-point number.
U16
16-bit unsigned fixed-point number.
S32
32-bit signed fixed-point number.
U32
32-bit unsigned fixed-point number.
Sd
is a single-precision register for the operand and result.
Dd
is a double-precision register for the operand and result.
fbits
is the number of fraction bits in the fixed-point number, in the range 0-16 if
istype
S16
orU16
, or in the range 1-32 if
istype
S32
orU32
.
Operation
The first two forms of this instruction convert from floating-point to fixed-point.
The third and fourth forms convert from fixed-point to floating-point.
In all cases the fixed-point number is contained in the least significant 16 or 32 bits of the register.
Floating-point exceptions
These instructions can produce Input Denormal, Invalid Operation, or Inexact exceptions.