Please read this page from the main YASEP interface
MOVH : MOVe Halfword High
Like MOV, this instruction copies either
- a register's content (si4)
(short register form that writes to snd,
or extended register form that writes to dst3)
- a 4-bit immediate value (si4)
(short immediate form that writes to snd,
or extended immediate form that writes to dst3)
- a 16-bit value
(long immediate form with YASEP16 that writes to si4)
- a 20-bit value
(long immediate form with YASEP32 that writes to si4)
to the destination register. However, this data is shifted left by 16 bits and the lower half-word is
filled with Zeroes (like SHL would do). This instruction is created to
make 32-bits data in YASEP32 with code sequences such as:
; put 12345678h in R1
MOVH 1234h R1 ; MSB
OR 5678h R1 ; LSB