почему код функции не может быть вместо кода операции в R-формате инструкции MIPS? - PullRequest
0 голосов
/ 02 июля 2019

Только для команды R-Format определен код функции. Я заметил, что код операции равен нулю для инструкций R-формата. Почему код функции предназначен для идентификации конкретной операции, а не кода операции для инструкций в формате R?

1 Ответ

1 голос
/ 02 июля 2019

MIPS32 имеет что-то вроде 160 различных инструкций (дайте или возьмите несколько в зависимости от точной ревизии), в то время как поле код операции фиксировано в 6 битах.

Очевидно, что вы не можете кодировать 160 уникальных значений в 6 битах. Поэтому некоторые инструкции используют один и тот же код операции и используют другие биты в слове инструкции для однозначной идентификации команды.

Для инструкций R-типа используется код операции 0 (он же SPECIAL ) или 0x1C (он же SPECIAL2 ). И 6 младших разрядов слова инструкции - называемые функция биты - определяют точную инструкцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...