Выравнивание данных
Выравнивание данных в оперативной памяти компьютеров — способ размещения данных в памяти особым образом для ускорения доступа.
Причины [править]
| ад рес |
данные | |
|---|---|---|
| 9 | ||
| 8 | это слово не выро- внено |
|
| 7 | ||
| 6 | ||
| 5 | ||
| 4 | ||
| 3 | это слово выро- внено |
|
| 2 | ||
| 1 | ||
| 0 |
Центральные процессоры в качестве основной единицы при работе с памятью используют машинное слово, размер которого может быть различным. Однако, размер слова всегда равен нескольким байтам (байт является наименьшей единицей, в которой отсчитываются адреса). Как правило, машинное слово равно
байтам, то есть состоит из одного, двух, четырёх, восьми и т. д. байтов.
При сохранении какого-то объекта в памяти может случиться, что некое поле, состоящее из нескольких байтов, пересечёт «естественную границу» слов в памяти. Некоторые модели процессоров не могут обращаться к данным в памяти, нарушающим границы машинных слов. Некоторые могут обращаться, но к невыровненным данным обращение дольше, нежели к данным, находящимся внутри целого «машинного слова» в памяти.
На практике такое выравнивание означает, что адреса всех данных размером
байт при
(не превосходящих размер слова) должны делиться на
.
Ссылки [править]
- Data alignment: Straighten up and fly right (англ.)
- Перевод «Data alignment: Straighten up and fly right» (рус.)
| Это заготовка статьи о компьютерах. Вы можете помочь проекту, исправив и дополнив её. Это примечание по возможности следует заменить более точным. |

