positiveSignIndicator

positiveSignIndicator 빌드 디스크립터 옵션은 성능을 향상시키기 위해 iSeries 환경에서만 사용됩니다.

iSeries용 COBOL 프로그램을 생성할 때 positiveSignIndicator 빌드 디스크립터 옵션은 iSeries 기반 ILE COBOL 컴파일러가 구역 및 팩형 10진수 데이터에 대해 양부호로 사용하는 문자를 지정합니다. 다음과 같은 유형의 숫자 데이터에 영향을 줍니다.
  • DECIMAL
  • MONEY
  • NUM
  • NUMC
  • PACF
잠재적인 문제점은 COBOL 컴파일러가 이러한 모든 데이터 유형에 지정된 양부호 문자를 사용한다는 점입니다. 반대로 EGL은 기본적으로 다음과 같이 문자의 혼합을 사용합니다.
  • NUM 및 PACF는 기본값으로 F가 됩니다.
  • NUMC, DECIMAL 및 MONEY는 기본값으로 C가 됩니다.

COBOL 컴파일러가 모든 양부호 문자를 C로 설정하는 경우 EGL은 일반적으로 런타임에 모든 NUM 및 PACF 변수를 F로 변경합니다. 마찬가지로 컴파일러가 모든 문자를 F(기본값)로 설정하는 경우 EGL은 모든 NUMC, DECIMAL 및 MONEY 변수를 C로 변경합니다.

따라서 positiveSignIndicator 빌드 디스크립터 옵션을 지정하는 일반적인 목적은 성능을 향상시키기 위한 것입니다. 코드에 NUMC, DECIMAL 및 MONEY 변수가 많이 나타나는 경우(NUM 및 PACF 변수에 비해) positiveSignIndicator를 C로 설정하여 성능을 향상시킬 수 있습니다. 이 경우 EGL이 런타임에 변경할 변수가 적으므로 EGL이 코드를 적게 생성합니다.

기본 EGL 동작을 대체할 두 개의 추가 값을 사용할 수 있습니다. positiveSignIndicator를 F-ALL로 설정하면 EGL이 모든 NUMC, DECIMAL 및 MONEY 변수를 C로 변경할 수 없습니다. 마찬가지로 C-ALL을 사용하면 EGL이 NUM 및 PACF 변수를 F로 변경할 수 없습니다.

코드가 NUM 및 PACF 변수 뿐이거나 모든 변수에 F 양부호를 사용하려면 F-ALL을 선택하여 상당한 성능 향상이 발생할 수 있습니다. 이 경우 EGL 런타임 호출의 생성으로 부호가 변경되지 않습니다. 마찬가지로 코드가 NUMC, DECIMAL 및 MONEY 변수 뿐이거나 모든 변수에 C 양부호를 사용하려면 C-ALL을 선택하여 상당한 성능 향상이 발생할 수 있습니다.

F(기본값)
COBOL 컴파일러가 양부호 문자로 "F"를 사용하도록 모든 DECIMAL, MONEY, NUM, NUMC 및 PACF 변수를 사전설정해야 함을 지정합니다. EGL은 런타임에 NUMC, DECIMAL 및 MONEY 변수의 부호를 C로 변경합니다.
C
COBOL 컴파일러가 양부호 문자로 "C"를 사용하도록 모든 DECIMAL, MONEY, NUM, NUMC 및 PACF 변수를 사전설정해야 함을 지정합니다. EGL은 런타임에 NUM 및 PACF 변수의 부호를 F로 변경합니다.
F-ALL
COBOL 컴파일러가 양부호 문자로 "F"를 사용하도록 모든 DECIMAL, MONEY, NUM, NUMC 및 PACF 변수를 사전설정해야 함을 지정합니다. EGL이 런타임에 양부호를 C로 변경하지 않습니다.
C-ALL
COBOL 컴파일러가 양부호 문자로 "C"를 사용하도록 모든 DECIMAL, MONEY, NUM, NUMC 및 PACF 변수를 사전설정해야 함을 지정합니다. EGL이 런타임에 양부호를 F로 변경하지 않습니다.