首页
搜索 搜索
聚焦

#6 函数(Part.4)除法,函数

2023-08-06 00:37:25 哔哩哔哩

1.除法

直接贴代码


(资料图)

把被除数和除数输入,放在寄存器

因为当除数是1的话,商就等于被除数,做一个特判

可以节省很多时间

然后就让被除数不断被除数减,直到被除数小于除数就输出结果、

总延迟86 时钟刻246 总用时21156

2.函数

先更新一下指令集

然后修改一下硬件线路

①允许计数器的值+4之后被压栈

②允许弹栈输出的数值进入结果总线

不算很复杂,只是有些地方的通路需要稍微增加,然后用开关控制一下就行

随便写的一小段代码测试递归

自定义汇编别名:

null:000000(0)

add:00000000(0)

sub:00000001(1)

input:00000111(7)

output:00000111(7)

ram_r:00010000(16)

ram_w:00010001(17)

equal:00100000(32)

less_than:00100010(34)

pop:00110000(48)

push:00110001(49)

return:00111000(56)

call:00111001(57)

j:01000000(64)

i:10000000(128)

reg0-reg5:00000000-00000101(0-5)