Декодирование многодлинных кодов операций (SPU ISA) - PullRequest
0 голосов
/ 08 апреля 2019

Я создал дамп 32-битных инструкций в шестнадцатеричном виде из ассемблера, который я реализовал. Подмножество дампа инструкций показано ниже:

enter image description here

Операционные коды для команд имеют длину 4, 7, 8, 9 и 11. Они всегда являются первыми битами в инструкции. У меня проблемы с пониманием того, как бы я расшифровал инструкции, если бы коды операций были разной длины?

Например: когда я читаю одну инструкцию, как я узнаю, сколько бит я должен прочитать для кода операции?

Вот изображение форматов инструкций: format

Спасибо

1 Ответ

0 голосов
/ 08 апреля 2019

Я понял это.Я прочитал максимальное количество битов кода операции (11) для всех инструкций и игнорирую биты, которые не имеют смысла (то есть биты, которые не приведут к возможному коду операции).

...