UnsignedInt

Материал из MK90.ORG wiki
Перейти к: навигация, поиск

Справка Язык | Библиотеки | Сравнение | Изменения

unsigned int

Описание

Беззнаковый целый тип (unsigned integer) занимает два байта. Но в отличие от знаковых целых, в нем нет выделенного знакового бита, поэтому он хранит только положительные числа в диапазоне от 0 до 65535 (2^16) - 1).

Отличие между знаковыми и беззнаковыми целыми заключается лишь в интерпретации компилятором старшего бита (иногда называемого "знаковым"). Для знакового типа Int, наличие "1" в старшем разряде указывает на то, что число отрицательное, и содержимое интерпретируются как дополнение.

Пример


    unsigned int ledPin = 13;

Синтаксис


     unsigned int var = val;

var - имя переменной типа unsigned int

val - значение, присваемое переменной var

Советы по применению

Когда значение, которое должно храниться в переменной, выходит за пределы максимального или минимального, это сопровождается искажением результата (т.н. "переход") - причем не только в плюс, но и в минус. Об этом стоит помнить:


   unsigned int x
   x = 0;
   x = x - 1;       // x теперь хранит 65535 - произошло антипереполнение (переменная "ушла" меньше минимального значения)
   x = x + 1;       // x теперь снова содержит 0 - это переполнение максимального значения

Смотри также

Руководство по Wiring


Исправления, пожелания и новые статьи должны быть опубликованы через Форум.

Оригинальные тексты руководств и переводы распространяются Arduino и MK90 на условиях лицензии Creative Commons Attribution-ShareAlike 3.0 License. Примеры исходных кодов и ссылки являются общественным достоянием.