Как узнать MIPS-инструкцию формата R, I или J
Как узнать, является ли код операции инструкции MIPS "Регистрировать", "Идентифицировать" или "Перейти"? Учитывая эту таблицу из книги, но есть ли способ определить формат кода операции?
1 ответ
Решение
Взгляните на биты кода операции - самые значимые 6 бит. В С, если n
является 32-битной командой dword, выражение для кода операции (n >> 26) & 0x3f
,
Если код операции равен 0, то это команда регистрации.
Если это 2 (j
), 3 (jal
) или 26 (trap
) - это прыжок.
Остальное сразу.
Шпаргалка с кодировкой MIPS, включая список всех кодов операций, доступна здесь и, возможно, в других местах.