知識の箱

主に気象を研究する上で得た知識と、WEBページ作成のために得た知識を記録しています。

fortranでbitデータの取扱い1~概要~

一般的な数値処理はバイト(byte)で可能だが、中にはビット(bit)単位で入っているデータがある。たとえば気象庁の原簿データ(気象官署データ)や最新のデーダーアメダス(grib2形式)。

これらを読むためには、byteで読み込んだデータをbitに分解する必要がある。

bitに変換する方法はいくつかあるが、ここではiandやishftを使って(半ば強引に)bitデータを読みだす方法を記載する。

まずはじめに、1byte=8bitとなっており、1bitは2進法で定められた1か0が入る。

つまり、1byte整数で10の時、bitに分解すると、00001010となる。
(右から1*0+2*1+4*0+8*0+16*0+32*0+64*0+128*0=10)

ここで、1byte=8bitの時、-125~125の場合と0~255の場合があるので、各データのフォーマットに注意する必要がある。