POOL32A 000000 |
rt |
rs |
PRECEU.PH.QBR 1101000100 |
POOL32Axf 111100 |
6 |
5 |
5 |
10 |
6 |
SPECIAL3 011111 |
0 00000 |
rt |
rd |
PRECEU.PH.QBR 11101 |
ABSQ_S.PH 010010 |
6 |
5 |
5 |
5 |
5 |
6 |
PRECEU.PH.QBR rdt, rts |
microMIPSDSP |
Precision Expand two Unsigned Bytes to Unsigned Halfword Values |
Precision Expand two Unsigned Bytes to Unsigned Halfword Values
Expand the precision of two unsigned integer byte values taken from the two right-most elements of a quad byte vector to create two unsigned halfword values.
rdt = sign_extend(expand_prec8u16(rts15..8) || expand_prec8u16(rts7..0))
The two right-most unsigned integer byte values from the four right-most byte elements in register rts are expanded to create two unsigned halfword values that are then written to destination register rdt. The precision expansion is achieved by pre-pe nding eight most-significant zero bits to each original value to generate each 16 bit halfword value.
Bit 31 of the result is extended into the 32 most-significant bits of the destination register.
No data-dependent exceptions are possible.
The operands must be values in the specified format. If they are not, the results are UNPREDICTABLE and the values of the operand vectors become UNPREDICTABLE.
tempB15..0 = 08 || GPR[rts]15..8 tempA15..0 = 08 || GPR[rts]7..0 GPR[rdt]63..0 = (tempB15)32 || tempB15..0 || tempA15..0
Reserved Instruction, DSP Disabled