Метод toUnsigned
Метод toUnsigned класса int возвращает беззнаковое представление числа с заданной шириной в битах. В первый параметр мы передаем ширину в битах, в которую нужно уложить число. Метод отбрасывает все биты, выходящие за пределы указанной ширины, и возвращает неотрицательное целое число в диапазоне от 0 до 2^width - 1.
Если исходное число отрицательное, его двоичное представление в дополнительном коде усекается до указанной ширины, после чего полученные биты интерпретируются как беззнаковое число.
Синтаксис
num.toUnsigned(width)
Пример
Давайте преобразуем положительное число 5 в беззнаковое число шириной 8 бит:
void main()
{
int num = 5;
int res = num.toUnsigned(8);
print(res);
}
Результат выполнения кода:
5
Пример
Давайте преобразуем отрицательное число -1 в беззнаковое число шириной 8 бит. В дополнительном коде -1 представляется восемью единицами, что соответствует числу 255:
void main()
{
int num = -1;
int res = num.toUnsigned(8);
print(res);
}
Результат выполнения кода:
255
Пример
Давайте преобразуем отрицательное число -2 в беззнаковое число шириной 16 бит:
void main()
{
int num = -2;
int res = num.toUnsigned(16);
print(res);
}
Результат выполнения кода:
65534
Пример
Давайте преобразуем число 256 в беззнаковое число шириной 8 бит. Число 256 не помещается в 8 бит, поэтому лишние биты будут отброшены, и результатом станет 0:
void main()
{
int num = 256;
int res = num.toUnsigned(8);
print(res);
}
Результат выполнения кода:
0
Смотрите также
-
метод
toSigned,
который преобразует число в знаковое представление -
метод
toRadixString,
который преобразует число в строку в заданной системе счисления -
свойство
bitLength,
которое возвращает количество бит числа -
класс
int,
который представляет целые числа