PADDUSB         Add Unsigned with Saturation on Byte

PADDUSB destination, source CPU: MMX

Logic
mm(7..0) <- SaturateToUnsignedByte( mm(7..0) + mm/m64 (7..0) )
mm(15..8) <- SaturateToUnsignedByte( mm(15..8) + mm/m64(15..8) )
mm(23..16) <- SaturateToUnsignedByte( mm(23..16) + mm/m64(23..16) )
mm(31..24) <- SaturateToUnsignedByte( mm(31..24) + mm/m64(31..24) )
mm(39..32) <- SaturateToUnsignedByte( mm(39..32) + mm/m64(39..32) )
mm(47..40) <- SaturateToUnsignedByte( mm(47..40) + mm/m64(47..40) )
mm(55..48) <- SaturateToUnsignedByte( mm(55..48) + mm/m64(55..48) )
mm(63..56) <- SaturateToUnsignedByte( mm(63..56) + mm/m64(63..56) )

PADDUSB adds the unsigned bytes of the source operand to the unsigned
bytes of the destination operand and stores the result in destination.

If the result is larger than the range of an unsigned byte (overflow),
the value is saturated to 0FFh. If the result is smaller than the
range of an unsigned byte (underflow), the value is saturated to 00h.

The destination operand is an MMX register. The source operand can
either be an MMX register or a 64-bit memory operand.


Opcode Format
0F DC /r PADDUSB mm/m64