I'm reading the Kip Irvine book, "Assembly Language for x86 Processors," and in the section discussing the ALIGN directive, the author mentions that the "CPU processes data stored at even-numbered addresses more quickly than those at odd-numbered addresses." My question, then, is multifacted:
- Why does the CPU process data at even-numbered addresses more quickly?
- How much of an effect would even-numbered vs. odd-numbered addresses have?
- Will a data segment generally start on an even numbered address or does it depend?
In the section detailing the NOP instruction, the author mentions that x86 processors load data from even doubleword addresses more quickly. Then, would an efficiency hierarchy be: addresses that are multiples of 8 (even doublewords, if I understand correctly) > addresses that are multiples of 2 > addresses that are odd?