Как найти кодировку инструкций для j цикла
Ответ: 0x810000B, у меня есть ответ, но я просто хочу изучить процесс.
addi $s1, $zero, 0
loop: srl $t0, $t0, 1
beq $t0, $zero, exit
addi $s1, $s1, 1
j loop
Я ссылался на другой пост и, кажется,что я должен получить srl, так как это первая инструкция в цикле.Я получил двоичную кодировку для srl, но теперь я не очень хорошо разбираюсь в части PC + 4.
Из сообщения:
, поскольку адрес инструкции slt равен 0xFFFFFF00, при подсчете каждый раз на 4 адрес инструкции loopEnd (которая является инструкцией j loop) будет 0xFFFFFF2C.
Как это меняется с 0xFFFFFF00 на 0xFFFFFF2C?
Было бы здорово, если бы кто-то мог показать мне шаги, потому что я пытаюсь понять процесс.Спасибо!
Инструкция MIPS J-Format