Вопрос

Как именно блока управления в ЦП извлекает данные из регистров?Это получает немного бит?

Например, если я добавляю два номера, A + B, как вычисление происходит на уровне памяти?

Это было полезно?

Решение

Покажем, у вас есть процессор с шестнадцатью 32-разрядными регистрами и устройством, который может добавлять 32 бит целых чисел. Очень упрощенный способ добавить регистр x и зарегистрировать y и хранить результат в регистре z Это:

Во-первых, вы создаете оборудование, которое дает номер X, может выбрать первый бит регистра X и переместить его до 1-го бита «Operand1». Это на самом деле довольно сложно, потому что X может быть одним из 16 значений, и оборудование должно быть способно прочитать первый бит любой из 16 регистров.

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

В-третьих, мы продублируем все это с соответствующими изменениями для перемещения регистра Y на «Operand2».

Wherth, мы создаем аппаратное обеспечение, которое можно добавить Operand1 и Operand2 и хранить сумму в 32-битном месте «Вывод»

и пятый, мы создаем оборудование, которое может принять значение в «выводе» и хранить его в регистрацию z.

Другие советы

ЦП имеет прямой доступ к регистраторам.Если A и B уже в регистрах, то ЦП может выполнять дополнение напрямую (через арифметическую логику) и хранить вывод в одном из регистров.Нет доступа к памяти не требуется.Однако вы можете захотеть переместить ваши данные A и B из памяти или стека в регистры и наоборот.Это отдельные операции.

Регистры

могут быть разных размеров от 8 до 64 бита, это зависит от архитектуры CPU.На реестрами CPU x86-64 64бит, таким образом, добавление двух 64-битных чисел - это одна операция.

( CPU регистры считаются частью процессора чаще, чем память. Поразительно, адресация очень отличается.)
Блок управления обычно не доступа к значениям от регистров общего назначения:

Он контролирует корпоративные значения регистров, например, ALU.По словам .

(Там имели такие вещи, как Dec PDP-8 / S или Motorola 14500.)

Есть архитектура ( "логические" регистры ), и есть реализация , где Регистрация переименования Абстрации логических регистров от физических регистров.

Инструкции по двум операнду приведут к множеству Read Ports .

(Далее есть Параллелизм уровня обучения , Несколько портов записи тоже).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с cs.stackexchange
scroll top