Кіріспе
Оң және теріс нөлді ажырату. Белгілі нөл – нөлге қосылған белгі. Қалыпты арифметикада 0 санының белгісі болмайды, сондықтан -0, +0 және 0 бірдей. Дегенмен, есептеулерде кейбір сандық форматтар екі нөлдің болуына мүмкіндік береді, олар көбінесе -0 (теріс нөл) және +0 (оң нөл) деп белгіленеді. Бұл нөлдер сандық салыстыру операцияларында тең деп есептеледі, бірақ кейбір операцияларда әртүрлі нәтижелер беруі мүмкін. Мұндай жағдай бүтін сандар үшін шама белгісі және біреулердің толықтығындағы сандық форматтарда, сондай-ақ көптеген қозғалатын нүктелі сандардың форматтарында кездеседі. 0 саны әдетте +0 ретінде кодталады, бірақ оны +0, -0 немесе 0 арқылы да көрсетуге болады. IEEE 754 стандарты (қозғалатын нүктелі арифметика үшін, қазіргі уақытта көптеген компьютерлер мен қозғалатын нүктелі сандарды қолдайтын бағдарламалау тілдерінде қолданылады) +0 және -0 екі нөлдің де болуын талап етеді. Белгілі нөлдермен нақты арифметиканы кеңейтілген нақты сандар осінің түрі ретінде қарастыруға болады, онда 1/−0 = −∞ және 1/+0 = +∞; ал ±0/±0 және ±∞/±∞ бөлінісі анықталмайды. Теріс нөл математикалық талдаудағы нөлге төменнен жақындау түсінігімен байланысты, бұл бір жақты шек ретінде x → 0−, x → 0− немесе x → ↑0 арқылы көрсетіледі. "−0" белгісін теріс сан нөлге дейін дөңгеленгенде бейресми түрде қолдануға болады. Теріс нөл түсінігі статистикалық механика және басқа да ғылым салаларында да теориялық қолданысқа ие. IEEE 754 стандартында белгілі нөлді енгізудің кейбір маңызды мәселелерде, әсіресе күрделі элементар функцияларды есептегенде сандық дәлдікке қол жеткізуді жеңілдететіні айтылады. Алайда, белгілі нөл түсінігі математикадағы теріс нөл нөлге тең деген қағидаға қайшы келеді. Егер бағдарламашылар екі нөлдік форматтың сандық салыстыруларда тең болғанымен, кейбір операцияларда әртүрлі нәтиже беретінін ескермесе, теріс нөлге рұқсат беретін форматтар бағдарламаларда қателерге себеп болуы мүмкін.
Signed zero is zero with an associated sign. In ordinary arithmetic, the number 0 does not have a sign, so that −0, +0 and 0 are equivalent. However, in computing, some number representations allow for the existence of two zeros, often denoted by −0 (negative zero) and +0 (positive zero), regarded as equal by the numerical comparison operations but with possible different behaviors in particular operations. This occurs in the sign magnitude and ones' complement signed number representations for integers, and in most floating point number representations. The number 0 is usually encoded as +0, but can still be represented by +0, −0, or 0. The IEEE 754 standard for floating point arithmetic (presently used by most computers and programming languages that support floating point numbers) requires both +0 and −0. Real arithmetic with signed zeros can be considered a variant of the extended real number line such that 1/−0 = −∞ and 1/+0 = +∞; division is undefined only for ±0/±0 and ±∞/±∞. Negatively signed zero echoes the mathematical analysis concept of approaching 0 from below as a one sided limit, which may be denoted by x → 0−, x → 0−, or x → ↑0. The notation "−0" may be used informally to denote a negative number that has been rounded to zero. The concept of negative zero also has some theoretical applications in statistical mechanics and other disciplines. It is claimed that the inclusion of signed zero in IEEE 754 makes it much easier to achieve numerical accuracy in some critical problems, in particular when computing with complex elementary functions. On the other hand, the concept of signed zero runs contrary to the usual assumption made in mathematics that negative zero is the same value as zero. Representations that allow negative zero can be a source of errors in programs, if software developers do not take into account that while the two zero representations behave as equal under numeric comparisons, they yield different results in some operations.
Өкілдіктер
Бинарлы бүтін сандар форматтары әртүрлі кодтамаларды қолдана алады. Көп тараған екілік толықтыру кодтауында нөл белгісіз болады. 1+7 биттік таңба және шама форматындағы бүтін сандар үшін теріс нөл биттік тізбекпен көрсетіледі. 8 биттік бірліктердің толықтыру форматында теріс нөл биттік тізбекпен көрсетіледі. Осы үш кодтаудың барлығында оң немесе белгісіз нөл көрсетіледі. Дегенмен, соңғы екі кодтау (таңбаланған нөлмен) бүтін сандар форматтары үшін сирек кездеседі. Таңбаланған нөлді ең көп қолданылатын форматтар – төменде сипатталған қозғалатын нүкте форматтары (IEEE 754 форматтары немесе осыған ұқсас). IEEE 754 екілік қозғалатын нүкте форматтарында нөлдік мәндер бұрыс экспонента мен маңызды бөлігінің екеуі де нөлге тең болғанда көрсетіледі. Теріс нөлдің таңба биті 1 болады. Тегіс нөлді кейбір есептеулердің нәтижесінде алуға болады, мысалы, теріс санның арифметикалық төмендеуінен (басқа нәтижелер де мүмкін), немесе -1.0 × 0.0, немесе жай ғана -0.0. IEEE 754 ондық қозғалатын нүкте форматтарында теріс нөл форматтағы кез келген жарамды экспонентамен, нақты маңызды бөлігі нөлге тең және таңба биті 1 болып көрсетіледі.
Қасиеттері мен пайдалану
IEEE 754 жылжымалы нүкте стандарты әртүрлі операциялар барысында оң нөл және теріс нөлдің қалай әрекет ететінін көрсетеді. Соның нәтижесі IEEE ағымдағы дөңгелектеу режиміне қарай өзгеруі мүмкін.
Нөмірлік
Қолтаңбаланған және қолтаңбаланбаған нөлдерді қамтитын жүйелерде, кейде қолтаңбаланған нөлдерді белгілеу үшін +0 және -0 жазу тәсілі қолданылады.
Температура сияқты дөңгелектенген мәндер
Бейресми түрде, теріс мән нөлге дейін дөңгеленген жағдайда "−0" белгісін қолдануға болады. Бұл белгі теріс белгінің маңызды болған жағдайларда пайдалы болуы мүмкін; мысалы, Цельсий температурасын тізімдегенде, теріс белгі қатып қалу температурасынан төмен екенін көрсетеді.
Статистикалық механикада
Статистикалық механикада кейде популяциялық инверсиясы бар жүйелерді сипаттау үшін теріс температура қолданылады, олардың температурасы оң шексіздіктен де жоғары деп есептеледі, себебі популяциялық таралым функциясындағы энергия коэффициенті -1/температура болып табылады. Осы контексте, -0 температурасы – кез келген басқа теріс температурадан үлкен (теориялық) температура, бұл +0-ға кері, ең жоғары мүмкін популяциялық инверсия дәрежесіне сәйкес келеді.