5 memory formats, 1 byte-invariant big-endian format, 2 little-endian format – ARM Cortex R4F User Manual

Page 52: Memory formats -6, Figure 2-1, Byte-invariant big-endian (be-8) format -6, Figure 2-2, Little-endian format -6

Advertising
background image

Programmer’s Model

ARM DDI 0363E

Copyright © 2009 ARM Limited. All rights reserved.

2-6

ID013010

Non-Confidential, Unrestricted Access

2.5

Memory formats

The processor views memory as a linear collection of bytes numbered in ascending order from
zero. For example, bytes 0-3 hold the first stored word, and bytes 4-7 hold the second stored
word.

The processor can treat words of data in memory as being stored in either:

Byte-invariant big-endian format

Little-endian format.

Additionally, the processor supports mixed-endian and unaligned data accesses. For more
information, see the ARM Architecture Reference Manual.

2.5.1

Byte-invariant big-endian format

In byte-invariant big-endian (BE-8) format, the processor stores the most significant byte of a
word at the lowest-numbered byte, and the least significant byte at the highest-numbered byte.
Figure 2-1 shows byte-invariant big-endian (BE-8) format.

Figure 2-1 Byte-invariant big-endian (BE-8) format

2.5.2

Little-endian format

In little-endian format, the lowest-numbered byte in a word is the least significant byte of the
word and the highest-numbered byte is the most significant. Figure 2-2 shows little-endian
format.

Figure 2-2 Little-endian format

Memory

Register

Address

A[31:0]

+1

msbyte

lsbyte

+2

+3

B0

0

7

B1

B3

B2

B0

B1

31

24 23

16 15

8 7

0

B2

B3

Memory

Register

Address

A[31:0]

+1

msbyte

lsbyte

+2

+3

b0

0

7

b1

b0

b1

b3

b2

31

24 23

16 15

8 7

0

b2

b3

Advertising
This manual is related to the following products: