¿Qué es la codificación ponderada y no ponderada?

Fondo abstracto del código binario

La codificación ponderada ayuda con las conversiones binarias.

Credito de imagen: leszekglasner / iStock / Getty Images

Los circuitos digitales que ves dentro de las computadoras y otros dispositivos electrónicos solo pueden comunicarse a través de dos conceptos: encendido y apagado. Estos conceptos se nos representan en forma de numeración binaria, donde 0 está apagado y 1 está encendido. Para comunicarse verdaderamente con una computadora, se necesitan más conversiones para llevar el lenguaje de la computadora a un formato más humano. El primer paso en el proceso de conversión es convertir la codificación binaria en un sistema decimal más legible. La codificación ponderada y no ponderada se refiere al método en el que los números binarios se convierten a decimales. Con la codificación ponderada, a cada dígito de un número se le asigna un valor ponderado antes de la conversión. Los métodos de codificación no ponderados utilizan fórmulas ligeramente variadas pero realizan las conversiones sin el valor de ponderación.

Antes de comprender la codificación ponderada, primero debe comprender los sistemas de numeración y la notación posicional.

Video del día

Sistemas de numeración

Los sistemas de numeración se indican mediante una base, que es el número más alto con el que puede contar antes de tener que agregar otro dígito. Por ejemplo, el sistema de numeración que todos aprendemos de niños se llama base 10, porque los primeros diez números de la secuencia, del 0 al 9, se pueden contar con un solo dígito. Una vez que llegue a 10, debe cambiar todo y contar en números de dos dígitos hasta llegar a 100, y luego contar en números de tres dígitos. Este sistema de base 10 también se llama sistema decimal.

Notación posicional

La notación posicional ocurre cuando asigna un valor posicional a cada dígito en un número real, de derecha a izquierda. Para el número 4782, por ejemplo, comenzando con el 2 y contando de derecha a izquierda, las posiciones son 0, 1, 2, 3 como se muestra a continuación:

4782 = número 3210 = valores posicionales

Codificación ponderada

En el ejemplo anterior, las asignaciones posicionales de 0 a 3 pueden ser los valores ponderados de sus dígitos asignados. Entonces el peso del 4 es 3 y el peso del 7 es 2. El peso de un número entra en juego cuando se convierte de cualquier sistema de numeración base al sistema de numeración decimal (base 10). Una fórmula para convertir un número ponderado es multiplicar cada dígito por su base a la potencia de su posición y luego sumar todos los dígitos resultantes. En el siguiente ejemplo, 100101, que es un número binario de base 2, se convierte en un número decimal (base 10).

100101 = número binario (base 2) 543210 = pesos posicionales (1 x 2 ^ 5) + (0 x 2 ^ 4) + (0 x 2 ^ 3) + (1 x 2 ^ 2) + (0 x 2 ^ 1 ) + (1 x 2 ^ 0) = 32 + 0 + 0 + 4 + 0 + 1 = 37 37base10 = conversión decimal

Otros métodos ponderados incluyen BCD y 2421, cada uno de los cuales usa una fórmula similar para asignar pesos y convertir a decimal.

Codificación no ponderada

El código Gray es un método de codificación no ponderado que altera solo un bit en un número binario cuando se pasa de un número decimal al siguiente. En la codificación binaria normal, los dígitos 10 representarían el número decimal 2. Cuando se usa el código gris, un bit de ese número binario cambia, por lo que el número decimal 2 está representado por los dígitos binarios 0011. Secuencialmente, el número decimal 3, que normalmente estaría representado por los dígitos binarios 0011, ahora se convierte a 0010, porque solo un bit puede cambiar.

Excess-3 es otro método de codificación no ponderado y una vez se usó en computadoras más antiguas y máquinas de sumar. Con un exceso de 3, agrega 3 a un número decimal antes de convertirlo en binario. Entonces, el número decimal 2, por ejemplo, primero aumentaría en 3, convirtiéndolo en 5. La conversión binaria de 2 usando el método Exceso-3 sería 0101 en lugar de su valor binario normal de 0010.