в каких случаях память адресуется в байтах или словах и почему - PullRequest
4 голосов
/ 27 марта 2012

Память может быть адресуемой в байтах или адресной (2 байта, 4 байта и т. Д.) (Пожалуйста, исправьте меня, если я ошибаюсь).

Зависит ли это (от адресации в байтах или от адресации слова) от архитектуры процессора? Если да, то в каких случаях мы используем адресную память в байтах и ​​в каких случаях мы используем адресную память в виде слова?

И каковы причины этого? Другими словами, почему байт памяти адресуем (в тех случаях, когда это так) и почему слово адресуемо (в случае, если это так) и причины этого. Я видел несколько вопросов о байтовой адресуемой памяти на этом сайте, но ни один из них не дал ответа на эти вопросы.

1 Ответ

4 голосов
/ 28 марта 2012

Очевидно, что разное программное обеспечение должно работать с данными / переменными разных типов и размеров, и часто возникает необходимость оперировать несколькими разными в одном и том же коде.

Возможность доступа к этим переменным напрямую и в целом, независимо от размера, упрощает программирование, поскольку вам не нужно склеивать, скажем, 4 8-битных байта, чтобы сформировать 32-битное значение или аналогичным образом извлечь отдельное 8. -битные значения из 32-битной ячейки памяти.

Существуют процессоры, которые не очень гибки с точки зрения изначально поддерживаемых размеров данных. Например, цифровые сигнальные процессоры с фиксированной точкой. Некоторые могут напрямую обращаться к памяти только как 16-битные слова и 32-битные двойные слова. Я думаю, что отсутствие 8-битной байтовой адресации в них не является большой проблемой, потому что ожидается, что они будут выполнять большую часть обработки сигнала, а не универсальны и подходят для вычислений общего назначения, а выборки сигналов редко бывают 8-битными. (это слишком грубо), чаще всего они 16-битные.

Поддержка меньшего размера данных и других функций в аппаратном обеспечении делает это оборудование более простым и дешевым (в том числе с точки зрения потребляемой энергии), что становится важным, если речь идет о тысячах и миллионах устройств.

Разные проблемы требуют разных решений, отсюда и разнообразие.

...