この項目では、数の表現について説明しています。広瀬正 のSF小説については「マイナス・ゼロ 」をご覧ください。
−0 (マイナスゼロ)、あるいは負のゼロ とは、数値のゼロ にマイナスの符号 をつけたものである。
通常の算術では、負のゼロは単なるゼロ(及び正のゼロ、+0)と同じであるが、これらを分ける方が望ましい場合や、分けて扱わざるを得ない場合がある。
そのようなケースとして、以下のものがある
極限 。例えば右方極限 を x → +0 と左方極限 を x → −0 と書いて区別する場合
コンピュータの数値表現 においてゼロの表現が一意でない場合
数学
+0, −0, +∞, −∞ は通常、極限 操作を表す記号として用いられ、実数 上の元 とは扱われない。これは任意の実数 c に対する +c , −c についても同様である。
しかし、煩雑さを避けるため、標語的に正負のゼロや無限大 を実数であるかのように表記することがしばしば行われる。
コンピュータの数値表現と負のゼロ
IEEE 754における負のゼロ
現在のほぼ全てのコンピュータやプログラミング言語が採用している浮動小数点数の標準である IEEE 754 には通常の 0.0 と −0.0 がある。
その他のコンピュータの数値表現における負のゼロ
コンピュータの数値表現 では、補数 を利用して負数を表現することが多いが、同じ補数でも基数の補数 を利用した場合には負のゼロが生じないのに対し、減基数の補数 を用いた場合には負のゼロが生じる。また「符号と絶対値」方式の場合にもゼロについて正と負の2つのゼロがある(前述のIEEE 754など)。
統計等における負のゼロ
−0 °Cを表示する温度計
気象学 では、−0 °Cは 0 °C(セルシウス温度 )より低いが −1 °Cとするほどではない温度を示し、統計的な意味(つまり1 °C単位で統計を取る場合)では重要なこともある。例えば、−0.2 °Cがその例である。0 °Cは負の範囲を含まないのでこれを 0 °Cとして統計処理することはできない。また、冬季の寒さを比較する際に日中の気温が 0 °C未満(氷点下 )の日を数えることは基本であり、無視することができない。従って −1 °Cに丸めるには絶対値が小さすぎる温度は −0 °C と記録される。道路上などに設置してある気温・路温計でもそれを見ることが出来る。
数値表現としての負のゼロ
コンピュータにおける負の値の扱い方にはいろいろあるが、IEEE 754 が採用しているような「符号と絶対値」方式による表現では、ゼロについて、
の二種類の表現が可能であるため、問題が生じることがある。なお21世紀にはほとんど見られなくなったがかつては、整数の表現についても「符号と絶対値」方式が採用されることもあった。
例えば、IEEE 754 では、x == y
といったような通常の比較において、通常のゼロと負のゼロを比較した場合、真になることを要求している。単にワードを整数と同様に比較しただけでは、その要求を満たすことができない。もっとも、IEEE 754 ではたとえば NaN についても同様に例外的な扱いが必要なので ( NaN == NaN
は常に偽で NaN != NaN
は常に真) 、実装上、負のゼロがきわめて特異というわけでもない(IEEE 754 では)。
参考文献
出典 は列挙するだけでなく、脚注 などを用いてどの記述の情報源であるかを明記 してください。記事の信頼性向上 にご協力をお願いいたします。(2023年6月 )
関連項目