在基板运行时如何进行浮点运算

时间:2019-06-12 13:54:34

标签: blockchain substrate parity-io

如何在基板运行时中对浮点值进行数学运算。举一个简单的例子,想象一下我想跟踪去中心化金融中的利率。

我可以使用百分比作为整数进行原型制作

let rate = 2;
let dividend = capital * rate / 100;

但是,如果我的利率是2.5%或2.4554%,该怎么办?

有什么标准方法可以进行浮点运算吗?

1 个答案:

答案 0 :(得分:3)

由于Substrate是区块链的框架,因此每个节点都必须获得相同的确定性结果以达成共识,这一点很重要。

浮点算法不是确定性的,因此,因此在Substrate中是不允许的。

需要小数点后一位的算术标准方法是使用内置的原始类型之一来处理不动点算术。定点算法对于底物是安全的,因为它将所有有理数表示为分数,并且始终可以解析为确定性结果。

用于处理定点算术的两种类型是PermillPerbill类型。