asm_book/section_1/structs
Perry Kivolowitz 88c8f496c4 Document hex dump display convention in alignment chapter
Closes #22.

The alignment chapter's hex dump examples (e.g. "0011 eeff ccdd aabb"
for a little-endian long initialized to 0xaabbccddeeff0011) are correct
under the default hexdump(1) output convention: bytes grouped into
16-bit little-endian words, each word printed most-significant byte
first. But the chapter never told the reader which convention was in
use, so a reader reproducing the example with xxd or hexdump -C (both
byte-oriented, showing raw memory order) would get a different-looking
result and conclude the book had an endianness bug. That is exactly
what issue #22 reported, and it is also part of what the #33 filer
flagged as "there are no instructions about how to do such a thing"
for hex dumps in this chapter.

Fix: one new subsection "A Note on Hex Dumps" placed before Example 1,
stating the convention explicitly and warning xxd / hexdump -C users
that the bytes within each pair will appear swapped relative to the
examples. The examples themselves are unchanged; they were already
self-consistent under the word-oriented convention.

Rejected alternative: rewriting all the examples in byte-oriented
(xxd) form. That would have matched what most modern readers reach
for, but would also have required regenerating every hex dump in the
chapter and losing continuity with any reader who already absorbed
the current notation. A single explanatory paragraph is less invasive
and teaches the distinction, which is useful in its own right.

No test coverage applies; this is prose.
2026-04-19 02:20:10 -05:00
..
alignment.md Document hex dump display convention in alignment chapter 2026-04-19 02:20:10 -05:00
alignment.pdf added this 2023-05-17 10:38:24 -05:00
apple-linux-convergence.S added MOD to apple-linux 2023-03-31 09:42:08 -05:00
badges.jpeg discussion of alignment including little endianess 2022-06-11 12:16:27 -05:00
defining.md WTF was I thinking before? 2024-02-28 10:47:55 -06:00
defining.pdf adde pdf 2024-02-28 10:48:54 -06:00
practice.S added structs/practice.S 2023-03-04 15:10:27 -06:00
test01.c added structs 2022-06-11 16:26:29 -05:00
test02.c discussion of alignment including little endianess 2022-06-11 12:16:27 -05:00
test02.s WTF was I thinking before? 2024-02-28 10:47:55 -06:00
test02_companion1.s WTF was I thinking before? 2024-02-28 10:47:55 -06:00
test02_companion2.s WTF was I thinking before? 2024-02-28 10:47:55 -06:00
test02_companion3.s WTF was I thinking before? 2024-02-28 10:47:55 -06:00
this.cpp added this 2023-05-17 10:38:24 -05:00
this.md improved text 2024-02-28 16:12:29 -06:00
this.pdf improvements to text 2024-02-28 16:40:12 -06:00
this.s added this 2023-05-17 10:38:24 -05:00
using.md added structs 2022-06-11 16:26:29 -05:00
using.pdf updated PDFs 2023-01-18 08:26:45 -06:00