cobol
Как работает вычислительная работа в коболе?
Поиск…
Вступление
Вычисляющее предложение используется для описания типа хранилища, используемого в COBOL. Он используется для 3-х способов: COMP-1, COMP-2 и COMP-3. Наиболее распространенной формой вычисления является COMP-3. Программисты часто называют «COMP».
КОМП-3
Элемент данных хранится в упакованном десятичном формате на COMP-3. Упакованный десятичный формат означает, что каждый байт хранилища (за исключением младшего байта) может содержать два десятичных числа. Байт младшего порядка содержит одну цифру в самой левой части и знак (положительный или отрицательный) в самой правой части.
«Зонированный десятичный формат» на изображении ниже является хранилищем по умолчанию для числа в COBOL.
01 WS-NUM PIC 9(5) USAGE IS COMP-3 VALUE 21544.
Вычислительное хранилище часто используется для уменьшения размера файла.
Общие реализации
Как реализованы comp, comp-1 ... comp-5, зависит от реализации.
Format Normal Implementation
Comp Big endian binary integer
Comp-1 4 byte floating point
Comp-2 8 byte floating point
Comp-3 Packed decimal 123 is stored as x'123c'
Comp-5 Binary Integer optermised for performance.
Big Endian on the Mainframe, Little Endian on Intel Hardware
Компиляторы Ibm обычно поддерживают Comp, Comp-4, Comp-5 в размерах 2,4,8 байт. Размеры поддержки GNU Cobolo 1,2,4,8.
Поля Comp-1, Comp-2 определены без предложения картинки:
03 Floating-Field Comp-1.
03 Double-Field Comp-2
Для других компиляторов вводится изображение:
03 Big-Endian Pic S9(4) Comp.
03 Packed-Decimal Pic S9(5) Comp.