Representación de punto flotante de 8 bits

Estoy estudiando la posibilidad de representar números fraccionarios como valores de punto flotante. Va a ser una representación de 8 bits. En algún lugar del texto, se dice que:

representación de punto flotante de 8 bits

«Usamos el primer bit para representar el signo (1 para negativo, 0 para positivo), los siguientes cuatro bits para la suma de 7 y el exponente real (sumamos 7 para permitir exponentes negativos), y los últimos tres bits para la «parte fraccionaria» de la mantisa

Ahora la pregunta es: ¿Por qué se debe agregar «7» -y no otro valor- al exponente real?

Comentarios

  • ¡Bienvenido a CS.SE! El texto insinúa por qué, entre paréntesis. Por cierto, si ' no entiende la explicación en un texto, ' suele ser útil buscar una explicación diferente del tema. . Hay muchos recursos en coma flotante.
  • Entonces, ¿por qué debería agregarse 7?
  • Si ' ha entendido la respuesta a su Primera pregunta, te animo a editar tu publicación para mostrar lo que entiendes.

Responder

Con 4 bits puede representar 16 valores diferentes: 0,1, …, 15. Si desea permitir exponentes negativos, tiene sentido tomar (aproximadamente) la mitad de los valores posibles para indicar un exponente negativo. Al sumar 7 al exponente, mapeas los valores -7, -6, …, 0,1, …, 8 al rango representable. También puede buscar complemento de dos «.

Comentarios

  • Entonces, agregar 7, asigna -7, -6, …, – 1 a sus valores positivos correspondientes y agregar un valor superior a 7 da como resultado un valor fuera de rango que es incorrecto. Por la misma razón, agregar menos de 7 al exponente no ' t soluciona el problema. Gracias, ' tengo lo que estaba buscando.
  • Agregar diferentes números cambia qué exponentes negativos y positivos admites. Es ' una decisión de diseño. Quizás solo admitir -1 sea suficiente para tu aplicación.
  • Sí , tienes razón. Esta es una decisión de diseño que el instructor ha implementado a través del tutorial y no es ' una restricción estricta.
  • La decisión de usar un desplazamiento en lugar del complemento de 2 ' s, el IIRC debía mantener el inverso del valor más pequeño más pequeño que el va más grande lue, es decir, para evitar desbordes. En otras palabras, se eligió cuidadosamente.
  • @KWillets: El desplazamiento también permite que el cero se represente como ceros y permite usar comparaciones de enteros para comparar números de punto flotante (excluyendo el bit de signo)

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *