2012-04-29 2 views
0

Im, рассматривая проблему, когда задана инструкция MIPS, я должен записать десятичное значение из 4 полей, соответствующих опкоду, rs, rt и функции. Я понимаю, что десятичное значение для rs и rt - это просто десятичные представления регистров (т. Е. $ S0 равно 16), но как я могу вычислить 16-битный функциональный код?функциональные коды для архитектуры MIPS

+0

Просто преобразуйте 16-битное двоичное число (или четырехзначный шестнадцатеричный номер) в десятичный. – alf

+0

двоичный файл не указан, отредактирует q с изображением проблемы. – jfisk

ответ

0

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

0

Каждая инструкция имеет свой код операции &. Вы можете найти опкоды здесь, например:

https://www.student.cs.uwaterloo.ca/~isg/res/mips/opcodes

Например, Адди находится в двоичной системе в течение первых 6 байт (опкод), а затем 2x5 байт для регистров 001000, а затем 16 байт для текущее значение

add is 000000 (код операции), за которым следуют 3x5 байт для регистров, 00000 для суммы сдвига (не используется для этой инструкции), за которым следует 100000 для кода функции.

+0

Данная ссылка больше не указывает на коды операций. Можете ли вы его обновить? –