Speicherausrichtung auf einem 32-Bit-Intel-Prozessor

Intels 32-Bit-Prozessoren wie Pentium verfügen über einen 64-Bit-Datenbus und holen daher 8 Bytes pro Zugriff. Aufgrund dessen gehe ich davon aus, dass die physikalischen Adressen, die diese Prozessoren auf dem Adressbus ausgeben, immer ein Vielfaches von 8 sind.

Erstens ist diese Schlussfolgerung richtig?

Zweitens sollte man, wenn es korrekt ist, Datenstrukturelemente an einer 8-Byte-Grenze ausrichten. Aber ich habe Leute gesehen, die stattdessen eine 4-Byte-Ausrichtung auf diesen Prozessoren verwendeten.

Wie können sie damit gerechtfertigt werden?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage