This preview shows page 1. Sign up to view the full content.
Unformatted text preview: hen the chip is powered up. Continuing our earlier example, suppose the variable x of type int and at address 0x100 has a hexadecimal value of 0x01234567. The ordering of the bytes within the address range 0x100 through 0x103 depends on the type of machine: Big endian ¡¡¡
Little endian 0x100 0x101 0x102 0x103 01 23 45 67 ¡¡¡ ¡¡¡ ¡¡¡ 0x100 0x101 0x102 0x103 67 45 23 01 Note that in the word 0x01234567 the high-order byte has hexadecimal value 0x01, while the low-order byte has value 0x67. People get surprisingly emotional about which byte ordering is the proper one. In fact, the terms “little endian” and “big endian” come from the book Gulliver’s Travels by Jonathan Swift, where two warring factions could not agree by which end a soft-boiled egg should be opened—the little end or the big. Just like the egg issue, there is no technological reason to choose one byte ordering convention over the other, and hence the arguments degenerate into bickering about sociopolitical issues. As long as one of the conventions is selected and adhered to consistently, the choice is arbitrary.
View Full Document
- Spring '10
- The American