toUnsigned 抽象方法
- int width
返回这个大整数的最低有效 width
位作为一个非负数(即无符号表示)。返回值在所有高于 width
的位位置上都是零。
BigInt.from(-1).toUnsigned(5) == 31 // 11111111 -> 00011111
此操作可以用于模拟底层语言的算术。例如,增加一个8位量
q = (q + 1).toUnsigned(8);
q
将从 0
计数到 255
,然后回绕到 0
。
如果输入可以在不截断的情况下适合 width
位,则结果与输入相同。避免截断 x
所需的最小宽度由 x.bitLength
给出,即
x == x.toUnsigned(x.bitLength);
实现
BigInt toUnsigned(int width);