"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Por que a precisão dupla parece ter mais casas decimais do que as 15 anunciadas?

Por que a precisão dupla parece ter mais casas decimais do que as 15 anunciadas?

Publicado em 2024-12-24
Navegar:610

Why Does Double Precision Appear to Have More Decimal Places Than Its Advertised 15?

Precisão Dupla e Precisão de Casa Decimal

Na programação de computadores, o tipo de dados de precisão dupla é frequentemente assumido como tendo uma precisão aproximada de 15 casas decimais. No entanto, certas representações numéricas, como 1,0/7,0, parecem ter mais precisão quando representadas internamente na variável. Este artigo explorará por que isso ocorre e por que a precisão é frequentemente descrita como em torno de 15 casas decimais.

Representação interna

Um duplo IEEE tem 53 bits significativos, equivalendo aproximadamente a 15,95 dígitos decimais. Para levar em conta o arredondamento, a implementação define a precisão (DBL_DIG) como 15. Isso fornece quase um dígito decimal extra de precisão além do que está implícito em DBL_DIG.

Precisão de saída

Ao exibir um duplo, os compiladores geralmente arredondam o valor com base na precisão. Por exemplo, 1,0/7,0, quando exibido com "%.17g", tem precisão de 17 dígitos. No entanto, se "%.64g" for usado, nenhum dígito significativo aparecerá além da precisão esperada de 15 dígitos.

Conclusão

Números de precisão dupla têm uma representação interna que permite cerca de 15,95 dígitos decimais de precisão. No entanto, devido ao arredondamento, a precisão exibida normalmente é definida como 15 casas decimais. Esta explicação ajuda a esclarecer por que certos números exatos, como 1,0/7,0, parecem ter mais precisão internamente, mas ainda estão em conformidade com a precisão estimada de 15 dígitos quando exibidos.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3