Representación de doble precisión (64 bits) del valor numérico en R (signo, exponente, significado)
R Preguntas frecuentes Establece que
Los únicos números que se pueden representar exactamente en el tipo numérico de R son enteros y fracciones cuyo denominador es una potencia de 2. Todos los demás números se redondean internamente a (típicamente) 53 dígitos binarios de precisión.
R utiliza números de punto flotante de precisión doble IEEE 754 que es
1 bit para firmar 11 bits para exponente 52 bits para mantisa (o significado)que suma hasta 64 bits.
Para el número numérico0.1
, R representa
sprintf("%.60f", 0.1)
[1] "0.100000000000000005551115123125782702118158340454101562500000"
Double (IEEE754 Doble precisión de 64 bits) nos da esta representación binaria para0.1
:
00111111 10111001 10011001 10011001 10011001 10011001 10011001 10011010
Cómo podemos obtener esta representación en R y cómo se relaciona con la salida dada porsprintf
en nuestro ejemplo?