2017-01-20 26 views
0

В настоящее время мы используем 32-битные и 64-разрядные типы ЦП. Я знаю концепцию этих архитектур. Но почему он спроектирован как 16,32 или 64 соответственно. Почему мы не можем создать такую ​​архитектуру, как 10,20,30 или любые другие кратные числа. В чем проблема, с которой мы столкнемся, если мы это создадим?Почему архитектура процессора спроектирована как 32 бита и 64 бит

+0

32, 64 кратны номеру 2. Поскольку компьютер основан на двоичном коде ... –

+0

@MartinZhai Даже 10, 20 также кратно 2. правильно? – mrg

+0

Извините, что я действительно хочу сказать: * power * not * multiple *. –

ответ

2

Это имеет мало общего с полномочиями двух.
Это в основном исторический артефакт.

У нас/была архитектура с 36-bit, 24-bit например.
Википедия имеет whole table с архитектурой и размером слова.

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

Количества, такие как 18, 24, 36 бит, возникают из-за того, что в середине 20-го века компьютеры использовали 6 бит на символ и чтобы сэкономить некоторый провод, дизайнеры использовали меньше, но более широкие регистры.

Каждый регистр был таким же широким, как и кратный размеру символа, это по-прежнему верно сегодня, когда размер символа составляет 8 бит (из-за диффузии в то время EBCDIC от IBM).

Тенденция удвоить размер регистра (который генерирует мощность двух, если вы начинаете с мощности в два раза) обусловлена ​​достижениями процесса интеграции, позволяя создавать более плотные чипы.
Преимущество состоит в том, что наибольшее количество (скажем, 64) всегда является целочисленным кратным каждые наименьшее количество (например, 64 = 2 * 32 = 4 * 16 = 8 * 8).

Это оказывается особенно хорошо, когда речь идет о параллельной/векторной обработке.
Например, 128-битный регистр можно рассматривать как вмещающий 16 байтов или 4 32-битных одинарной точности, если размер регистра равен 120-битным, то он все равно будет содержать целое число байтов (15), но только 3 FP с потерей 24 бит.

Если IBM застряла с 6-битными байтами, сегодня у нас будут 6, 12, 24, 48-битные архитектуры.
Силы двух очень удобны в CS, но в этом случае они всего лишь побочный эффект.

 Смежные вопросы

  • Нет связанных вопросов^_^