Red de conocimiento informático - Conocimiento sistemático - Representación de números de coma flotante

Representación de números de coma flotante

La representación completa de un número de punto flotante incluye los siguientes puntos:

Signo (S): 1 bit binario, 0 representa un número positivo, 1 representa un número negativo. Parte del código de expedición (E): la cantidad de dígitos de E varía según diferentes precisiones (consulte la diferencia entre flotante y doble en la figura siguiente), lo que indica la cantidad de dígitos que el punto decimal se mueve hacia la derecha. E>0 significa moverse hacia la derecha, E<0 significa moverse hacia la izquierda.

Parte mantisa (M): Dependiendo del número de dígitos en M según diferentes precisiones (consulte la diferencia entre flotante y doble en la figura siguiente), es la representación binaria del punto flotante números. Cabe señalar que la mantisa aquí es ?1.M...?, por lo que cuando encuentra un decimal como 0,125, su representación binaria es ?0,1001111...?. el derecho por 1 lugar para cumplir con los requisitos.

Precisión de los números de punto flotante: en lenguajes como C/C++, los números de punto flotante tienen tipos flotante y doble, y su precisión es inconsistente.

Tipo flotante: utiliza representación de 32 bits, signo de 1 bit, código exponente de 8 bits (el código exponente contiene un bit de signo) y mantisa de 23 bits (bit sin signo). El rango del código de exponente: use representación de desplazamiento de fotogramas, el desplazamiento es 127 y el rango del número representado es (especificado por el estándar IEEE 754, ver más abajo). Rango de mantisa: en realidad debería estar representado por 24 bits, pero como el primer bit debe ser 1, se representa por 23 bits (guardando un bit para mejorar la precisión). Rango de mantisa: en realidad debería estar representado por 53 bits, pero como el primer bit debe ser 1, se representa por 52 bits (guardando un bit para mejorar la precisión)

Representación binaria de números de punto flotante: decimal punto flotante Convertir puntos a representación binaria es muy simple y se discutirá en 2 partes. La parte entera: calculada usando el método del resto de dividir por 2 (hasta que el dividendo sea 0) la parte decimal: calculada usando el método de multiplicar por 2 (hasta que la parte decimal sea 0 y se adopte el truncamiento para decimales infinitos). Finalmente, utilice la representación binaria entera y la representación binaria decimal para obtener una representación binaria completa de los números de punto flotante.