我正在尝试查找从用户获取的数量的素数。我正在使用“Eratosthenes的Sieve”方法(http://en.wikipedia.org/wiki/Sieve_of_Eratosthenes)。让我们说采取的数字是n。我存储数字Array1 2,n。 (例如2,3,4,5 ...... n)。然后我会计算找到素数的数量,但首先我想找到错误(异常发生在PC = 0x0040004c, 数据/堆栈中的错误地址读取:0x10040000)计数。此代码现在正在运行,但如果n <65532。我想找到n = 1000000,但是给出了一个错误,我没有找到我的错。如果有人可以帮助我,我感谢...谢谢。
.data 0x10000000
Input: .asciiz "Please enter an integer number: "
Array1:
.word ?
.text
.globl main
main:
addi $t1,$0,2
li $v0,4
la $a0, Input
syscall
li $v0,5
syscall
addi $t3,$v0,1
la $s0,Array1
FirstGenerationNumbers:
sw $t1, 0($s0)
addi $s0,$s0,4
addi $t1, $t1, 1
beq $t1, $t3, FinishGeneration
j FirstGenerationNumbers
FinishGeneration:
jr $ra
答案 0 :(得分:2)
Array1:
.word ?
我认为技术上可能是一个数组,但它只是一个非常小的数组: - )
我想你可能想为你的数组分配一个单词。