El código binario es un sistema de codificación digital donde la representación totalmente al valor 0 corresponde al valor mínimo negativo y la representación de una secuencia con todos sus dígitos en valor 1 corresponde al máximo valor positivo. No hay un patrón estándar para el offset binario, pero en la mayoría de las veces el valor ‘cero’ es representado por un 1 en el bit más significativo y cero en todos los otros bits.
El sistema binario es frecuentemente utilizado en el procesamiento digital de señales (DSP). La mayoría de los chips de conversión A/D (analógico a digital) y D/A (digital a analógico) son unipolares, lo que significa que ellos no pueden lidiar con señales bipolares (señales con ambos valores positivos y negativos). Una solución simple para eso es predisponer las señales analógicas con un offset DC igual a la mitad de la variación del conversor de A/D o D/A. Los datos digitales resultantes acaban quedando en formato binario.
La mayoría de los chips estándar de ordenador de CPU no consigue lidiar con el formato binario directamente. Los chips de CPU normalmente solo pueden tratar enteros con o sin señal, y formatos de valor de punto fluctuante. Los valores binarios pueden ser tratados de diversas formas por esos chips de CPU. Los datos pueden ser simplemente tratados como enteros sin señal, exigiendo que el programador tenga que lidiar con el desvío de cero en software. Los datos también pueden ser transformados para el formato entero con señal (que el procesador puede manipular de forma nativa) simplemente sustrayendo el desplazamiento cero.
El sistema binario ocurre con frecuencia en el procesamiento de señales digitales que muchos chips DSP pueden lidiar con desplazamiento binario si necesidad alguna de conversión de datos.
Tabla de códigos binarios para 4 bits
Código binario | Código decimal |
---|---|
1111 | 7 |
1110 | 6 |
1101 | 5 |
1100 | 4 |
1011 | 3 |
1010 | 2 |
1001 | 1 |
1000 | 0 |
0111 | −1 |
0110 | −2 |
0101 | −3 |
0100 | −4 |
0011 | −5 |
0010 | −6 |
0001 | −7 |
0000 | −8 |
Los valores binarios pueden ser convertidos en complemento de dos, invirtiéndose el bit más significativo. Por ejemplo, con 8 valores de bit, el valor de desplazamiento puede ser operado por XOR con 0x80, a fin de convertirse al complemento.