Formato de número de computadora

La representación está compuesta por bits, que a su vez se agrupan en conjuntos más grandes, como bytes.

Por ejemplo, una cadena de tres bits puede representar hasta ocho valores distintos, como se ilustra en la Tabla 1.

Un solo bit permite únicamente dos combinaciones de valores, dos bits combinados pueden representar cuatro valores distintos, con tres bits se obtienen ocho, y así sucesivamente, aumentando con la fórmula 2n.

[6]​ El sistema octal y la codificación hexadecimal son formas convenientes de representar números binarios, tal como los usan las computadoras.

En el sistema decimal, hay 10 dígitos, del 0 al 9, que se combinan para formar números.

En el cuadro siguiente se describe un ejemplo y una comparación de números en diferentes bases.

Para convertir de hexadecimal u octal a decimal, para cada dígito 1, se multiplica el valor del dígito por el valor de su posición y luego se suman los resultados.

Por ejemplo: El formato de coma fija puede resultar útil para representar fracciones en binario.

Si bien los enteros con signo y sin signo se utilizan en los sistemas digitales, incluso un entero de 32 bits no es suficiente para manejar todo el rango de números que puede manejar una calculadora, y eso ni siquiera incluye fracciones.

Se pueden definir formatos de coma flotante binarios similares para computadoras.

La más popular ha sido definida por el Institute of Electrical and Electronics Engineers (IEEE).

Una vez que se han extraído los bits de aquí, se convierten con el cálculo siguiente: Este sistema proporciona cifras válidas hasta aproximadamente 15 dígitos decimales, con el siguiente rango de números: La especificación también define varios valores especiales que no son números definidos, y se conocen como NaNs (abreviatura de "Not a Number", "No Un Número"), utilizados por programas para designar operaciones no válidas y similares.

Si la computadora almacena cuatro enteros sin firmar y luego los vuelve a leer de la memoria como un número real de 64 bits, casi siempre sería un número real perfectamente válido, aunque serían datos basura.

Por ejemplo, la fracción decimal "0.1" es equivalente a una fracción binaria que se repite infinitamente: 0.000110011 ...[7]​ La programación en lenguaje ensamblador requiere que el programador realice un seguimiento de la representación de los números.

Cuando el procesador no admite una operación matemática requerida, el programador debe elaborar un algoritmo y una secuencia de instrucciones adecuados para llevar a cabo la operación; en algunos microprocesadores, incluso la multiplicación de números enteros debe realizarse en el software.

Las operaciones matemáticas se llevan a cabo mediante rutinas de biblioteca proporcionadas por la implementación del lenguaje.