Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 如何在mips汇编语言中添加负数?_Assembly_Mips - Fatal编程技术网

Assembly 如何在mips汇编语言中添加负数?

Assembly 如何在mips汇编语言中添加负数?,assembly,mips,Assembly,Mips,我需要对一组负数和正数求和,我需要将这些值存储在一个负数和一个正数和中。我该如何准确地添加负数或将它们放入数组中?这能像正常数字一样吗?不寻找任何代码,只是一个提示。我有这段代码,您可以使用它在数组中添加负值和正值。总和存储在寄存器t3中,为负值。我使用了一个循环将这些值相加 .data array: .word 1, 3, 5, 7, 9, -11, -13, -15, -17, 19 length: .word 10 sum: .word 0 average:.word 0

我需要对一组负数和正数求和,我需要将这些值存储在一个负数和一个正数和中。我该如何准确地添加负数或将它们放入数组中?这能像正常数字一样吗?不寻找任何代码,只是一个提示。

我有这段代码,您可以使用它在数组中添加负值和正值。总和存储在寄存器t3中,为负值。我使用了一个循环将这些值相加

.data
array:  .word 1, 3, 5, 7, 9, -11, -13, -15, -17, 19

length: .word 10

sum:    .word 0

average:.word 0

.text

.globl main

.ent main

main:

la $t0, array #array starting index

li $t1,0 #loop index i=0

lw $t2,length #length of array

li $t3,0 #initializing sum = 0



sumloop:

lw $t4, ($t0) #get array[i]

add $t3,$t3,$t4 #addition sum = sum + array[i]



add $t1,$t1,1 #iteration

add $t0,$t0,4 #update array address

blt $t1,$t2, sumloop #loop stopping condition

sw $t3,sum #store sum in t3


li $v0,10

syscall

.end main

是的,和往常一样。您将使用2的补码,但不需要做任何特殊的操作。你为什么不先试试呢?它不起作用,所以现在肯定还有其他问题。我一直收到这三条错误消息。pc=0x00400030发生异常听起来好像是调试器的时候了。