version 2009-07-12

LSH : Load Sign-extended Half-word (and update the pointer)

Data : This instruction extracts one half-word (16 bits) from a given register, emulating the "Load Halfword" instruction of Load-Store architectures. The data is shifted right, according to an offset, and the MSB are filled with the sign bit of the extracted data.

This instruction is available only with YASEP32. Because this instruction can't go beyond a word boundary, only offsets 0, 1 and 2 are valid. Attempts to use an offset of 3 triggers an alignment trap.

Address : If the source register is a static register, then the offset is zero. If the source is a Data register, the 2 LSBs of the corresponding Address register are used as offset, and this Address register is updated with this offset.

Note : this instruction was meant to use auxiliary data from other registers. As of 2009-07, in order to use the auto-update function, the extended form (32-bit instruction) must be used.