Как создать структуру в MIPS с помощью этого кода на C? Я что-то написал, но не знаю, как это делается. Я пытаюсь создать двоичное дерево поиска, но не могу понять, как создать структуру. Кто-то, пожалуйста, помогитеСоздать MIPS Binary Search Tree Struct
struct BSTNode
{
struct BSTNode *left;
struct BSTNode *right;
int val;
};
Нравится?
node:
subu $sp, $sp, 32
sw $ra, 28($sp)
sw $fp, 24($sp)
sw $s0, 20($sp)
sw $s1, 16($sp)
sw $s2, 12($sp)
sw $s3, 8($sp)
addu $fp, $sp, 32
# capture the parameters:
addi $s0, $a0, 0 # $s0 = value
addi $s1, $a1, 0 # $s1 = left
addi $s2, $a2, 0 # $s2 = right
li $a0, 12 # it needs 12 bytes for a new node.
li $v0, 9 # sbrk is syscall 9.
syscall
addi $s3, $v0, 0
beqz $s3, main_TESTCASE_ERR_MSG1
sw $s0, 0($s3) # node->number = number
sw $s1, 4($s3) # node->left = left
sw $s2, 8($s3) # node->right = right
move $v0, $s3 # put return value input into v0.
# release the stack frame:
lw $ra, 28($sp) # restore the Return Address.
lw $fp, 24($sp) # restore the Frame Poinputer.
lw $s0, 20($sp) # restore $s0.
lw $s1, 16($sp) # restore $s1.
lw $s2, 12($sp) # restore $s2.
lw $s3, 8($sp) # restore $s3.
addu $sp, $sp, 32 # restore the Stack Poinputer.
jr $ra # return.
## end of node