6.2.1.3 long Data Types (signed and unsigned)
The long and unsigned long data types are stored in a full 64-bit register (see Figure 6-3). In big-endian mode, the lower address is loaded into bits 32-63 of the register and the higher address is loaded into bits 0-31 of the register. In little-endian mode, the lower address is loaded into bits 0-31 of the register and the higher address is loaded into bits 32-63s of the register.
Figure 6-3 64-Bit Data Storage Format Signed 64-bit long
Upper half of the register |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
S |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
Lower half of the register |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
I |
LEGEND: S = sign, U = unsigned integer, I = signed integer, X = unused, MS = most significant, LS = least significant |
Figure 6-4 Unsigned 64-bit long
Upper half of the register |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
Lower half of the register |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
U |
LEGEND: S = sign, U = unsigned integer, I = signed integer, X = unused, MS = most significant, LS = least significant |