Особенность выравнивания в памяти
Автор: par0wo3zz
CPU читает и пишет данные, выровненные в памяти намного быстрее чем какие-либо другие данные. Любая переменная n-байтового тип данных является выровненной в памяти, если адрес её начала делится нацело на n. например, 32х-битное целое (int) является выровненным в памяти, если адрес его начала в памяти 0x4000000. Тот же самый int не является выровненным, если адрес его начала 0x4000002, поскольку этот адрес не делится нацело на 4 байта==32 бита.
Вы можете сами провести небольшой эксперимент с выравниванием в памяти и с тем, как оно влияет на время доступа, использовав следующий кусок кода: