190 likes | 1.2k Views
Byte Addressability. Bytes are always 8 bits Word length typically ranges from 16 to 64 bits. Memory location assignments refer to successive byte locations in memory Memory is byte-accessible. For 8086, a Word is 16-bits (2 bytes). Word Length. For the 8086, a Word is 16-bits (2 bytes).
E N D
Byte Addressability • Bytes are always 8 bits • Word length typically ranges from 16 to 64 bits. • Memory location assignments refer to successive byte locations in memory • Memory is byte-accessible. • For 8086, a Word is 16-bits (2 bytes)
Word Length • For the 8086, a Word is 16-bits (2 bytes)
Little-Endian Formatting • There are two ways that byte addresses can be assigned across words. • Big-Endian – higher byte addresses are used for the less significant bytes of a word • Little-Endian – lower byte addresses are used for the less significant bytes of a word • The Intel Architecture uses Little Endian
Little-Endian Assignments • .data • List BYTE 10, 20, 30, 40, 50, 60 *note that with byte size data, there is no difference between Big-Endian and Little-Endian
Big-Endian Assignments • .data • List BYTE 10, 20, 30, 40, 50, 60 *note that with byte size data, there is no difference between Big-Endian and Little-Endian
Little-Endian Assignments • .data • List WORD 1020h, 3040h, 5060h *note that with word size data, the low-order byte is stored in a lower address
Big-Endian Assignments • .data • List WORD 1020h, 3040h, 5060h *note that with word size data, the low-order byte is stored in a higher address
Little-Endian Assignments • .data • List DWORD 10203040h, 50607080h *note that with word size data, the low-order byte is stored in a lower address
Big-Endian Assignments • .data • List DWORD 10203040h, 50607080h *note that with word size data, the low-order byte is stored in a higher address
Big-Endian Assignments • .data • List DWORD 00000006h *note that with word size data, the low-order byte is stored in a higher address
Little-Endian Assignments • .data • List DWORD 00000006h *note that with word size data, the low-order byte is stored in a higher address
Big-Endian Assignments • .data • List BYTE “This is a string”,0 *note: These are the ASCII values ‘T’=54H, ‘h’=68H, ‘ i’= 69H …
Little-Endian Assignments • .data • List BYTE “This is a string”,0 *note: Strings are saved as byte data