Представление знака числа

Многие числовые поля не имеют знака, например, номер абонента, адрес памяти. Некоторые числовые поля предлагаются всегда положительные, например, норма выплаты, день недели, значение числа ПИ. Другие числовые поля являются знаковые, так как их содержимое может быть положительным или отрицательным. Например, алгебраическое число или долговой баланс покупателя, который может быть отрицательным при переплатах.

Для беззнаковых величин все биты являются битами данных и вместо ограничения +32767 переменная может содержать числа до +65535. Для знаковых величин левый (старший) бит является знаковым битом.

Таким образом:

- унарный знак + (плюс), поставленный перед параметром целого или вещественного типа, никак не влияет на его значение.

- унарный знак - (минус), поставленный перед параметром целого или вещественного типа, приводит к изменению знака величины.

 

В следующем примере сложения двух двоичных чисел, первое число содержит единичный левый бит. Для беззнакового числа биты представляют положительное число 249, для знакового - отрицательное число -7:

 

  Беззнаковое Знаковое
-7
+2
-5

 

Двоичное представление результата сложения одинаково для беззнакового и знакового числа. Однако биты представляют +251 для беззнакового числа и -5 для знакового. Таким образом, числовое содержимое поля может интерпретироваться по-разному.