CPU
2.6 Data Formats
2
2.6.2 Data Formats
(1) Data formats in registers
The data sizes in the M32R-FPU registers are always words (32 bits).
When loading byte (8-bit) or halfword (16-bit) data from memory into a register, the data is sign-extended
(LDB, LDH instructions) or zero-extended (LDUB, LDUH instructions) to a word (32-bit) quantity before
being loaded in the register.
When storing data from a register into a memory, the 32-bit data, the 16-bit data on the LSB side and the 8-
bit data on the LSB side of the register are stored into memory by the ST, STH and STB instructions,
respectively.
From memory
(LDB, LDUB instructions)
<Load>
Sign-extended (LDB instruction) or
zero-extended (LDUB instruction)
b0
b0
b0
24
b31
Byte
Rn
Rn
Rn
From memory (LDH, LDUH instructions)
Sign-extended (LDH instruction) or
zero-extended (LDUH instruction)
16
b31
b31
Halfword
From memory (LD instruction)
Word
<Store>
b0
24
b31
Byte
Rn
Rn
Rn
To memory (STB instruction)
b31
b0
b0
16
Halfword
To memory (STH instruction)
b31
Word
To memory (ST instruction)
Figure 2.6.2 Data Formats in Registers
32180 Group User’s Manual (Rev.1.0)
2-9