コンピューター メモリの固有境界

現在のコンピューターのメモリの基本的な固有境界は、通常は 8 ビットからなる文字を基礎としており、これをバイトという。この基本的な枠組みの中で、コンピューターは大きく 2 つに分類される。1 つはバイト以外の境界を持たないものであり、バイト記憶コンピューターと呼ばれる。もう 1 つは複数のバイト基本境界をベースとした別の固有境界を持つものであり、語記憶コンピューターと呼ばれる。

バイト記憶モードでは、COBOL は各数字項目に対して占有するバイト数が最小になるように数値記憶域を割り当てる (「文字の表現および基数の選定」セクションを参照)。この場合、SYNCHRONIZED 句は意味をもたず、効果もない。

語記憶コンピューターでは、固有境界は 2 バイト、4 バイト、および 8 バイト (あるいはそれらのいずれか) 単位で生じる。COBOL 言語では、COMPUTATIONAL 句および SYNCHRONIZED 句が指定された場合に、それに応じてデータ項目に記憶域を割り当て、桁詰めを行える。COMPUTATIONAL 形式のデータに対する語記憶割り当ては、IBMCOMP コンパイラ指令によって制御される。

表 1. COMP(UTATIONAL) 形式のデータ項目の文字位置 (バイト) に対する記憶域の割り当て
PICTURE 表現内の数字 (9) の数 割り当てられる記憶域の文字 (バイト) の数
符号付き 符号なし バイト記憶モード 語記憶モード
1-2 1-2 1 2
3-4 3-4 2 2
5-6 5-7 3 4
7-9 8-9 4 4
10-11 10-12 5 8
12-14 13-14 6 8
15-16 15-16 7 8
17-18 17-19 8 8
19-21 20-21 9 16
22-23 22-24 10 16
24-26 25-26 11 16
27-28 27-28 12 16
29-31 29-31 13 16
32-33 23-33 14 16
34-35 34-36 15 16
36-38 37-38 16 16