我目前正在使用一台 sparc 计算机,我想知道一个数字是否是素数。
这是代码的一部分:
mov 0,%y
mov 3, %l1
nop
nop
nop
sdiv %l1,2,%l3
rd %y, %l6
cmp %l6, 0
所以基本上我们这里有 3/2。所以应该有1的提醒。这个提醒应该放在%Y寄存器中。但是当我查看 %Y 时,它仍然是 0。为什么 %Y 仍然是 0,而它应该显示 1 的提醒?
最佳答案
根据SPARC Architecture Manual ,第 116 页,是否在 sdiv 中设置 %y 是一个实现选项。显然,它也是一个实现选项,无论是在硬件还是软件中实现,所以似乎有些软件实现没有设置%y。
关于assembly - sparc 程序集和 %y 寄存器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1484679/