自分のところでは、浮動小数点を使う業務がありません。まあ、技術計算で、小数以下の桁数が問題なる場合に使うのでしょうが、固定的な長さで使っています。
ゾーン、バック、バイナリが数字として使えますね。
バイナリは、4桁か9桁の数字を2バイト、4バイトで記録できるのですが、DSPPFM
で見たときに良く分からないのが難点(デバッグに差し障る)で、使っていませ
ん。(自作のDSPDというコマンドは対応しています。ダウンロードコーナーに有
りますので良かったら使ってみて下さい。 )
表現される数字の桁数 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
... |
占有バイト数 |
バイナリ |
× |
× |
× |
2 |
× |
× |
× |
× |
4 |
|
ゾーン |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
... |
パック |
1 |
2 |
2 |
3 |
3 |
4 |
4 |
5 |
5 |
... |
9.1
ファイル内のフィールドの形式を参考にしてください。
> データ記述仕様書上も基本はゾーンのようですね。
いえむしろ、パックだと思います。SとかPを入力しないと、数字フィールドの初期値はパックになります。
> パックとゾーンを使い分ける際の基準として、
容量以外に、何か有るのでしょうか?
問題はパックとゾーンの使い分けです。 パックのメリットは、2つ有ります。1つは、ディスクの占有スペースを小さくで
きます。但し、桁数が奇数でないと無駄が出ますね。もう一つのメリットは、四則演算が早い(らしい)と言うことです。
したがって、私の場合、
計算の対象になる数字フィールドは、奇数桁にして、パックに定義しています。
その他のたとえば、社員番号など数字でコードされる物は、ゾーン、もしくは、
文字にしています。
文字で数字の場合、入力の時に、タイプをM(数字専用文字フィールド)にして、
間違えてアルファベットが入らないように注意しています。
>
ゾーンはあまり使わないほうが良いのでしょうか?(ゾーン10進数からパック10進数に変換するから、効率が悪いとか...)
1〜2桁の数字はどちらにすべきなのでしょうか?K'sさんはどのように使い分けていますか?
日付と時間をゾーンにしている(DSPPFMで見やすいように)という人もいます。
だいたい、演算に使う、「個数」「金額」「単価」「人数」「日数」「割合」
「係数」などなどは、パックの数字にしています。
この他の、演算に関係のない数字は、ゾーン(または文字)にしています。「社員番号」「会社コード」「区分」「勘定科目コード」「商品コード」などなどで
す。
2000-8-9 |