SISTEMA BINARIO
Debido a su naturaleza analógica, el sistema decimal no es útil si la intención es
diseñar un circuito digital, ya que tenemos 10 diferentes números para trabajar, lo
que causaría un enorme dificultad de los circuitos electrónicos que deberían
reconocer 10 niveles de tensión o de corriente.
Pensando en esta complicación, al diseñar los circuitos digitales se optó por un
sistema mucho más eficaz para este tipo de trabajo, La manera más fácil de
trabajar sería teniendo solamente dos niveles de tensión o corriente Alto y Bajo.
Así se llegó a la solución de utilizar el sistema BINARIO (base 2), como
característica principal de los circuitos digitales, aunque esta no es una
consideración exclusiva. En efecto existen circuitos integrados que reconocen una
lógica de tres niveles.
En el sistema Binario, los numerales toman su valor de manera posicional (como
en el decimal) pero con un valor propio de los números binarios, cada dígito
binario utiliza su propio valor elevado a la potencia de 2.
En este sistema, por abreviación, el Dígito Binario se nombra como BIT, quedando
la tabla siguiente para un número de 4 bits.
BITS Bit más significativo (MSB) Bit menos significativo (LSB)
Número binario 1 0 1 0
Conversión X23 X23 X23 X20
Valor del bit 8 4 2 1
Número decimal = (1×23) + (0×23) + (1×23) + (0×20) = 8+0+2+0 = 10
Tabla 3. Ejemplo para calcular el valor decimal del numero binario 1010
Resumiendo, en un número de cuatro bits, el valor de cada bit dependiendo de su
posición es calculado fácilmente con la tabla siguiente.
BITS 4º bit (MSB) 3º bit 2º bit 1º bit (LSB)
Número binario 1 1 1 1
Conversión X23 X23 X23 X20
Valor del bit 8 4 2 1
Tabla 4. Valor de un bit de acuerdo a su posición dentro del número
Un número de ocho bits quedaría como en la tabla siguiente.
BITS 6º bit (MSB) 5º bit 4º bit 3º bit 2º bit 1º bit (LSB)
Número binario 1 1 1 1 1 1
Conversión X25 X24 X23 X22 X21 X20
Valor del bit 32 16 8 4 2 1
Tabla 5. Cálculo del valor de cada bit en un binario de 8 bits
Conteo Binario
Cuando nos enseñan los números analogicos lo primero que aprendemos es a
contar. Ahora que conocemos los números binarios debemos afianzar nuestros
conocimientos del mismo modo.
En la siguiente tabla usaremos un número de 4 bits para crear un conteo, al inicio
de al cuenta, todos los bits están en cero.
Con cada conteo, el LSB cambia su valor de un número binario al otro, cada vez
que este cambia de 1 a 0, el segundo bit cambia de estado también, cuando los
dos primeros bits cambian de 1 a 0, el tercer bit cambia su estado, y cuando los
tres primeros bits cambian de 1 a 0, cambia el MSB.
En la tabla siguiente se muestra el conteo Binario de un número de cuatro
Bits:BITS 4º bit (MSB) 3º bit 2º bit 1º bit (LSB) Valor decimal
Valor del bit bit valor 8 bit valor 4 bit valor 2 bit valor 1
0 0 0 0 0
0 0 0 1 1
0 0 1 0 2
0 0 1 1 3
0 1 0 0 4
0 1 0 1 5
0 1 1 0 6
0 1 1 1 7
1 0 0 0 8
1 0 0 1 9
1 0 1 0 10
1 0 1 1 11
1 1 0 0 12
1 1 0 1 13
1 1 1 0 14
1 1 1 1 15
Observando con detalle la tabla anterior, se llega a la conclusión de que el conteo
binario tiene una muy marcada característica:
El primer Bit (LSB) (Bit con valor “1″) cambia de 0 a 1 o de 1 a 0 con cada avance
del conteo.
El segundo Bit (Bit con valor “2″) se mantiene dos conteos en 1 y dos en 0.
El tercer Bit (Bit con valor “4″) se mantiene por cuatro conteos en 1 y cuatro en 0.
El cuarto Bit (MLB) (Bit con valor “8″) se mantiene por ocho conteos en 1 y ocho
en 0.
Si utilizáramos un quinto Bit en el conteo, este se mantendría dieciséis conteos en
1 y dieciséis en 0.
SISTEMA DECIMAL
El sistema DECIMAL, está formado por diez símbolos (numerales), 1, 2, 3, 4, 5, 6,
7, 8, 9, 0. Para poder expresar una cantidad es necesario utilizar estos símbolos
como dígitos de un número.
En el sistema decimal, cada número (además de su valor numeral) toma su valor
dependiendo de la posición donde se encuentre colocado dentro del número tal
como se indica en la tabla siguiente.
Millares Centenas Decenas Unidades
Valor numeral x1000 Valor numeral x100 Valor numeral x10 Valor numeral x1
Tabla 2. Valor de la posición dentro de un número decimal
Pongamos el ejemplo del número 1495, siguiendo la tabla arriba mencionada,
sabemos que:
El primer dígito (dígito más significativo – MSD en inglés) es 1 X1000 = 1 millar.
El segundo dígito es 4 X100 = 4 centenas.
El tercer dígito es 9 X10 = 9 decenas.
El cuarto dígito (dígito menos significativo – LSD en inglés) es 5 X 1 = 5 unidades.
En el sistema decimal, el valor de un número es igual a su valor numeral
multiplicado por el valor de la posición en la que se encuentra.
CONVERSIÓN DEL SISTEMA BINARIO A DECIMAL
En sistema decimal, las cifras que componen un número son las cantidades que
están multiplicando a las distintas potencias de diez (10, 100, 1000, 10000, etc.)
Por ejemplo, 745 = 7 · 100 + 4 · 10 + 5 · 1
O lo que es lo mismo: 745 = 7 · 102 + 4 · 101 + 5 · 100
En el sistema binario, las cifras que componen el número multiplican a las
potencias de dos (1, 2, 4, 8, 16, ….)
20=1, 21=2, 22=4, 23=8, 24=16, 25=32, 26=64, ...
Por ejemplo, para pasar a binario un número decimal, empezamos por la derecha
y vamos multiplicando cada cifra por las sucesivas potencias de 2, avanzando
hacia la izquierda:
101102 = 0 · 1 + 1 · 2 + 1 · 4 + 0 · 8 + 1 · 16 = 2 + 4 + 16 = 2210
1102 = 0 · 1 + 1 · 2 + 1 · 4 = 2 + 4 = 610
CONVERSIÓN DEL SISTEMA DECIMAL A BINARIO
Escribe el problema. Para este ejemplo, vamos a convertir el número decimal
15610 a número binario. Escribe el número decimal como el dividendo al interior
de un signo de división "largo". Escribe la base del sistema al que quieres convertir
(en nuestro caso, "2" para número binario) como el divisor por fuera del signo de
división.
Este método es mucho más fácil de comprender si se visualiza en papel, y
también es mucho más fácil de realizar para los principiantes, ya que lo único que
hay que hacer es una división por dos.
Para evitar la confusión antes y después de la conversión, escribe el número del
sistema base con el que vas a trabajar como un subíndice por cada número. En
este caso, el número decimal tendrá un subíndice de 10 y el equivalente binario
tendrá un subíndice de 2.
Haz la división. Escribe la respuesta (cociente) debajo del signo de división, y
escribe el residuo (0 o 1) a la derecha del dividendo.
Ya que estamos dividendo por 2, cuando el dividendo sea un número par, el
residuo será 0, y cuando el dividendo sea un número impar el residuo binario será
1.
Continúa dividiendo hasta que el resultado sea 0. Continúa hacia abajo de la hoja,
dividiendo cada nuevo cociente por dos y escribiendo el residuo a la derecha de
cada dividendo. Detente cuando el cociente sea 0. Escribe el número binario que
obtuviste. Empezando desde el último residuo, lee la secuencia de residuos hacia
arriba hasta llegar al primero. En nuestro ejemplo, deberías tener 10011100. Ese
es el equivalente binario del número decimal 156. O, escrito con los subíndices de
las bases: 15610 = 100111002.
Este método puede modificarse para convertir de número decimal a número
en cualquier tipo de base. El divisor es 2 porque queríamos convertir a sistema de
base 2 (binario). Si quieres trabajar con un sistema de base diferente, reemplaza
el 2 en el método anterior con el número del sistema base al que quieres convertir.
Por ejemplo, si deseas convertir a sistema en base 9, reemplaza el 2 por el 9. El
resultado final estará expresado en la base que desees.
EL SISTEMA HEXADECIMAL
El sistema de numeración hexadecimal (Hex) tiene base 16, por lo que tiene 16
símbolos (numerales), utilizando dígitos de la A a la F para representar los
números del 10 al 15. Quedando los símbolos: 0, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D,
E, F.
BITS bit más significativo (MSB) bit menos significativo (LSB)
Número binario 1 A 8 E
Conversión X163 X162 X161 X160
Valor del bit 4096 256 16 0
Número = (1×4096) + (10×256) + (8×16) + (14×1) = 4096 + 3560 + 128 +
decimal 14 = 6798
Tabla 7.
Conteo Hexadecimal
El mayor número del sistema Hexadecimal (Hex) es el 15, por lo que cuando
hacemos un conteo hacia arriba se incrementa un dígito por conteo, al llegar a la F
(15), se reinicia la cuenta de ese Bit y al siguiente de le incrementa su conteo un
dígito:
Primer conteo = 28, 29, 2A, 2B, 2C, 2D, 2E, 2F, 30, 31, 32…
Segundo conteo = 5F8, 5F9, 5FA, 5FB, 5FC, 5FD, 5FE, 5FF, 600, 601, 602…
El sistema numérico hexadecimal o sistema hexadecimal (a veces abreviado
como Hex, no confundir con sistema sexagesimal) es un sistema de
numeración que emplea 16 símbolos. Su uso actual está muy vinculado a
la informática y ciencias de la computación, pues los computadores suelen utilizar
el byte u octeto como unidad básica de memoria; y, debido a que un byte
representa valores posibles, y esto puede representarse como
que, según el teorema general de la numeración posicional, equivale al número en
base 16 , dos dígitos hexadecimales corresponden exactamente —permiten
representar la misma línea de enteros— a un byte.
En principio, dado que el sistema usual de numeración es de base decimal y, por
ello, sólo se dispone de diez dígitos, se adoptó la convención de usar las seis
primeras letras del alfabeto latino para suplir los dígitos que nos faltan. El conjunto
de símbolos sería, por tanto, el siguiente:
Se debe notar que A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. En ocasiones
se emplean letras minúsculas en lugar de mayúsculas. Como en cualquier sistema
de numeración posicional, el valor numérico de cada dígito es alterado
dependiendo de su posición en la cadena de dígitos, quedando multiplicado por
una cierta potencia de la base del sistema, que en este caso es 16. Por ejemplo:
3E0A16 = 3×163 + E×162 + 0×161 + A×160 = 3×4096 + 14×256 + 0×16 + 10×1 =
15882.
El sistema hexadecimal actual fue introducido en el ámbito de la computación por
primera vez por IBM en 1963. Una representación anterior, con 0–9 y u–z, fue
usada en 1956 por la computadora Bendix G-15.
SISTEMA OCTAL
El sistema numérico en base 8 se llama octal y utiliza los dígitos 0 a 7.
Para convertir un número en base decimal a base octal se divide por 8
sucesivamente hasta llegar a cociente 0, y los restos de las divisiones en orden
inverso indican el número en octal. Para pasar de base 8 a base decimal, solo hay
que multiplicar cada cifra por 8 elevado a la posición de la cifra, y sumar el
resultado.
Es más fácil pasar de binario a octal, porque solo hay que agrupar de 3 en 3 los
dígitos binarios, así, el número 74 (en decimal) es 1001010 (en binario), lo
agruparíamos como 1 / 001 / 010, después obtenemos el número en decimal de
cada uno de los números en binario obtenidos: 1=1, 001=1 y 010=2. De modo que
el número decimal 74 en octal es 112.
En informática a veces se utiliza la numeración octal en vez de la hexadecimal, y
se suele indicar poniendo 0x delante del número octal. Tiene la ventaja de que no
requiere utilizar otros símbolos diferentes de los dígitos. Sin embargo, para
trabajar con bytes o conjuntos de ellos, asumiendo que un byte es una palabra de
8 bits, suele ser más cómodo elsistema hexadecimal, por cuanto todo byte así
definido es completamente representable por dos dígitos hexadecimales.
El sistema numérico hexadecimal o sistema hexadecimal (a veces abreviado
como Hex, no confundir con sistema sexagesimal) es un sistema de
numeración que emplea 16 símbolos. Su uso actual está muy vinculado a
la informática y ciencias de la computación, pues los computadores suelen utilizar
el byte u octeto como unidad básica de memoria; y, debido a que un byte
representa valores posibles, y esto puede representarse como
que, según el teorema general de la numeración posicional, equivale al número en
base 16 , dos dígitos hexadecimales corresponden exactamente —permiten
representar la misma línea de enteros— a un byte.
En principio, dado que el sistema usual de numeración es de base decimal y, por
ello, sólo se dispone de diez dígitos, se adoptó la convención de usar las seis
primeras letras del alfabeto latino para suplir los dígitos que nos faltan. El conjunto
de símbolos sería, por tanto, el siguiente:
Se debe notar que A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. En ocasiones
se emplean letras minúsculas en lugar de mayúsculas. Como en cualquier sistema
de numeración posicional, el valor numérico de cada dígito es alterado
dependiendo de su posición en la cadena de dígitos, quedando multiplicado por
una cierta potencia de la base del sistema, que en este caso es 16. Por ejemplo:
3E0A16 = 3×163 + E×162 + 0×161 + A×160 = 3×4096 + 14×256 + 0×16 + 10×1 =
15882.
El sistema hexadecimal actual fue introducido en el ámbito de la computación por
primera vez por IBM en 1963. Una representación anterior, con 0–9 y u–z, fue
usada en 1956 por la computadora Bendix G-15.
Sistema de numeración octal
El sistema de numeración octal es un sistema de numeración en base 8, una base
que es potencia exacta de 2 o de la numeración binaria. Esta característica hace
que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8
dígitos (0, 1, 2, 3, 4, 5, 6, 7) y tienen el mismo valor que en el sistema de
numeración decimal.
CODIGO BCD
Código BCD (Binary-Coded Decimal (BCD) o Decimal codificado). Binario es un
estándar para representar números decimales en el sistema binario, en donde
cada dígito decimal es codificado con una secuencia de 4 bits.
Con esta codificación especial de los dígitos decimales en el sistema binario, se
pueden realizar operaciones aritméticas como suma, resta, multiplicación y
división de números en representación decimal, sin perder en los cálculos la
precisión ni tener las inexactitudes en que normalmente se incurren con las
conversiones de decimal a binario puro y de binario puro a decimal.
La conversión de los números decimales a BCD y viceversa es muy sencilla, pero
los cálculos en BCD se llevan más tiempo y son algo más complicados que con
números binarios puros.
Representación
Cada dígito decimal tiene una representación binaria codificada con 4
bits:Decimal: 0 1 2 3 4 5 6 7 8 9
BCD: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
Los números decimales, se codifican en BCD con los de bits que representan sus
dígitos.
Tabla del Código BCD
Ejemplo
La codificación en BCD del número decimal 59237
es:Decimal: 5 9 2 3 7
BCD: 0101 1001 0010 0011 0111
La representación anterior (en BCD) es diferente de la representación del mismo
número decimal en binario puro:
11100111 01100101
CODIGO EXCESO 3
El código de exceso 3 se relaciona con el BCD (Ver entrada Código BCD (Código
decimal codificado en binario) y algunas veces se utiliza en lugar de éste debido a
que posee ventajas en ciertas operaciones aritméticas. Deriva su nombre de
exceso 3 debido a que cada grupo de 4 bits equivale al número BCD 8421 mas 3.
El código de exceso 3 para un numero decimal se efectúa de la misma forma que
el BCD, excepto que se suma el número 3 a cada dígito decimal antes de
codificarlo en binario. Por ejemplo, para codificar el número decimal 4 en código
de exceso 3 primero debemos sumar 3 y obtenemos 7. Luego el 7 se codifica en
su equivalente binario de 4 bits, 0111.
Para poner otro ejemplo convirtamos el número 48 en representación en código de
exceso 3:
La tabla siguiente contiene las representaciones en código BCD y de exceso 3
para los dígitos decimales. Nótese que ambos códigos solo emplean 10 de los 16
posibles grupos de códigos de 4 bits. Sin embargo, el código de exceso 3 no usa
los mismos grupos de código. Para el código de exceso 3, los grupos de código no
válidos son: 0000, 0001, 0010, 1101, 1110 y 1111.
CODIGO GRAY
Este código no es ponderado, es decir, los bits no tienen un peso asociado.
El código Gray es un tipo especial de código binario que no es ponderado (los
dígitos que componen el código no tienen un peso asignado). Su característica es
que entre una combinación de dígitos y la siguiente, sea ésta anterior o posterior,
sólo hay una diferencia de un dígito.
Por eso también se le llama Código progresivo. Esta progresión sucede también
entre la última y la primera combinación. Por eso se le llama también código
cíclico. (ver tabla)
El código GRAY es utilizado principalmente en sistemas de posición, ya sea
angular o lineal. Sus aplicaciones principales se encuentran en la industria y en
robótica. En robótica se utilizan unos discos codificados para dar la información de
posición que tiene un eje en particular. Esta información se da en código GRAY.
Analizando la tabla anterior se observa que:
Cuando un número binario pasa de: 0111 a 1000 (de 7 a 8 en decimal) o de 1111
a 0000 (de 16 a 0 en decimal) cambian todas las cifras.
Para el mismo caso pero en código Gray: 0100 a 1100 (de 7 a 8 en decimal) o de
1000 a 0000 (de 16 a 0 en decimal) sólo ha cambiado una cifra.
La característica de pasar de un código al siguiente cambiando sólo un dígito
asegura menos posibilidades de error.