COBOL - Coding your program - Conversions and precision



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

COBOL - Codificando seu programa - Conversões e precisão
Enterprise COBOL for z/OS, Version 4.2

Em algumas conversões numéricas, é possível uma perda de precisão; outras conversões preservam a precisão ou resultam em arredondamentos.

Como os itens de ponto fixo e de ponto flutuante externo têm características decimais, as referências a itens de ponto fixo nos exemplos a seguir incluem itens de ponto flutuante externos, a menos que seja indicado o contrário.

Quando o compilador converte do formato de ponto fixo para o formato de ponto flutuante interno, os números de ponto fixo na base 10 são convertidos para o sistema de numeração usado internamente.

Quando o compilador converte a forma curta em longa para comparações, zeros são usados ??para preencher o número menor.

Conversões que perdem precisão

Quando um item de dados USAGE COMP-1 é movido para um item de dados de ponto fixo que possui mais de nove dígitos, o item de dados de ponto fixo receberá apenas nove dígitos significativos e os dígitos restantes serão zero.

Quando um item de dados USAGE COMP-2 é movido para um item de dados de ponto fixo que possui mais de 18 dígitos, o item de dados de ponto fixo receberá apenas 18 dígitos significativos e os dígitos restantes serão zero.

Conversões que preservam a precisão

Se um item de dados de ponto fixo com seis ou menos dígitos for movido para um item de dados USAGE COMP-1 e depois retornado para o item de dados de ponto fixo, o valor original é recuperado.

Se um item de dados USAGE COMP-1 for movido para um item de dados de ponto fixo de nove ou mais dígitos e depois retornado para o item de dados USAGE COMP-1, o valor original é recuperado.

Se um item de dados de ponto fixo com 15 ou menos dígitos for movido para um item de dados USAGE COMP-2 e então retornado para o item de dados de ponto fixo, o valor original é recuperado.

Se um item de dados USAGE COMP-2 for movido para um item de dados de ponto fixo (não ponto flutuante externo) de 18 ou mais dígitos e depois retornado para o item de dados USAGE COMP-2, o valor original é recuperado.

Conversões que resultam em arredondamento

Se um item de dados USAGE COMP-1, um item de dados USAGE COMP-2, um item de dados de ponto flutuante externo ou um literal de ponto flutuante é movido para um item de dados de ponto fixo, o arredondamento ocorre na posição de ordem inferior de o item de dados alvo.

Se um item de dados USAGE COMP-2 for movido para um item de dados USAGE COMP-1, o arredondamento ocorre na posição de ordem inferior do item de dados do padrão.

Se um item de dados de ponto fixo é movido para um item de dados de ponto flutuante externo e a IMAGEM do item de dados de ponto fixo contém mais posições de dígitos do que a IMAGEM do item de dados de ponto flutuante externo, o arredondamento ocorre na ordem inferior posição do item de dados alvo.

Conceitos relacionados



© Copyright IBM Corp.