Регистры:
Кэш:
для создания этого, простой регистр процессора намного быстрее, чем кэш-память, и в отличие от кэш-памяти, которые хранят данные, инструкции по хранилищу регистра процессора, которые управляют данными инструкцией, которую я имею в виду (адрес, код операции, маленький зажим данных, в которых мы должны действовать...).
Регистры управляемы, можно сохранить и получить информацию от них. Существуют очень немногие из них (на x86, по крайней мере), но очень быстро. Многие из них имеют очень конкретное использование (Указатель команд, Указатель базы, и т.д.) и не должны использоваться пользователем.
Кэш почти абсолютно неконтролируем. Можно делать недействительным его (INVD и привилегированные команды WBINVD), но Вы не можете явно сохранить или получить информацию от него. Это также помещается между памятью и ЦП, таким образом, Вы даже не знаете, работает ли это или нет, если Вы не делаете сравнения синхронизации. Это предназначается, чтобы быть абсолютно прозрачным в операциях. Кроме того, они могут быть иерархическими и довольно большими (сравнительно к регистрам, по крайней мере).
Таким образом, я предполагаю то, что Вы задаетесь вопросом, так как это все только что сохранило байты, почему выбирают некоторых из них как регистры и называют остальных кэшем?
Ну, это было некоторое время, так как я запрограммировал на PIC, но если я помню правильно, что PIC не различает "память" и "регистры", и называет всю свою память "регистрами"; они все совместно используют адресное пространство. Некоторые из них являются особым назначением для вещей как порты IO, но большинство - общая цель.
Действительно ли это - хорошая идея? Хорошо это - очевидно, не ужасное, потому что PIC является довольно успешным микроконтроллером. Но Вы видите, что это имело бы ограничения, когда Вы начинаете увеличиваться для добавления большей памяти и более быстрых часов. (Я не EE, так возьмите это с мелкой частицей соли). Преимущество для выбора нескольких конкретных регистров состоит в том, что они могут быть подключены к меньшему количеству вещей: все подключение проводов к схеме добавляет емкостную загрузку, которая замедляет его. На современной машине с килобайтами кэша, который был бы большой загрузкой для чего-то, Вы хотите получить доступ в основном к каждой инструкции. Я воображаю, там мог бы также стоить преимуществ, потому что Вы могли сделать регистры из широких, быстрых транзисторов и затем уменьшиться для кэша, который не должен быть столь же быстрым.