You are on page 1of 31

Cdigo binario

El cdigo binario es el sistema numrico usado para la representacin de textos, o


procesadores de instrucciones de computadora, utilizando el sistema binario (sistema
numrico de dos dgitos, o bit: el "0" /cerrado/ y el "1" /abierto/).
En informtica y telecomunicaciones, el cdigo binario se utiliza con variados mtodos de
codificacin de datos, tales como cadenas de caracteres, o cadenas de bits. Estos mtodos
pueden ser de ancho fijo o ancho variable. Por ejemplo en el caso de un CD, las seales que
reflejarn el "lser" que rebotar en el CD y ser recepcionado por un sensor de distinta forma
indicando as, si es un cero o un uno.
En un cdigo binario de ancho fijo, cada letra, dgito, u otros smbolos, estn representados
por una cadena de bits de la misma longitud, como un nmero binario que, por lo general,
aparece en las tablas en notacin octal, decimal o hexadecimal.
Segn Anton Glaser, en su History of Binary and other Nondecimal Numeration, comenta que
los primeros cdigos binarios se utilizaron en el ao 1932: C.E. Wynn-Williams ("Scale of
Two"), posteriormente en 1938: Atanasoff-Berry Computer, y en 1939: Stibitz ("excess three")
el cdigo en Complex Computer.
Es frecuente tambin ver la palabra bit referida bien a la ausencia de seal, expresada con el
dgito "0", o bien referida a la existencia de la misma, expresada con el dgito "1". El byte es un
grupo de 8 bits, es decir en l tenemos 256 posibles estados binarios.

La palabra Wikipedia representada en cdigo binario.

ndice
[ocultar]

1Caractersticas del cdigo binario


o

1.1Ponderacin

1.2Distancia

1.3Autocomplementariedad
2Vase tambin

Caractersticas del cdigo binario[editar]


Ponderacin[editar]
La mayora de los sistemas de numeracin actuales son ponderados es decir, cada posicin
de una secuencia de dgitos tiene asociado un peso. El sistema binario es, de hecho, un
sistema de numeracin posicional ponderado. Sin embargo, algunos cdigos binarios, como
el cdigo Gray no son ponderados es decir, no tienen un peso asociado a cada posicin.
Otros, como el mismo cdigo binario natural o el BCD natural s lo son.

Distancia[editar]

La distancia es una caracterstica slo aplicable a las combinaciones binarias. La distancia


entre dos combinaciones es el nmero de bits que cambian de una a otra. Por ejemplo: si se
tienen las combinaciones de cuatro bits 0010 y 0111 correspondientes al 2 y al 7 en binario
natural, se dir que la distancia entre ellas es igual a dos ya que de una a otra cambian dos
bits.
Adems, con el concepto de distancia se puede definir la distancia mnima de un cdigo. sta
no es ms que la distancia menor que haya entre dos de las combinaciones de ese cdigo.
La distancia es una caracterstica que, adems, slo se aplica a las combinaciones binarias.
En resumen, la distancia entre dos combinaciones es el nmero de bits que cambian de una a
otra.

Autocomplementariedad[editar]
Se dice que un cdigo binario es autocomplementario cuando el complemento a 9 del
equivalente decimal de cualquier combinacin del cdigo puede hallarse invirtiendo los valores
de cada uno de los bits (operacin lgica unaria de negacin) y el resultado sigue siendo una
combinacin vlida en ese cdigo. Esta caracterstica se observa en algunos cdigos BCD,
como el cdigo Aiken o el cdigo BCD exceso 3. Los cdigos autocomplementarios facilitan
las operaciones aritmticas.
En un cdigo binario de ancho fijo, cada letra, dgito, u otros smbolos, estn representados
por una cadena de bits de la misma longitud, como un nmero binario que, por lo general,
aparece en las tablas en notacin octal, decimal o hexadecimal.
Segn Anton Glaser, en su History of Binary and other Nondecimal Numeration, comenta que
los primeros cdigos binarios se utilizaron en el ao 1932: C.E. Wynn-Williams ("Scale of
Two"), posteriormente en 1938: Atanasoff-Berry Computer, y en 1939: Stibitz ("excess three")
el cdigo en Complex Computer.
Es frecuente tambin ver la palabra bit referida bien a la ausencia de seal, expresada con el
dgito "0", o bien referida a la existencia de la misma, expresada con el dgito "1". El byte es un
grupo de 8 bits, es decir en l tenemos 256 posibles estados binarios.

istema binario
Este artculo o seccin necesita referencias que aparezcan en una publicacin acreditada. Este
aviso fue puesto el 5 de diciembre de 2013.
Puedes aadirlas o avisar al autor principal del artculo en su pgina de discusin
pegando: {{sust:Aviso referencias|Sistema binario}} ~~~~

Para otros usos de este trmino, vase Sistema binario (astronoma).


El sistema binario, llamado tambin sistema didico1 en ciencias de la computacin, es
un sistema de numeracin en el que los nmeros se representan utilizando solamente
dos cifras: cero y uno (0 y 1). Es uno de los sistemas que se utilizan en las computadoras,
debido a que estas trabajan internamente con dos niveles de voltaje, por lo cual su sistema de
numeracin natural es el sistema binario (encendido 1, apagado 0).2
ndice
[ocultar]

1Historia del sistema binario

1.1Aplicaciones

2Representacin

3Conversin entre binario y decimal


o

3.1Decimal a binario

3.2Decimal (con decimales) a binario

3.3Binario a decimal

3.4Binario a decimal (con parte fraccionaria binaria)

4Operaciones con nmeros binarios


o

4.1Adicin de nmeros binarios

4.2Sustraccin de nmeros binarios

4.3Producto de nmeros binarios

4.4Divisin de nmeros binarios

5Conversin entre sistema binario y octal


o

5.1Sistema binario a octal

5.2Octal a binario

6Conversin entre binario y hexadecimal


o

6.1Binario a hexadecimal

6.2Hexadecimal a binario

7Tabla de conversin entre decimal, binario, hexadecimal, octal, BCD, Exceso 3 y Gray o
Reflejado

8Factorizacin

9Vase tambin

10Referencias

11Enlaces externos

Historia del sistema binario[editar]

Pgina del artculo Explication de l'Arithmtique Binaire de Leibniz.

El antiguo matemtico indio Pingala present la primera descripcin que se conoce de un


sistema de numeracin binario en el siglo tercero antes de nuestra era, lo cual coincidi con
su descubrimiento del concepto del nmero cero.
Una serie completa de 8 trigramas y 64 hexagramas (anlogos a 3 bits) y nmeros binarios de
6 bits eran conocidos en la antigua China en el texto clsico del I Ching. Series similares de
combinaciones binarias tambin han sido utilizadas en sistemas de adivinacin tradicionales
africanos, como el If, as como en la geomancia medieval occidental.
Un arreglo binario ordenado de los hexagramas del I Ching, representando la secuencia
decimal de 0 a 63, y un mtodo para generar el mismo fue desarrollado por el erudito y filsofo
Chino Shao Yong en el siglo XI.
En 1605 Francis Bacon habl de un sistema por el cual las letras del alfabeto podran
reducirse a secuencias de dgitos binarios, las cuales podran ser codificadas como
variaciones apenas visibles en la fuente de cualquier texto arbitrario.
El sistema binario moderno fue documentado en su totalidad por Leibniz, en el siglo XVII, en
su artculo "Explication de l'Arithmtique Binaire". En l se mencionan los smbolos binarios
usados por matemticos chinos. Leibniz utiliz el 0 y el 1, al igual que el sistema de
numeracin binario actual.
En 1854, el matemtico britnico George Boole public un artculo que marc un antes y un
despus, detallando un sistema de lgica que terminara denominndose lgebra de Boole.
Dicho sistema desempeara un papel fundamental en el desarrollo del sistema binario actual,
particularmente en el desarrollo de circuitos electrnicos.

Aplicaciones[editar]
En 1937, Claude Shannon realiz su tesis doctoral en el MIT, en la cual implementaba
el lgebra de Boole y aritmtica binaria utilizando rels y conmutadores por primera vez en la
historia. Titulada Un Anlisis Simblico de Circuitos Conmutadores y Rels, la tesis de
Shannon bsicamente fund el diseo prctico de circuitos digitales.
En noviembre de 1937, George Stibitz, trabajando por aquel entonces en los Laboratorios Bell,
construy una computadora basada en rels a la cual apod "Modelo K" (porque la

construy en una cocina, en ingls "kitchen") que utilizaba la suma binaria para realizar los
clculos. Los Laboratorios Bell autorizaron un completo programa de investigacin a finales de
1938, con Stibitz al mando.
El 8 de enero de 1940 terminaron el diseo de una "Calculadora de Nmeros Complejos", la
cual era capaz de realizar clculos con nmeros complejos. En una demostracin en la
conferencia de la Sociedad Estadounidense de Matemtica, el 11 de septiembre de 1940,
Stibitz logr enviar comandos de manera remota a la Calculadora de Nmeros Complejos a
travs de la lnea telefnica mediante un teletipo. Fue la primera mquina computadora
utilizada de manera remota a travs de la lnea de telfono. Algunos participantes de la
conferencia que presenciaron la demostracin fueron John von Neumann, John
Mauchly y Norbert Wiener, quien escribi acerca de dicho suceso en sus diferentes tipos de
memorias en la cual alcanz diferentes logros.
Vase tambin: Cdigo binario

Representacin[editar]
En el sistema binario solo se necesitan dos cifras.
En informtica, un nmero binario puede ser representado por cualquier secuencia de bits
(dgitos binarios), que suelen representar cualquier mecanismo capaz de usar dos estados
mutuamente excluyentes. Las siguientes secuencias de smbolos podran ser interpretadas
como el mismo valor numrico binario:
1

x
y

o
n

x
y

o
n

o
n

x
y

x
y

o
n

x
y

x
y

El valor numrico representado en cada caso depende del valor asignado a cada smbolo. En
una computadora, los valores numricos pueden representar dos voltajes diferentes; tambin
pueden indicar polaridades magnticas sobre un disco magntico. Un "positivo", "s", o "sobre
el estado" no es necesariamente el equivalente al valor numrico de uno; esto depende de la
nomenclatura usada.
De acuerdo con la representacin ms habitual, que es usando nmeros arbigos, los
nmeros binarios comnmente son escritos usando los smbolos 0 y 1. Los nmeros binarios
se escriben a menudo con subndices, prefijos o sufijos para indicar su base. Las notaciones
siguientes son equivalentes:

100101 binario (declaracin explcita de formato)

100101b (un sufijo que indica formato binario)

100101B (un sufijo que indica formato binario)

bin 100101 (un prefijo que indica formato binario)

1001012 (un subndice que indica base 2 (binaria) notacin)

%100101 (un prefijo que indica formato binario)

0b100101 (un prefijo que indica formato binario, comn en lenguajes de programacin)

Conversin entre binario y decimal[editar]


Decimal a binario[editar]
Se divide el nmero del sistema decimal entre 2, cuyo resultado entero se vuelve a dividir
entre 2, y as sucesivamente hasta que el dividendo sea menor que el divisor, 2. Es decir,
cuando el nmero a dividir sea 1 finaliza la divisin.
A continuacin se ordenan los restos empezando desde el ltimo al primero, simplemente se
colocan en orden inverso a como aparecen en la divisin, se les da la vuelta. Este ser el
nmero binario que buscamos.
Ejemplo
Transformar el nmero decimal 131 en binario. El mtodo es muy simple:
131 dividido entre 2 da 65 y el residuo es igual a 1
65 dividido entre 2 da 32 y el residuo es igual a 1
32 dividido entre 2 da 16 y el residuo es igual a 0
16 dividido entre 2 da 8

y el residuo es igual a 0

8 dividido entre 2 da 4

y el residuo es igual a 0

4 dividido entre 2 da 2

y el residuo es igual a 0

2 dividido entre 2 da 1

y el residuo es igual a 0

1 dividido entre 2 da 0

y el residuo es igual a 1

-> Ordenamos los residuos, del ltimo al primero:


10000011

En sistema binario, 131 se escribe 10000011


Ejemplo
Transformar el nmero decimal 100 en binario.

Otra forma de conversin consiste en un mtodo parecido a la factorizacin


en nmeros primos. Es relativamente fcil dividir cualquier nmero entre 2. Este
mtodo consiste tambin en divisiones sucesivas. Dependiendo de si el nmero es
par o impar, colocaremos un cero o un uno en la columna de la derecha. Si es impar,
le restaremos uno y seguiremos dividiendo entre dos, hasta llegar a 1. Despus solo
nos queda tomar el ltimo resultado de la columna izquierda y todos los de la columna
de la derecha y ordenar los dgitos de abajo a arriba.

Ejemplo
100|0
50|0
25|1

--> 1, 25-1=24 y seguimos dividiendo entre 2

12|0
6|0
3|1
1|1

-->

Ejemplo3
Para convertir al sistema binario el nmero decimal 77 haremos una serie de
divisiones que arrojarn los siguientes resultados:
77 / 2 = 38

Residuo ==> 1

38 / 2 = 19

Residuo ==> 0

19 / 2 =

Residuo ==> 1

9 / 2 =

Residuo ==> 1

4 / 2 =

Residuo ==> 0

2 / 2 =

Residuo ==> 0

1 / 2 =

Residuo ==> 1

Ahora tomando los Residuos en orden inverso el resultado es:


En orden inverso: 1001101(binario)

Existe un ltimo mtodo denominado de distribucin. Consiste en distribuir los unos


necesarios entre las potencias sucesivas de 2 de modo que su suma resulte ser el
nmero decimal a convertir. Sea por ejemplo el nmero 151, para el que se
necesitarn las 8 primeras potencias de 2, ya que la siguiente, 28=256, es superior al
nmero a convertir. Se comienza poniendo un 1 en 128, por lo que an faltarn 23,
151-128 = 23, para llegar al 151. Este valor se conseguir distribuyendo unos entre
las potencias cuya suma d el resultado buscado y poniendo ceros en el resto. En el
ejemplo resultan ser las potencias 4, 2, 1 y 0, esto es, 16, 4, 2 y 1, respectivamente.
Ejemplo
20=

1|1

2=

2|1

2=

4|1

8|0

2=

24=

16|1

25=

32|0

64|0

2=
7

2 = 128|1

Decimal (con decimales) a binario[editar]


Para transformar un nmero del sistema decimal al sistema binario:
1. Se transforma la parte entera a binario. (Si la parte entera es 0 en binario ser
0, si la parte entera es 1 en binario ser 1, si la parte entera es 5 en binario
ser 101 y as sucesivamente).
2. Se sigue con la parte fraccionaria, multiplicando cada nmero por 2. Si el
resultado obtenido es mayor o igual a 1 se anota como un uno (1) binario. Si
es menor que 1 se anota como un 0 binario. (Por ejemplo, al multiplicar 0.6
por 2 obtenemos como resultado 1.2 lo cual indica que nuestro resultado es
un uno (1) en binario, solo se toma la parte decimal del resultado).
3. Despus de realizar cada multiplicacin, se colocan los nmeros obtenidos en
el orden de su obtencin.
4. Algunos nmeros se transforman en dgitos peridicos, por ejemplo: el 0.1.
Ejemplo
0,3125 (decimal)

=> 0,0101 (binario).

Proceso:
0,3125 * 2 = 0,625 => 0
0,625

* 2 = 1,25

=> 1

0,25

* 2 = 0,5

=> 0

0,5

* 2 = 1

=> 1

En orden: 0101

-> 0,0101 (binario)

Ejemplo
0,1 (decimal) => 0,0 0011 0011 ... (binario).
Proceso:
0,1 * 2 = 0,2 ==> 0
0,2 * 2 = 0,4 ==> 0
0,4 * 2 = 0,8 ==> 0
0,8 * 2 = 1,6 ==> 1

0,6 * 2 = 1,2 ==> 1


0,2 * 2 = 0,4 ==> 0

<--se repiten las cuatro cifras,

peridicamente
0,4 * 2 = 0,8 ==> 0

<-

0,8 * 2 = 1,6 ==> 1

<-

0,6 * 2 = 1,2 ==> 1

<- ...

En orden: 0 0011 0011 ... => 0,0 0011 0011 ... (binario peridico)

Ejemplo4
Convertir 0.2 (decimal) a binario.
Proceso:
0.2 * 2 = 0.4 ==> 0
0.4 * 2 = 0.8 ==> 0
0.8 * 2 = 1.6 ==> 1
0.6 * 2 = 1.2 ==> 1
0.2 * 2 = 0.4 ==> 0
como se repiten los valores indefinidamente, el resultado es:
En orden: 0.001100110011...(decimal)

Ejemplo
5.5 = 5,5
5,5 (decimal)

=> 101,1 (binario).

Proceso:
5 => 101
0,5 * 2 = 1 => 1
En orden: 1 (un solo dgito fraccionario) -> 101,1 (binario)

Ejemplo
6,83 (decimal)

=> 110,110101000111 (binario).

Proceso:
6 => 110
0,83 * 2 = 1,66 => 1
0,66 * 2 = 1,32 => 1
0,32 * 2 = 0,64 => 0
0,64 * 2 = 1,28 => 1

0,28 * 2 = 0,56 => 0


0,56 * 2 = 1,12 => 1
0,12 * 2 = 0,24 => 0
0,24 * 2 = 0,48 => 0
0,48 * 2 = 0,96 => 0
0,96 * 2 = 1,92 => 1
0,92 * 2 = 1,84 => 1
0,84 * 2 = 1,68 => 1
En orden: 110101000111 (binario)
Parte entera: 110 (binario)
Encadenando parte entera y fraccionaria: 110,110101000111 (binario)

Binario a decimal[editar]
Para realizar la conversin de binario a decimal, realice lo siguiente:
1. Comience por el lado derecho del nmero en binario. Multiplique cada dgito
por 2 elevado a la potencia consecutiva (comenzando por la potencia 0, 2 0).
2. Despus de realizar cada una de las multiplicaciones, smelas todas y el
nmero resultante ser el equivalente al sistema decimal.
Ejemplos:

(Los nmeros de arriba indican la potencia a la que hay que elevar 2)

Tambin se puede optar por utilizar los valores que presenta cada posicin del
nmero binario a ser transformado, comenzando de derecha a izquierda, y sumando
los valores de las posiciones que tienen un 1.
Ejemplo
El nmero binario 1010010 corresponde en decimal al 82. Se puede representar de la
siguiente manera:
entonces se suman los nmeros 64, 16 y 2:
Para cambiar de binario con decimales a decimal se hace exactamente igual, salvo
que la posicin cero (en la que el dos es elevado a la cero) es la que est a la
izquierda de la coma y se cuenta hacia la derecha a partir de -1:

Binario a decimal (con parte fraccionaria binaria) [editar]


1. Inicie por el lado izquierdo (la primera cifra a la derecha de la coma), cada nmero
deber ser multiplicado por 2 elevado a la potencia consecutiva a la inversa
(comenzando por la potencia -1, 2-1).
2. Despus de realizar cada una de las multiplicaciones, sume todas y el nmero
resultante ser el equivalente al sistema decimal.
Ejemplos

0,101001 (binario) = 0,640625(decimal). Proceso:

1 * 2 elevado a -1 = 0,5
0 * 2 elevado a -2 = 0
1 * 2 elevado a -3 = 0,125
0 * 2 elevado a -4 = 0
0 * 2 elevado a -5 = 0
1 * 2 elevado a -6 = 0,015625
La suma es: 0,640625

0,110111 (binario) = 0,859375(decimal). Proceso:

1 * 2 elevado a -1 = 0,5
1 * 2 elevado a -2 = 0,25
0 * 2 elevado a -3 = 0
1 * 2 elevado a -4 = 0,0625
1 * 2 elevado a -5 = 0,03125
1 * 2 elevado a -6 = 0,015625
La suma es: 0,859375

Operaciones con nmeros binarios[editar]


Adicin de nmeros binarios[editar]
La tabla de sumar para nmeros binarios es la siguiente:
+

10

Las posibles combinaciones al sumar dos bits son:

0+0=0

0+1=1

1+0=1

1 + 1 = 10

Note que al sumar 1 + 1 es 102, es decir, llevamos 1 a la siguiente posicin de la


izquierda (acarreo). Esto es equivalente en el sistema decimal a sumar 9 + 1, que da
10: cero en la posicin que estamos sumando y un 1 de acarreo a la siguiente
posicin.
Ejemplo
1
10011000
+ 00010101

10101101

Se puede convertir la operacin binaria en una operacin decimal, resolver la decimal,


y despus transformar el resultado en un (nmero) binario. Operamos como en el
sistema decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 =
10, entonces escribimos 0 en la fila del resultado y llevamos 1 (este "1" se
llama acarreo oarrastre). A continuacin se suma el acarreo a la siguiente columna: 1
+ 0 + 0 = 1, y seguimos hasta terminar todas las columnas (exactamente como en
decimal).3

Sustraccin de nmeros binarios[editar]


El algoritmo de la resta en sistema binario es el mismo que en el sistema decimal.
Pero conviene repasar la operacin de restar en decimal para comprender la
operacin binaria, que es ms sencilla. Los trminos que intervienen en la resta se
llaman minuendo, sustraendo y diferencia.
Las restas bsicas 0 - 0, 1 - 0 y 1 - 1 son evidentes:

0-0=0

1-0=1

1-1=0

0 - 1 = 1 (se transforma en 10 - 1 = 1) (en sistema decimal equivale a 2 - 1 = 1)

La resta 0 - 1 se resuelve igual que en el sistema decimal, tomando una unidad


prestada de la posicin siguiente: 0 - 1 = 1 y me llevo 1 (este valor se resta al
resultado que obtenga, entre el minuendo y el sustraendo de la siguiente columna), lo
que equivale a decir en el sistema decimal, 2 - 1 = 1.
Ejemplos
10001

11011001

-01010

-10101011

00111

00101110

En sistema decimal sera: 17 - 10 = 7 y 217 - 171 = 46.

Para simplificar las restas y reducir la posibilidad de cometer errores hay varios
mtodos:

Dividir los nmeros largos en grupos. En el siguiente ejemplo, vemos cmo se


divide una resta larga en tres restas cortas:
100110011101

1001

1001

1101

-010101110010

-0101

-0111

-0010

0100

0010

1011

010000101011

Utilizando el complemento a dos (C2). La resta de dos nmeros binarios puede


obtenerse sumando al minuendo el complemento a dos del sustraendo.
Ejemplo
La siguiente resta, 91 - 46 = 45, en binario es:
1011011
-0101110

1011011
el C2 de 0101110 es 1010010

+1010010

0101101

10101101

En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el
nmero resultante no puede ser ms largo que el minuendo, el bit sobrante se
desprecia.
Un ltimo ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el
complemento a dos:
11011011
11011011
-00010111

el C2 de 00010111 es 11101001

+11101001

11000100
111000100

Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado


correcto: 11000100 en binario, 196 en decimal.

Utilizando el complemento a uno. La resta de dos nmeros binarios puede


obtenerse sumando al minuendo el complemento a uno del sustraendo y a su vez
sumarle el bit que se desborda.

Producto de nmeros binarios[editar]

La tabla de multiplicar para nmeros binarios es la siguiente:

El algoritmo del producto en binario es igual que en nmeros decimales; aunque se


lleva a cabo con ms sencillez, ya que el 0 multiplicado por cualquier nmero da 0, y
el 1 es el elemento neutro del producto.
Por ejemplo, multipliquemos 10110 por 1001:
10110
x 1001

10110
00000
00000
10110

11000110

En sistemas electrnicos, donde suelen usarse nmeros mayores, se utiliza el mtodo


llamado algoritmo de Booth.
11101111
x 111011
__________
11101111
11101111
00000000
11101111
11101111
11101111
______________
11011100010101

Divisin de nmeros binarios[editar]

La divisin en binario es similar a la decimal; la nica diferencia es que a la hora de


hacer las restas, dentro de la divisin, estas deben ser realizadas en binario.
Ejemplo
Dividir 100010010 (274) entre 1101 (13):
100010010 /1101 = 010101
-0000

10001
-1101

01000
- 0000

10000
- 1101

00111
- 0000

01110
- 1101

00001

Conversin entre sistema binario y octal[editar]


Sistema binario a octal[editar]
Debido a que el sistema octal tiene como base 8, que es la tercera potencia de 2, y
que dos es la base del sistema binario, es posible establecer un mtodo directo para
convertir de la base dos a la base ocho, sin tener que convertir de binario a decimal y
luego de decimal a octal. Este mtodo se describe a continuacin:
Para realizar la conversin de binario a octal, realice lo siguiente:
1) Agrupe la cantidad binaria en grupos de 3 en 3 iniciando por el lado derecho. Si al
terminar de agrupar no completa 3 dgitos, entonces agregue ceros a la izquierda.
2) Posteriormente vea el valor que corresponde de acuerdo a la tabla:
Nmero en binario

Nmero en octal

000

001

010

011

100

101

110

111

3) La cantidad correspondiente en octal se agrupa de izquierda a derecha.


Ejemplos

110111 (binario) = 67 (octal). Proceso:

111 = 7
110 = 6
Agrupe de izquierda a derecha: 67

11001111 (binario) = 317 (octal). Proceso:

111 = 7
001 = 1
11 entonces agregue un cero, con lo que se obtiene 011 = 3
Agrupe de izquierda a derecha: 317

1000011 (binario) = 103 (octal). Proceso:

011 = 3
000 = 0
1 entonces agregue 001 = 1
Agrupe de izquierda a derecha: 103

Si el nmero binario tiene parte decimal, se agrupa de tres en tres desde el punto
decimal hacia la derecha siguiendo los mismos criterios establecidos anteriormente
para nmeros enteros. Por ejemplo:
0.01101 (binario) = 0.32 (octal) Proceso: 011 = 3 01 entonces agregue 010 = 2 Agrupe
de izquierda a derecha: 32 Agregue la parte entera: 0.32

Octal a binario[editar]
Cada dgito octal se convierte en su binario equivalente de 3 bits y se juntan en el
mismo orden.
Ejemplo

247 (octal) = 010100111 (binario). El 2 en binario es 10, pero en binario de 3 bits


es Oc(2) = B(010); el Oc(4) = B(100) y el Oc(7) = (111), luego el nmero en binario
ser 010100111.

Conversin entre binario y hexadecimal[editar]


Binario a hexadecimal[editar]
Para realizar la conversin de binario a hexadecimal, realice lo siguiente:

1) Agrupe la cantidad binaria en grupos de 4 en 4 iniciando por el lado derecho. Si al


terminar de agrupar no completa 4 dgitos, entonces agregue ceros a la izquierda.
2) Posteriormente vea el valor que corresponde de acuerdo a la tabla:
Nmero
en
binario

00
00

00
01

00
10

00
11

01
00

01
01

01
10

011
1

10
00

10
01

10
10

10
11

11
00

11
01

111 111
0
1

Nmero
en
hexadec
imal

3) La cantidad correspondiente en hexadecimal se agrupa de derecha a izquierda.


Ejemplos

110111010 (binario) = 1BA (hexadecimal). Proceso:

1010 = A
1011 = B
1 entonces agregue 0001 = 1
Agrupe de derecha a izquierda: 1BA

11011110101 (binario) = 6F5 (hexadecimal). Proceso:

0101 = 5
1111 = F
110 entonces agregue 0110 = 6
Agrupe de derecha a izquierda: 6F5

Hexadecimal a binario[editar]
Note que para pasar de Hexadecimal a binario, se remplaza el nmero Hexadecimal
por el equivalente de 4 bits, de forma similar a como se hace de octal a binario.

Tabla de conversin entre decimal, binario, hexadecimal,


octal, BCD, Exceso 3 y Gray o Reflejado[editar]
Decimal

Binario

0000

Hexadecimal

Octal

BCD

0000

Exceso 3

0011

Gray o Reflejado

0000

0001

0001

0100

0001

0010

0010

0101

0011

0011

0011

0110

0010

0100

0100

0111

0110

0101

0101

1000

0111

0110

0110

1001

0101

0111

0111

1010

0100

1000

10

1000

1011

1100

1001

11

1001

1100

1101

10

1010

12

0001 0000

1111

11

1011

13

0001 0001

1110

12

1100

14

0001 0010

1010

13

1101

15

0001 0011

1011

14

1110

16

0001 0100

1001

15

1111

17

0001 0101

1000

Factorizacin[editar]

Tabla de conversin entre binario, factor binario, hexadecimal, octal y decimal


Binario

Factor binario

Hexadecimal

Octal

Decimal

0000 0010

21

0000 0100

22

0000 1000

23

10

0001 0000

24

10

20

16

0010 0000

25

20

40

32

0100 0000

26

40

100

64

1000 0000

27

80

200

128

Vase tambin[editar]

Sistema octal

Sistema duodecimal

Sistema hexadecimal

Bit

Nibble

Byte

Operador a nivel de bits

Aritmtica de saturacin

Bit
Bit es el acrnimo de Binary digit (o sea de dgito binario, en espaol denominado como bit,
y en menor medida como bitio).1 Un bit es un dgito del sistema de numeracinbinario. La
capacidad de almacenamiento de una memoria digital tambin se mide en bits, pues esta
palabra tiene varias acepciones.2
Lo usual es que un registro digital u otras memorias digitales vinculadas con la computacin
y/o con las telecomunicaciones, tengan una capacidad de representacin de informaciones de
por ejemplo 8 bits, o 16 bits, o 32 bits, o 64 bits, etc; una memoria binaria tiene una capacidad
efectiva de representacin de un bit.3
Mientras que en el sistema de numeracin decimal se usan diez dgitos (diez smbolos), en el
binario se usan solo dos dgitos, el 0 y el 1. Un bit o dgito binario puede representar uno de
esos dos valores: 0 o 1.
Se puede imaginar un bit como una bombilla que puede estar en uno de los siguientes dos
estados:

apagada

o encendida

Memoria de computadora de 1980 donde se pueden ver los bits fsicos. Este conjunto de unos
4x4 cm corresponden a 4096 bits.

El bit es la unidad mnima de informacin empleada en informtica, en cualquier


dispositivo digital, o en la teora de la informacin. Con l, podemos representar dos
valores cualesquiera, como verdadero o falso, abierto o cerrado, blanco o negro, norte o
sur, masculino o femenino, rojo o azul, etc. Basta con asignar uno de esos valores al
estado de "apagado" (0), y el otro al estado de "encendido" (1).
ndice
[ocultar]

1Combinaciones de bits

2Valor de posicin

3Bits ms y menos significativos

4Little endian y Big endian

5Arquitecturas de 4, 8, 16, 32 y 64 bits

6Bit en las pelculas

7Bibliografa

8Vase tambin

9Notas y referencias

10Enlaces externos

Combinaciones de bits[editar]
Hay 4 combinaciones posibles con dos bits
Bit 1

Bit 0

Con un bit podemos representar solamente dos valores o dos diferentes estados, que
suelen representarse como 0, 1.4 Para representar o codificarms informacin en un
dispositivo digital, necesitamos una mayor cantidad de bits. Si usamos dos bits, tendremos
cuatro combinaciones posibles:

0 0 - Los dos estn "apagados"

0 1 - El primero est "apagado" y el segundo "encendido"

1 0 - El primero est "encendido" y el segundo "apagado"

1 1 - Los dos estn "encendidos"

Con estas cuatro combinaciones podemos representar hasta cuatro valores o estados
diferentes, como por ejemplo, los colores azul, verde, rojo, y magenta.
A travs de secuencias de bits, se puede codificar cualquier valor discreto como nmeros,
palabras, e imgenes. Cuatro bits forman un nibble, y pueden representar hasta 24 = 16

valores diferentes; ocho bits forman un octeto, y se pueden representar hasta 28 = 256
valores diferentes. En general, con un nmero n de bits pueden representarse hasta
2n valores o estados diferentes.
Nota: Un byte y un octeto no son lo mismo. Mientras que un octeto siempre tiene 8 bits,
un byte contiene un nmero fijo de bits, que no necesariamente deben ser 8. En los
computadores antiguos, el byte podra estar conformado por 6, 7, 8 o 9 bits. Hoy en da,
en la inmensa mayora de los computadores, y en la mayora de los campos, un byte tiene
8 bits, siendo equivalente al octeto, pero hay excepciones.5

Valor de posicin[editar]
En cualquier sistema de numeracin posicional, el valor de los dgitos depende de la
posicin en que se encuentren.
En el sistema decimal, por ejemplo, el dgito 5 puede valer 5 si est en la posicin de las
unidades, pero vale 50 si est en la posicin de las decenas, y 500 si est en la posicin
de las centenas. Generalizando, cada vez que nos movemos una posicin hacia la
izquierda el dgito vale 10 veces ms, y cada vez que nos movemos una posicin hacia la
derecha, vale 10 veces menos. Esto tambin es aplicable a nmeros con decimales.
+-----------+-----------+-----------+-----------+-----------+
|

Centenas |

Decenas

Unidades |

Dcimas

| Centsimas|

Nombre de la posicin
+-----------+-----------+-----------+-----------+-----------+
|

100

10

1/10

1/100

Valor del dgito decimal


+-----------+-----------+-----------+-----------+-----------+

de

acuerdo a su posicin
|

10^2

10^1

10^0

10^(-1)

10^(-2)

Valor del dgito decimal


+-----------+-----------+-----------+-----------+-----------+

de

acuerdo a su posicin

expresado en potencias de 10
posicin de la coma decimal

Por tanto, el nmero 153,7 en realidad es: 1 centena + 5 decenas + 3 unidades + 7


dcimas, es decir,
100 + 50 + 3 + 0,7 = 153,7.
En el sistema binario es similar, excepto que cada vez que un dgito binario (bit) se
desplaza una posicin hacia la izquierda vale el doble (2 veces ms), y cada vez que
se mueve hacia la derecha, vale la mitad (2 veces menos).
+-----+-----+-----+-----+-----+

| 16

Valor del bit de acuerdo a su

posicin
+-----+-----+-----+-----+-----+

expresado en nmeros

| 2^4 | 2^3 | 2^2 | 2^1 | 2^0 |

Valor del bit de acuerdo a su

posicin
+-----+-----+-----+-----+-----+

expresado en forma de potencias

de 2

Abajo vemos representado el nmero 19.


16 + 2 + 1 = 19.
16

Valor de posicin
Representacin grfica
de los bits como bombillas
encendidas y apagadas

Dgitos binarios (bits)

Tambin se pueden representar valores fraccionarios. Los nmeros reales se


pueden representar con formato de coma fija o de coma flotante. Abajo vemos el
nmero 5,25 representado en una forma binaria de coma fija.
4 + 1 + 0,25 = 5,25
4

1/2

1/4

Valor de posicin
Representacin grfica
de los bits como bombillas
encendidas y apagadas

Dgitos binarios (bits)

La de arriba es una representacin en coma fija de un nmero real en formato


binario. Aunque la representacin de nmeros reales en coma flotante es
diferente de lo que aqu se muestra, el esquema da una idea una parte del
concepto. La representacin en coma flotante es similar a la notacin
cientfica en una calculadora de mano, solo que en vez nmeros decimales se
usan nmeros binarios y el exponente no est en base 10 sino en base 2.
Subndices
Cuando se trabaja con varios sistemas de numeracin o cuando no est claro
con cual se est trabajando, es tpico usar un subndice para indicar el
sistema de numeracin con el que se ha representado un nmero. El 10 es el
subndice para los nmeros en el sistema decimal y el 2 para los del sistema
binario. En los ejemplos de abajo se muestran dos nmeros en el sistema
decimal y su equivalente en binario. Esta igualdad se representa de la
siguiente manera:

1910 = 100112

5,2510 = 101,012

Bits ms y menos significativos[editar]


Un conjunto o grupo de bits, como por ejemplo un byte, representa un
conjunto de elementos ordenados. Se llama bit ms significativo (MSB)
al bit que tiene un mayor peso (mayor valor) dentro del conjunto,
anlogamente, se llama bit menos significativo (LSB) al bit que tiene un
menor peso dentro del conjunto.
En un byte, el bit ms significativo es el de la posicin 7, y el menos
significativo es el de la posicin 0
+---+---+---+---+---+---+---+---+
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Posicin del bit
+---+---+---+---+---+---+---+---+
|128|64 |32 |16 | 8 | 4 | 2 | 1 | Valor del bit de acuerdo
a su posicin
+---+---+---+---+---+---+---+---+
Bit ms significativo

Bit menos significativo

En una palabra de 16 bits, el bit ms significativo es el de la posicin 15 y el


menos significativo el de la posicin 0.
+----+----+----+----+----+----+---+---+---+---+---+---+--+---+---+---+
| 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 |
2 | 1 | 0 |

Posicin del bit

+----+----+----+----+----+----+---+---+---+---+---+---+--+---+---+---+
|2^15|2^14|2^13|2^12|2^11|2^10|512|256|128|64 |32 |16 | 8 |
4 | 2 | 1 |

Valor del bit de acuerdo

+----+----+----+----+----+----+---+---+---+---+---+---+--+---+---+---+

a su posicin

Bit ms significativo
Bit menos significativo

Tomemos, por ejemplo, el nmero decimal 27 codificado en forma binaria en


un octeto:
-> 0 0 0 1 1 0 1 1
Aqu, el primer '0', el de la izquierda, (que se corresponde con el coeficiente
de ), es el bit ms significativo, siendo el ltimo '1', el de la derecha, (que se
corresponde con el coeficiente de ), el menos significativo.
En cualquier caso, el bit ms significativo es el que generalmente se
representa en el extremo izquierdo y el menos significativo el del extremo
derecho. Esto es anlogo al sistema decimal, en donde el dgito ms
significativo es el de la izquierda y el menos significativo el de la derecha,

como por ejemplo, en el nmero 179, el dgito ms significativo, el que tiene


mayor valor, es el 1, (el de las centenas), y el menos significativo, el 9, (el de
las unidades).
Este concepto de significatividad se extiende al conjunto de bytes que
representan nmeros o valores numricos en las computadoras.

Little endian y Big endian[editar]


Little endian y big endian se refieren al orden que las mquinas asignan a
los bytes que representan nmeros o valores numricos. Una mquina little
endian asigna los bytesmenos significativos en el extremo ms bajo de la
memoria, mientras que una mquina big endian asigna los bytes menos
significativos en el extremo ms alto. En los computadores, cada byte se
identifica con su posicin en la memoria (direccin). Cuando se manejan
nmeros de ms de un byte, estos bytes tambin deben estar ordenados de
menor a mayor, indicando la posicin del byte menos significativo y
del byte ms significativo. De este modo, un byte con el nmero decimal 27
se almacenara en una mquina little endian igual que en una mquina big
endian, ya que slo ocupa un byte. Sin embargo, para nmeros ms grandes
los bytes que los representan se almacenaran en distinto orden en cada
arquitectura. Este aspecto es particularmente importante en la programacin
en lenguaje ensamblador o en cdigo mquina, ya que algunas mquinas
consideran el byte situado en la direccin ms baja de la memoria el menos
significativo (arquitectura little endian, como los procesadores Intel) mientras
que otras consideran que se es el byte ms significativo (arquitectura big
endian, como los procesadores Motorola).
Por ejemplo, consideremos el nmero hexadecimal entero AABBCCDD , de
32 bits (4 bytes), localizado en la direccin 100 de la memoria. El nmero
ocupara las posiciones desde la 100 a la 103, pero dependiendo de si la
mquina es little o big endian, los bytes se almacenaran de diferente manera:
Little-endian (como Intel)

...

100

101

102

103

DD

CC

BB

AA

100

101

102

103

AA

BB

CC

DD

...

Big-endian (como Motorola)

...

En las imgenes de arriba, en donde se representan las posiciones de


memoria 100, 101, 102 y 103 creciendo de izquierda a derecha, parece que
la representacin big endian es ms natural, ya que el nmero AABBCCDD lo
podemos leer correctamente (ver figura), mientras que en la
representacin little endian parece que el nmero est al revs, o patas
arriba. Sin embargo, no hay nada que nos impida imaginar que las
direcciones de memoria crecen de derecha a izquierda, y al observar la
memoria de esta manera, la representacin little endian se ve natural y es

...

la big endian la que parece al revs, como se muestra en las figuras de


abajo.
Little-endian (como Intel)

...

103

102

101

100

AA

BB

CC

DD

103

102

101

100

DD

CC

BB

AA

...

Big-endian (como Motorola)

...

Independiente de si la mquina es de arquitectura little endian o big endian,


los bits dentro de cada byte siempre estn en el mismo orden, con el bit ms
significativo a la izquierda y el menos significativo a la derecha. Los registros
del procesador, que pueden ser de 4 a 64 bits, y ms, tambin tienen sus bits
en el mismo orden en ambos tipos de mquina. La diferencia entre little y big
endian solo existe externamente, en el orden en que los bytes se representan
en memoria.

Arquitecturas de 4, 8, 16, 32 y 64 bits[editar]


Cuando se habla de CPUs o microprocesadores de 4, 8, 16, 32, 64 bits, se
refiere al tamao, en nmero de bits, que tienen los registros internos del
procesador y tambin a la capacidad de procesamiento de la Unidad
aritmtico lgica (ALU). Un microprocesador de 4 bits tiene registros de 4 bits
y la ALU hace operaciones con los datos en esos registros de 4 bits, mientras
que un procesador de 8 bits tiene registros y procesa los datos en grupos de
8 bits.
Los procesadores de 16, 32 y 64 bits tienen registros y ALU de 16, 32 y 64
bits respectivamente, y generalmente pueden procesar los datos, tanto en el
tamao en bits de sus registros como, dependiendo de su diseo, en
determinados submltiplos de stos. As, un procesador de 16 bits puede
procesar los datos en grupos de 8 y 16 bits, comportndose como si fuera un
procesador tanto de 8 como de 16 bits. Un procesador de 32 bits puede
procesar los datos en grupos de 8, 16 y 32 bits, y el procesador de 64 bits
puede procesar los datos en grupos de 8, 16, 32 y 64 bits. Para poder hacer
esto, los procesadores de 16, 32 y 64 bits generalmente tienen sus registros
divididos en otros registros ms pequeos. As, los registros de un procesador
de 32 bits, por ejemplo, pueden estar divididos a su vez en registros de 16 y 8
bits y puede hacer operaciones aritmticas, lgicas, de comparaciones, y
otras, con cualquiera de sus registros en cualquiera de estos tamaos.
Cuando se habla de procesadores de, digamos 32 bits, nos referimos a su
capacidad de procesar datos en hasta 32 bits simultneamente (tambin
puede procesar datos en 8 y 16 bits). La denominacin de "microprocesador
de 32 bits" no se refiere al tamao del bus de datos del CPU ni del bus de
direcciones, sino a su capacidad de trabajar normalmente con los datos en el
nmero mximo de bits (salvo alguna excepcin).

...

Por ejemplo, los primeros procesadores de la arquitectura x86, el Intel 8086 y


el Intel 8088, eran procesadores de 16 bits, porque tenan registros de 16 bits
(y de 8 bits) y sus unidades aritmtico lgicas podan realizar operaciones de
16 bits (y de 8 bits). Sin embargo, exteriormente, el 8086 tena un bus de
datos de 16 bits y poda mover datos desde y hacia el CPU en bloques de 8 y
16 bits), mientras que el 8088 tena un bus de datos de solo 8 bits, y tambin
poda mover datos de 8 y 16 bits desde y hacia el CPU, sin embargo, como
su bus de datos era de solo 8 bits, para mover 16 bits de datos tena que
hacer dos operaciones de lectura o escritura, de 8 bits, por su limitado bus de
datos. Esto era completamente transparente, los dos procesadores
ejecutaban exactamente el mismo conjunto de instrucciones de 16 bits, solo
que el 8088 era ms lento cada vez que tena que leer o escribir 16 bits de
datos hacia o desde la memoria.

Bit en las pelculas[editar]


En la pelcula Tron, un bit est representado por una forma polidrica de color
blanco que es un compuesto de dodecaedro e icosaedro. Solo puede decir
"s" (encendido) y "no" (apagado). Cuando el bit dice "s" cambia brevemente
en un octaedro amarillo, y cuando dice que "no" se transforma en una forma
de punta roja. Si se alarma repite la palabra varias veces, por ejemplo: "No
no no no no no!".

Sistema octal
El sistema numrico en base 8 se llama octal y utiliza los dgitos del 0 al 7.
En informtica a veces se utiliza la numeracin octal en vez de la hexadecimal. Tiene la
ventaja de que no requiere utilizar otros smbolos diferentes de los dgitos. Sin embargo, para
trabajar con bytes o conjuntos de ellos, asumiendo que un byte es una palabra de 8 bits, suele
ser ms cmodo el sistema hexadecimal, por cuanto todo byte as definido es completamente
representable por dos dgitos hexadecimales.
ndice
[ocultar]

1Mtodos de conversin
o

1.1Decimal

1.2Binario

2Sistema de numeracin octal

3Fracciones

4Tabla de conversin entre decimal, binario, hexadecimal y octal

5Vase tambin

6Enlaces externos

Mtodos de conversin[editar]
Decimal[editar]
Para convertir un nmero en base decimal a base octal se divide dicho nmero entre 8,
dejando el residuo y dividiendo el cociente sucesivamente por 8 hasta obtener residuo 0,
luego los restos de las divisiones ledos en orden inverso indican el nmero en octal.
Para pasar de base 8 a base decimal, solo hay que multiplicar cada cifra por 8 elevado a la
posicin de la cifra, y sumar el resultado.

Binario[editar]
Es ms fcil pasar de binario a octal, porque solo hay que agrupar de 3 en 3 los dgitos
binarios, as, el nmero 74 (en decimal) es 1001010 (en binario), lo agruparamos como 1 /
001 / 010, despus obtenemos el nmero en decimal de cada uno de los nmeros en binario
obtenidos: 1=1, 001=1 y 010=2. De modo que el nmero decimal 74 en octal es 112.

Sistema de numeracin octal[editar]


El sistema de numeracin octal es un sistema de numeracin en base 8, una base que es
potencia exacta de 2 o de la numeracin binaria. Esta caracterstica hace que la conversin a
binario o viceversa sea bastante simple. El sistema octal usa 8 dgitos (0, 1, 2, 3, 4, 5, 6, 7) y
tienen el mismo valor que en el sistema de numeracin decimal.
El teorema fundamental aplicado al sistema octal sera el siguiente:

Como el sistema de numeracin octal usa la notacin posicional entonces para el nmero
3452,32 tenemos que: 2*80 + 5*81 + 4*82 + 3*83 + 3*8-1 + 2*8-2 = 2 + 40 + 4*64 + 3*512 +
3*0,125 + 2*0,015625 = 2 + 40 + 256 + 1536 + 0,375 + 0,03125 = 1834 + 0,40625d
Entonces, 3452,32q = 1834,40625d
El sub ndice "q" indica nmero octal, se usa la letra q para evitar confusin entre la letra 'o' y
el nmero 0. En informtica, a veces se utiliza la numeracin octal en vez de la hexadecimal.
Tiene la ventaja de que no requiere utilizar otros smbolos diferentes de los dgitos. Es posible
que la numeracin octal se usara en el pasado en lugar de la decimal, por ejemplo, para
contar los espacios interdigitales o los dedos distintos de los pulgares.
Es utilizado como una forma abreviada de representar nmeros binarios que emplean
caracteres de seis bits. Cada tres bits (medio carcter) es convertido en un nico dgito octal
(del griego okt 'ocho') Esto es muy importante por eso.

Fracciones[editar]
La numeracin octal es tan buena como la binaria y la hexadecimal para operar con
fracciones, puesto que el nico factor primo para sus bases es 2. Todas las fracciones que
tengan un denominador distinto de una potencia de 2 tendrn un desarrollo octal peridico.
Fraccin

Octal

Resultado en octal

1/2

1/2

0,4

1/3

1/3

0,25252525 peridico

1/4

1/4

0,2

1/5

1/5

0,14631463 peridico

1/6

1/6

0,125252525 peridico

1/7

1/7

0,111111 peridico

1/8

1/10

0,1

1/9

1/11

0,07070707 peridico

1/10

1/12

0,063146314 peridico

Tabla de conversin entre decimal, binario, hexadecimal y


octal[editar]
Decimal

Binario

Hexadecimal

octal

00000

00001

00010

00011

00100

00101

00110

00111

01000

10

01001

11

10

01010

12

11

01011

13

12

01100

14

13

01101

15

14

01110

16

15

01111

17

16

10000

10

20

17

10001

11

21

18

10010

12

22

19

10011

13

23

20

10100

14

24

21

10101

15

25

22

10110

16

26

23

10111

17

27

24

11000

18

30

25

11001

19

31

26

11010

1A

32

27

11011

1B

33

28

11100

1C

34

29

11101

1D

35

30

11110

1E

36

31

11111

1F

37

32

100000

20

40

33

100001

21

41

You might also like