Я сейчас изучаю компьютерную организацию и архитектуру. Нам дали некоторые упражнения. Один из них - преобразовать код сборки в машинные команды.Преобразование сборки в машинный код
Я застрял в преобразовании movia
в инструкцию по эксплуатации.
Я знаю, что он состоит из двух операций, orhi
и addi
.
Это код в сборке:
movia r8, 50000
Осуществление гласит, что r0
является 0x0
и r8
является 0x8
.
Таким образом, orhi
будет: orhi r8, r0, %hiadj(50000)
и оных бы: addi r8, r8,%lo(50000)
Я получил orhi
к:
00000 01000 1100001101010000 110100
___________________r0____r8_______50000________0x34(opcode)
Но я должен использовать %hiadj
на 50000! Я не знаю, как это сделать? Я немного искал его, но не нашел ответа достаточно ясным.
Я новичок в этом, но очень хочу понять! Итак, как вы используете %hiadj
? Извините, если вопрос не ясен, но если вы хотите помочь, я попробую и объясню больше.