各种数学辅助功能
min
计算并返回两个 Int
值 x
和 y
的 最小值。
使用示例
max
计算并返回两个 Int
值 x
和 y
的 最大值。
使用示例
abs
计算并返回Int
值 x
的绝对值。
使用示例
log
计算并返回数字 num
>0 以 base
≥1 为底的 logarithm 值。 结果四舍五入。 传入一个非正数num
值或base
小于 1 会产生错误退出代码 5:整数超出预期范围”。
使用示例
log2
类似于 log()
,但将 base
设为 2。
使用示例
pow
计算并返回涉及两个数的 幂级数:“基数 “和指数(或_幂_)“exp”。 指数 exp
必须是非负数,否则将产生退出代码 5错误:整数超出预期范围
。
请注意,该函数在运行时和[编译时](/ref/core-comptime)均有效。
使用示例
pow2
与 pow()
类似,但将 base
设为 2。 在运行时和[编译时](/ref/core-comptime)均可使用。
使用示例
checkSignature
使用由 256-bit unsigned Int
表示的 “公钥 “检查 256-bit unsigned Int
”哈希 “的[Ed25519][ed]“签名”。 签名必须包含至少 512 位数据,但只使用前 512 位。
如果签名有效,则返回 true
,否则返回 false
。
使用示例
checkDataSignature
使用 “公钥 “检查 “数据 “的[Ed25519][ed]“签名”,类似于checkSignature()
。 如果 data
的位长不能被 8整除,该函数将产生错误退出代码 9:单元格下溢。 验证本身是间接进行的:根据 “数据 “的[SHA-256][sha-2] 哈希值进行验证。
如果签名有效,则返回 true
,否则返回 false
。
使用示例
sha256
从传递的 [片
][片] 或 字符串
数据
计算[SHA-256][sha-2] 哈希值,并以 256-bit 无符号 Int
的形式返回。
如果 data
是一个 字符串
,它的位数应能被 8除,如果它是一个 [片
][片],它也必须***没有引用(即总共最多只有 1023 位数据)。
该函数尽可能在 编译时 解析常量字符串值。
使用示例