vcfux

Vector Convert from Unsigned Fixed-Point Word

vcfux vD, vB, UIM

Converts 4 unsigned 32-bit integers to floats.

Details

Converts four unsigned 32-bit fixed-point integers in vB (with UIM fractional bits) to single-precision floating-point elements, storing IEEE 754 results in vD. No saturation or condition flags are set. This is a Classic VMX (AltiVec) instruction.

Pseudocode Operation

scale ← 2^(-UIM)
for i in 0 to 3 do
  vD[i] ← unsigned_word_to_float(vB[i]) × scale  (IEEE 754)
endfor

Programming Note

The vcfux instruction is used for converting signed floating-point values to unsigned fixed-point integers. Ensure that the Vector Facility (MSR.VEC) is enabled before using this instruction; otherwise, a Vector_Unavailable exception will be raised. Be cautious of saturation when results exceed 2^32 - 1.

Example

vcfux vd, vb, uim

Encoding

Binary Layout
4
0
vD
6
UIM
11
vB
16
778
21
 
Format VX-form
Opcode 0x1000030A
Extension VMX (AltiVec)
Registers Altered MSR

Operands

  • vD
    Target
  • vB
    Source
  • UIM
    Fraction bits