如何前进到MIPS 32中的下一个节点?
我有这个功能:如何前进到MIPS 32中的下一个节点?,mips,mips32,Mips,Mips32,我有这个功能: makenode: li $v0, 9 #allocate memory li $a0, 8 #8 bytes syscall #$v0 <---- address move $s1, $v0 #$s1 = address of first node sw $t4, 0($s1) #$t4
makenode:
li $v0, 9 #allocate memory
li $a0, 8 #8 bytes
syscall #$v0 <---- address
move $s1, $v0 #$s1 = address of first node
sw $t4, 0($s1) #$t4 is a string
sw $s2, 4($s1) #copy address of 2nd node
#into first node
makenode:
li$v0,9#分配内存
li$a0,8#8字节
syscall#$v0您所说的$2
是什么?为什么您认为它还没有被创建?它应该是下一个节点,mym的问题是,在创建实际节点之前,我可以指向该地址吗?由于对函数的下一次调用将创建实际节点,只要寄存器包含新节点的地址,您就可以自由地传递它,只需知道,显然,如果您试图在地址有效之前使用该地址,您可能会segfault
也可能有指向下一个节点的指针?假设我有$s1,但我希望它指向$s2,函数的下一个调用将在这个位置创建一个节点(现在是$s1)。所以这个函数调用可以在lopp中工作。