Думаю, я знаю, как вести себя с этим делом, но я просто хочу убедиться, что все правильно. Скажем, у вас есть следующий код на C:
int myInt = 3;
int* myPointer = &myInt;
int** mySecondPointer = &myPointer;
P содержит адрес, указывающий на место в памяти, имеющее другой адрес. Я хочу изменить второй адрес. Итак, код MIPS:
la $t0, my_new_address
lw $t1, ($a0) # address that points to the address we want to modify
sw $t0, ($t1) # load address into memory pointed to by $t1
Вы бы так поступили?





Да, насколько я могу судить, это правильно. Было бы проще, если бы вы использовали одни и те же имена переменных (например, символы вместо имен жестких регистров).
Почему вы просто не скомпилировали c-код и не взглянули на файл списка или вывод сборки? Я всегда так делаю, когда сомневаюсь.