Zitat von
dizzy:
Also tatsächlich wirklich Alignment... ist ja nen Dingen! Hat das wirklich merkbaren Einfluss auf die Geschwindigkeit?
Ja, denn es macht einen rießen Unterschied, ob man zwei Speicherzugriffe braucht, um den nächsten Befehl zu laden, oder nur einen. Wenn die nächste Anweisung auf Adresse $0001 liegt, denn muss zuerst das DWORD von $0000-$0003 gelesen werden und dann $0004-0007. Daraus muss dann noch von $0001-$0004 das DWORD ermittelt werden. Und das geschieht auch, wenn man nur einen 1 Byte Befehl hat, da der L1/2-Cache eben auf DWORD oder sogar auf QWORD ausgelegt ist.
[EDIT]
Ich hoffe ich erzähle hier jetzt keinen Stuss. Das ist jetzt auch schon eine Weile her, das ich das gelernt und ausprobiert habe.