【发布时间】:2015-11-11 00:58:53
【问题描述】:
我正在学习Oz,并试图运行我在书中找到的一个示例,它即将模拟一个全加器,但我得到的是sum(),所以我不知道错误在哪里,非常感谢您的帮助。
下面是部分代码:
fun {XorG X Y}
fun {$ X Y}
fun {GateLoop X Y}
case X#Y of (X|Xr)#(Y|Yr) then
{X+Y-2*X*Y}|{GateLoop Xr Yr}
end
end
in
thread {GateLoop X Y} end
end
end
proc {FullAdder X Y ?C ?S}
K L M
in
K={AndG X Y}
L={AndG Y Z}
M={AndG X Z}
C={OrG K {OrG L M}}
S={XorG Z {XorG X Y}}
end
declare
X=1|1|0|_
Y=0|1|0|_ C S in
{FullAdder X Y C S}
{Show sum(C S)}
AndG 和 OrG 类似于 XorG。
【问题讨论】:
-
函数
sum的声明在哪里? -
sum 不是函数,因为函数总是以大写字母开头。这是记录的标签
-
对不起,你是对的!