description

# toUnsigned method

BigInt toUnsigned (int width)

Returns the least significant `width` bits of this big integer as a non-negative number (i.e. unsigned representation). The returned value has zeros in all bit positions higher than `width`.

    new BigInt.from(-1).toUnsigned(5) == 31   // 11111111  ->  00011111

This operation can be used to simulate arithmetic from low level languages. For example, to increment an 8 bit quantity:

    q = (q + 1).toUnsigned(8);

`q` will count from `0` up to `255` and then wrap around to `0`.

If the input fits in `width` bits without truncation, the result is the same as the input. The minimum width needed to avoid truncation of `x` is given by `x.bitLength`, i.e.

    x == x.toUnsigned(x.bitLength);

## Implementation

    BigInt toUnsigned(int width);