Enterprise COBOL for z/OS, V4.2, Language Reference
A condição de sinal determina se o valor algébrico de um operando numérico é maior que, menor que ou igual a zero.
- operand-1
- Deve ser definido como um identificador numérico ou como uma expressão aritmética que contenha pelo menos uma referência a uma variável.
O operand-1 pode ser definido como um identificador de ponto flutuante.
O operando é:
- POSITIVO se seu valor for maior que zero
- NEGATIVO se seu valor for menor que zero
- ZERO se seu valor for igual a zero
Um operando não assinado é POSITIVO ou ZERO.
- NOT
- Um teste algébrico é executado para o valor de verdade da condição do sinal.
Por exemplo, NOT ZERO é considerado verdadeiro quando o operando testado é positivo ou negativo em valor.
Os resultados do teste de condição do sinal dependem da configuração da opção do compilador NUMPROC.
Para detalhes, consulte NUMPROC.
Campos de data em condições de sinal - Date fields in sign conditions
O operando em uma condição de sinal pode ser um campo de data, mas é tratado como um não-data para o teste de condição de sinal.
Portanto, se o operando for um identificador de um campo de data em janela, a janela de data não será concluída, portanto a condição de sinal pode ser usada
para testar um campo de data em janela para um valor zero.
No entanto, se o operando for uma expressão aritmética, quaisquer campos de data em janela na expressão serão expandidos durante o cálculo do resultado aritmético
antes de usar o resultado para o teste de condição do sinal.
Por exemplo, dado que:
- O identificador WIN-DATE é definido como um campo de data em janela e contém um valor zero
- A opção do compilador DATEPROC está em vigor
- A opção do compilador YEARWINDOW ( ano inicial ) está em vigor, com um ano inicial diferente de 1900
então essa condição de sinal seria avaliada como verdadeira:
WIN-DATE IS ZERO
considerando que essa condição de sinal seria avaliada como falsa:
WIN-DATE + 0 IS ZERO
© Copyright IBM Corp.