Я готовлюсь к концу семестра и меня смущает следующий вопрос. Если у ЦП есть 16-битная адресная шина и 8-битные слова, сколько памяти в КБ он может адресовать? Мое понимание скажет мне, что он может адресовать 64 КБ, однако для этого я просто использовал 2 ^ 16 = 65 536. Это вычисление никогда не принимало во внимание 8-битные слова, поэтому я не уверен, что это правильно. И что означает 8-битные слова?
ура
Ответы:
Одним словом, в большинстве архитектур это самый большой фрагмент данных, который может быть передан в рабочую память и из нее за одну операцию.
Максимально возможный размер адреса, используемый для обозначения места в памяти, обычно называется аппаратным словом.
Таким образом, ваш процессор сможет адресовать 64 КБ (2 ^ 16), но сможет передавать только за одну операцию 8 бит.
источник
Машинное слово или обычно просто слово - это самая большая единица данных, которой ЦПУ может манипулировать в целом, используя общие инструкции. Это не имеет ничего общего с адресацией памяти.
Важно единица разрешения адресов , который обычно 8-битный байт даже на 16/32/64 битных архитектурах. Он не должен быть равен размеру машинного слова, но, вероятно, это в вашем случае.
8-разрядный адресуемый модуль в сочетании с 16-разрядной адресной шиной составляет 64 КБ ОЗУ, к которому может обращаться ЦП.
источник
В контексте размер слова соответствует размеру адреса для описания шины памяти. В память уходит 16 бит, поэтому она может выбирать 64 места. Затем каждое местоположение содержит 8 битов.
Размер слова здесь может соответствовать или не соответствовать размеру блока вычислений ЦП, и это может соответствовать или не соответствовать логической детализации при адресации.
Например, процессор может объявить 16-битную шину (для этой цели). Он использует 16-битные адреса в своих инструкциях, и, как ваш пример, имеет 64ки. Но у этого есть 15 битов адресной шины и 16 битов шины данных. Для этого нужны только 32ки адреса и всегда получается 2 байта с каждой локацией. (Если команде требуется 1 байт, она отправит адрес с наименьшим пропущенным битом, извлечет оба байта на этом шаге, а затем посмотрит на младший бит желаемого адреса, чтобы решить, какую половину использовать.)
Обратите внимание, что переключение банков, PAE и т. Д., Упомянутые другими, здесь не имеют значения. Блок управления памятью может использовать 16-разрядные адреса и иметь 20-разрядный аппаратный адрес, поэтому ЦПУ необходимо переключать и отображать объекты, чтобы использовать фактический 20-разрядный диапазон адресов микросхем ОЗУ, которые можно адресовать.
Не забудьте указать единицы в ваших ответах. «64ki». Которого? 8-битные слова, делающие это (пока) 64ки байтов адресуемой оперативной памяти. Этот шаг устраняет путаницу и делает такие проблемы тривиальными.
источник
Вы также должны использовать размер слова в расчетах. Ответ 64 КБ.
Вы можете адресовать 2 ^ 16 слов, и каждое слово является 8-битным (= 1 байт). Поэтому это 64 КБ.
Если размер слова был 16 бит. Ответ будет 128 КБ.
источник
У этого есть две стороны: что ваш инструктор, вероятно, хочет, чтобы вы ему рассказали, и какова реальность.
Сначала то, что ваш инструктор, вероятно, хочет, чтобы вы сказали ему.
«16 бит могут адресовать 2 ^ 16 ячеек памяти, каждая ячейка имеет 8 бит. Таким образом, мы можем адресовать 524288 бит (65536 октетов) памяти».
Это, однако, отражает довольно упрощенное мировоззрение. В реальности все сложнее, и для окончательного ответа требуется больше информации. Некоторые из способов, которыми реальные системы могут быть более сложными, чем это, включают.
источник