Co oznacza wyrównanie do 16-bajtowej granicy w x86
Oficjalny przewodnik optymalizacji Intela ma rozdział na temat przekształcania poleceń MMX w SSE, w których określają status odłogowania:
Instrukcje obliczeniowe, które wykorzystują operand pamięci, który nie może być wyrównany do 16-bajtowej granicy, muszą zostać zastąpione 128-bitowym obciążeniem bez wyrównania (MOVDQU), po którym następuje ta sama operacja obliczeniowa, która wykorzystuje zamiast tego operandy rejestru.
(rozdział 5.8 Konwersja z 64-bitowych na 128-bitowe liczby całkowite SIMD, str. 5-43)
Nie rozumiem, co mają na myśli, mówiąc „może nie być wyrównany do granicy 16 bajtów”, czy możesz to wyjaśnić i podać kilka przykładów?