Интернет магазин китайских планшетных компьютеров



Компьютеры - 0 (программирование)

19 февраля 2011





−0 в программировании — число, возникающее при вычислениях с плавающей запятой.

Для улучшения этой статьи желательно уточнить определение описываемого ею понятия

Представления

В 1+7-битном представлении чисел со знаком, отрицательный ноль представляется двоичным значением 10000000 в прямом коде. В 8-битном одинарном обратном коде −0 представляется двоичным значением 11111111. В стандарте представления чисел с плавающей запятой IEEE 754, отрицательный ноль представляется нулевой экспонентой и мантиссой и знаковым битом равным единице.

В наиболее распространённом в настоящее время двойном дополнительном коде понятие отрицательного ноля отсутствует, что и сделало этот формат наиболее популярным.

Свойства

В языках программирования, таких как C, C#, C++ и Java, хотя и возможно получить отрицательный ноль в качестве результата вычисления выражения, при сравнении отрицательный ноль равен положительному, поэтому простое сравнение не может быть использовано для определения того, является ли число отрицательным нолём. Для проверки на отрицательный ноль можно использовать функцию CopySign, определённую в IEEE 754, которая копирует знак числа в другое число.

Для определения знака ноля можно также использовать деление:

  • \;x / +0 = +\infty
  • \;x / -0 = -\infty

Результат других операций с отрицательным нолём:

  • \;-0 / x = -0
  • \;-0 / x = +0
  • \;+0 / x = -0
  • \;-0 / +\infty = -0
  • \;-0 / -\infty = +0
  • \;+0 / -\infty = -0
  • \;-0 \cdot -0 = +0
  • \;-0 - +0 = -0
  • \;-0 - -0 = +0
  • \;+0 + -0 = +0
  • \;-0 + -0 = -0
  • \;x \cdot -0 = -0
  • \;x + -0 = x


Просмотров: 542


<<< Фиксированная запятая
Забывчивая передача >>>