问题描述
我正在尝试为按位筛选算法编写代码,该算法检测从 0 到 n 的素数数量。该程序尚未完成,但是,它应该从 used 中读取 n 并且该程序应该使用带有 n 的 c++ 函数 memset,其中 memset 是一个宏。我不断收到错误“未知的宏参数”。有谁知道我该如何解决它?
.data
Array:.space 100
Prime: .space 100
Message1: .asciiz "Please enter the number n until which you want to find the prime numbers: "
Message2: .asciiz "Enter the number of 1s per prime number representation allowed: "
.text
#print message to ask for n
li $v0,4
la $a0,Message1
syscall
#read value from user
li $v0,5
syscall
add $s1,$v0,$s1 #store n in value
#print message to ask for y
li $v0,Message2
syscall
#read value from user
li $v0,5
syscall
add $s2,$s2 #store y in value
la $t3,Prime #store empty array address
#sieve algorithm:
.macro memset(%prime,%primesize)
add $t2,%primesize,$zero #copy of n/64
memesetloop:
sw $zero,(%prime)
add %prime,%prime,4
sub %primesize,1
bne %primsesize,$zero,memesetloop
.end_macro
BitwiseSieve:
div $t1,$t0,64 #n/64
memset($t3,$s1)
li $t4,3
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)