gpt4 book ai didi

MIPS:n选k函数

转载 作者:行者123 更新时间:2023-12-04 05:01:50 24 4
gpt4 key购买 nike

所以我目前正在用 MIPS 编写一个计算器,我正在尝试编写一个 n 选择 k 函数。
我想使用的算法是这样的:

如果我想做 5 选择 3,那么我将有一个循环 (5*4*3)/(3*2*1)。假设我已经有了乘法和除法函数,我将如何在 MIPS 中实现它?

现在我有这个,但它根本不起作用:

calnchoosek:
move $t1, $a0
move $t2, $a2

move $t3, $a0 # copies for the counter
move $t4, $a2

loop_top:
beq $t3, $t4, loop_bottom
subi $t3, $t3, 1

move $a0, $t1
move $a2, $t3
jal multi
move $t1, $v0

j loop_top

loop_bottom:
beq $t4, $zero, exit1
subi $t4, $t4, 1

move $a0, $t2
move $a2, $t4
jal multi
move $t2, $v0

j loop_bottom

exit1:
move $a0, $t1
move $a2, $t2
jal divi

我认为我的逻辑完全有缺陷,我可能不得不重新开始。有人可以帮助我吗?

最佳答案

loop_bottom , $t4将在最后一次迭代中设置为 0。乘法 $t2按零并为您的分母取零。 divi正在计算 K*(N!-K!)/0 – 你除以零!

关于MIPS:n选k函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16072970/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com