値の書き方は値の型によって決まっており、固定フォーマットまたはフリーフォーマットである。 値は 1つの値だけを書き、配列にしてはならない。 必須キーワードには固定フォーマットを用いる必要があり、他のキーワードでもそれが推奨される。 大文字・小文字の区別はされない (特に明記されないかぎりは)。

文字列
固定フォーマットでは、11 桁目に ' 、12 桁目から文字列、 80 桁までのどこかで ' で括る。 書けるのは ASCII テキスト(16進で 20H ~ 7EH)のみであり、' を含める場合は (' を二回続ける) とする。 先頭の空白は意味を持つが後ろの空白は違う。 以前は 8文字以上に空白で埋めることが要求されていたが現在は XTENSIONキーワード('IMAGE ','TABLE ')以外ではその縛りはない。

フリーフォーマットでも書き方は同様であるが、先頭と最後の ' の位置は 11-80 桁のどこにあってもよい。 ただし 10 桁目から最初の引用符の間は「空白」でなければならない。

どちらの場合も文字列の長さは最大 68 (= 80 - 8 (キーワード) - 2 ('= ') - 2 (' ')) 文字である。 例えば、以前、NOST Standard 1.1 の頃は OBJECTキーワードは最初の 8キャラクタまでしかデコードを要求すべきでない、との記述があり問題となっていたが、現在は緩和され、次のような例も可能となっている。(「FITS の手引き 第3版」5.2.3 などを参照)。

OBJECT = 'NVSS J000000-200449 ' / 32-char

論理値
固定フォーマットでは Tまたは Fを 30 桁目に書く。 フリーフォーマットでは 11-80 桁の最初に現れる文字が Tまたは Fとする。 どちらも Tまたは Fの文字の後には空白か/(とそれに続くコメント) のみが許される。

整数
固定フォーマットでは 11-30 桁目に右詰めで ASCIIコード で書く。 数字の間に空白を含んではならない。 先頭には + または - を付加でき、+ は省略できる。 整数は常に符号付きとみなされる。

フリーフォーマットでは位置が 11-80 桁のどこでもよいことを除けば固定フォーマットと同様である。

実浮動小数点値
固定フォーマットでは 11-30 桁に右詰めで ASCIIコード で書く。 数字の間に空白を含んではならず、先頭には + または - がつけられる (+ は省略可)。 整数部と小数部の間は . で区切り、少なくとも整数部、小数部のどちらか 1つはなければならない。 整数部だけの場合は . は省略できるが、小数部がある場合は必ず . が必要である。 指数形式の場合は指数指定文字 (大文字で 'E' または 'D'(倍精度の場合)) の後に整数で指数を書く。

フリーフォーマットでは位置が 11-80 桁のどこでもよいことを除けば固定フォーマットと同様である。

複素整数
複素整数には固定フォーマットはない。 複素整数は実部と虚部を , で区切り、全体を ( ) で括る (例えば (14, -45))。 実部、虚部とも整数であれば、それで 1 つの複素整数とみなされる。 11-80 桁のどこに書いてもかまわない。

複素浮動小数点値
複素浮動小数点値にも固定フォーマットはない。 複素浮動小数点値は実部と虚部を , で区切り、全体を ( ) で括る (例えば (14.5, -4.5E+5))。 実部、虚部とも浮動小数点値であれば、それで 1 つの複素浮動小数点値とみなされる。 11-80 桁のどこに書いてもかまわない。



Osamu Kanamitsu
2019-02-15