sst


Data is stored (short format).

[Syntax]

-

sst.b reg2, disp7[ep]

-

sst.h reg2, disp8[ep]

-

sst.w reg2, disp8[ep]

 

The following can be specified for displacement (disp7/8):

-

Absolute expression having a value of up to 7 bits for sst.b or 8 bits for sst.h and sst.w

-

Relative expression

[Function]

The sst.b, sst.h, and sst.w instructions store the data of the lower 1 byte, lower 1 halfword, and 1 word, respectively, of the register specified by the first operand to the address obtained by adding the displacement specified by the second operand to the contents of register ep.

[Description]

The assembler generates one sst machine instruction. Base register specification "[ep]" can be omitted.

[Flag]

CY

---

OV

---

S

---

Z

---

SAT

---

[Caution]

-

If a value that is not a multiple of 2 is specified as disp8 of sst.h, and if a value that is not a multiple of 4 is specified as disp8 of sst.w, the assembler aligns disp8 with multiples of 2 and 4, respectively, and generates a code. Then, the assembler outputs the following messages.

W0550019 : Illegal operand (immediate must be multiple of 2).

-

If a value exceeding 127 is specified as disp7 of sst.b, and if a value exceeding 255 is specified as disp8 of sst.h and sst.w, the assembler outputs the following message, and generates codes disp7 and disp8, masked with 0x7F and 0xFF, respectively.

W0550011 : Illegal operand (range error in immediate).