x86 и Обращение Памяти

Я читал на моделях памяти в книге блока, которую я забрал, и у меня есть вопрос или два. Скажем, то, что адресная шина имеет 32 строки, шина данных имеет 32 строки, и ЦП является 32-разрядным (для простоты). Теперь, если ЦП выполняет запрос чтения и отправляет адрес на 32 бита, но только нуждается в 8 битах, все 32 бита возвращаются так или иначе? Кроме того, адреса в памяти все еще обращены на корректный байт? Таким образом, выбирающий один байт возвратил бы 0000 0001 для обращения 0000 0004?

6
задан Ciro Santilli 新疆改造中心法轮功六四事件 30 October 2015 в 20:22
поделиться

2 ответа

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

Тем не менее, в наши дни редко можно читать прямо из памяти. У процессоров есть кеши, с которыми вы взаимодействуете 99% времени, и когда данных нет в кеше, вводится целая строка (несколько слов), а затем вы все равно читаете из кеша.

Также обратите внимание, что многие современные процессоры фактически имеют 64-битные шины.

8
ответ дан 10 December 2019 в 00:36
поделиться

Вы действительно должны прочитать это: Что каждый программист должен знать о памяти

2
ответ дан 10 December 2019 в 00:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: