Если у нас есть система с 32-битными командными словами, из которых 7 бит выделены для кодов операций; максимальная основная память возможна для такой системы, 2 ^ 32 слова или это 2 ^ 25 слов?
2 ответа
Обычно указатели памяти будут находиться в каком-то регистре, а не в самом коде операции, поэтому, если у вас есть 32-битное слово инструкции, из которых 7 битов - это код операции, из оставшихся 25 битов некоторые биты могут быть назначены для комбинаций регистров, используемых код операции (например, src/destination и т. д.).
Так что для инструкции, как
MOV MEM(R1) MEM(R3)
в зависимости от архитектуры вашей машины, R1 и R3 могут иметь длину 32 бита или 64 бита, или как бы долго это ни было задумано. Адресация в памяти не должна быть ограничена какой-либо величиной ширины команды, за исключением случаев, когда она разработана таким образом.
Максимальная адресуемая память зависит от размера адресного регистра . Если ваша система спроектирована таким образом, что для кода операции используются 7 битов, поэтому для адресации в вашем регистре команд осталось 25 битов, а регистр адресов имеет длину 25 битов, тогда да, общая адресуемая память составляет 2 ^ 25 слов.
Возьмите этот базовый компьютерный пример из Архитектуры компьютерной системы Морриса Мано:
15-й бит - это I бит, который представляет режим адресации (прямой / косвенный).
Для кода операции есть 3 бита. Адресный регистр во введенной базовой компьютерной архитектуре составляет 12 бит. Видите ли, система разработана таким образом. Проверьте размер регистра вашего адреса, и вы найдете свой ответ.