Está en la página 1de 42

Introducción a Códigos

Códigos

EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 1
Agenda
• Códigos
• Códigos numéricos posicionales
• Códigos numéricos no posicionales
• Construcción de cantidades
• Sistema decimal
• Sistema binario
Códigos

• Códigos binarios
• Códigos alfanuméricos
• Conversión decimal a binario
EL - 3307
Diseño
• Conversión binario a decimal
Lógico
• Conversión hexadecimal a decimal
Conversión de hexadecimal a binario
Ing. José Alberto
Díaz García •
Página 2
CODIGOS
• “En la Teoría de la información, es la forma que
toma la información que se intercambia entre la
Fuente (el emisor) y el Destino (el receptor) de un
lazo informático. Implica la comprensión o
decodificación del paquete de información que se
transfiere.
• El código fundamental en el que se basan los
ordenadores es el código binario, el más simple
Códigos

pues solo consta de dos elementos (0) y (1) que


combinados de distintas maneras como impulsos
eléctricos ponen las bases para la informática.”
EL - 3307
Diseño
Lógico • Tomado de
Ing. José Alberto http://es.wikipedia.org/wiki/C%C3%B3digo el 10
Díaz García
Página 3
de Febrero del 2007
Introducción a códigos
• En un ambiente de sistemas
digitales se denomina codificación a
la asignación de un significado a
una configuración de bits.
• Los códigos más utilizados para la
Códigos

generación de información son:


– Los códigos numéricos
EL - 3307
Diseño
Lógico – Los códigos alfanuméricos
Ing. José Alberto
Díaz García
Página 4
Códigos

• Códigos numéricos
– Son los que se utilizan para representar
cantidades, contraseñas, y toda aquella
información que requiera de dígitos de algún
sistema numérico.
Códigos

• Códigos alfanuméricos
– Son aquellos que se utilizan para representar
el alfabeto o cualquier otro carácter,
EL - 3307
Diseño
normalmente se utilizan en la creación de
bases de datos de especies e información de
Lógico

Ing. José Alberto


Díaz García
las personas.
Página 5
Sistemas numéricos
• Los sistemas numéricos son esenciales en
la representación de información.
• Tienen algunas características muy
importantes:
– Tienen un conjunto definido de elementos
Códigos

– Cuentan con operadores para tratar los


elementos
– Una serie de reglas que permiten normar el uso
EL - 3307
Diseño
de los operadores con los elementos
Lógico

Ing. José Alberto


Díaz García
Página 6
Sistemas numéricos
SISTEMA ELEMENTOS OPERADORES REGLAS
Asociativa
0,1,2,3,4,5,
Decimal + - X ÷ Conmutativa

6,7,8,9 Existencia de elemento


neutro, etc.

0,1,2,3,4,5,6, Asociativa

Hexadecimal 7,8,9,A,B,C,D + - X ÷ Conmutativa


Existencia de elemento
,E,F neutro, etc.
Códigos

Asociativa
0,1,2,3,4,5,
Octal + - X ÷ Conmutativa

6,7 Existencia de elemento


neutro, etc.
Asociativa

EL - 3307
Diseño
Binario 0,1 ∩∪˜ Conmutativa
Existencia de elemento
Lógico neutro, etc.
Ing. José Alberto
Díaz García Etc.
Página 7

 significa, la operación complemento


Clasificación de los sistemas numéricos
• Los sistemas numéricos se pueden
clasificar en:
– Posiciónales (justa posiciónales)
– No posiciónales
• Posiciónales
– El valor de los elementos que componen el
Códigos

sistema depende del valor que se les ha


asignado, y de la posición que ocupan en el
número.
EL - 3307 • No Posiciónales
– El valor de los elementos que componen el
Diseño
Lógico

Ing. José Alberto sistema es fijo, y no depende de la posición


que ocupa el símbolo dentro del número.
Díaz García
Página 8
Valor por la posición

• El número de elementos permitidos


en un sistema de numeración
posicional se conoce como base del
sistema de numeración.
• Si un sistema de numeración
Códigos

posicional tiene base b significa que


disponemos de b elementos
EL - 3307
Diseño
diferentes para escribir los números,
Lógico

Ing. José Alberto


y b unidades forman una unidad de
Díaz García
Página 9
orden superior.
Construcción de cantidades
• Forma general de construir números en un sistema de
numeración posicional.
– Definiciones básicas:
• N: Sistema de numeración
• b: base del sistema de numeración. Número de símbolos
• permitidos en el sistema.
• d: un símbolo cualquiera de los permitidos en el sistema de
• numeración
• n: número de dígitos de la parte entera.
• ,: coma fraccionaria. Símbolo utilizado para separar la parte
Códigos

• entera de un número de su parte fraccionaria.


• k: número de dígitos de la parte decimal.
• La fórmula general para construir un número (cualquier
número) N en un sistema de numeración posicional de base
b es:
EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 10
Sistema decimal
• En el sistema decimal los símbolos válidos para construir números son
{0...9} (0 hasta 9, ambos incluidos), por tanto la base (número de
símbolos válidos en el sistema) es 10.
• El teorema fundamental de la numeración aplicado al sistema decimal,
será:
Códigos

• Los dígitos a la izquierda de la coma fraccionaria representados por dn ... d2 d1 d0 ,


toman el valor correspondiente a las potencias positivas de la base (10 en el sistema
decimal), en función de la posición que ocupan en el número, y representan
respectivamente al dígito de las n-unidades (10n), centenas (102=100), decenas
(10¹=10) y unidades (100=1).
EL - 3307 • Los dígitos a la derecha de la coma fraccionaria d-1, d-2, d-3 ... d-n representan
Diseño respectivamente al dígito de las décimas (10-1=0,1), centésimas (10-2=0,01),
Lógico milésimas (10-3=0,001) y n-ésimas (10-n) .
Ing. José Alberto • Por ejemplo, el número 1492,36 en decimal, puede expresarse como:
Díaz García
Página 11
Ejemplo de un valor decimal

• Supongamos que deseamos conocer el


valor decimal de 345, esto es

102 101 100

3 4 5
Códigos

EL - 3307
345 = 3 * 10 2
+ 4 * 10 1
+ 5 * 10 0
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 12
Sistema binario
• El teorema fundamental de la numeración aplicado al sistema binario es:

• En el sistema binario la base es 2, lo que quiere decir que solo


disponemos de 2 símbolos {0,1} para construir todos los números
binarios.
Códigos

• Por tanto, una vez que contamos (sumamos) dos hemos agotado los
símbolos disponibles para esa columna, y debemos poner a cero la
columna y usar otra columna a la izquierda.
• Así, si contamos en binario, tras el número 0(2 viene el 1(2, pero si
contamos una unidad más debemos usar otra columna, resultando 10(2
• Sigamos contando 0(2,1(2,10(2,11(2.
EL - 3307
Diseño • Al añadir una unidad a la columna de las unidades, esa columna ha
Lógico
agotado los símbolos disponibles, y debemos formar una unidad de
Ing. José Alberto segundo orden, pero como ya hay una, también agotaremos los símbolos
Díaz García disponibles para esa columna, y debemos formar una unidad de tercer
Página 13
orden o 100(2. Así, en el sistema binario 11(2 + 1(2 + 100(2
Ejemplo de un valor binario a decimal
• Supongamos que deseamos conocer el
valor decimal del valor binario 11101,
esto es

24 23 22 21 20
Códigos

1 1 1 0 1

EL - 3307
29 = 1* 2 4 + 1* 23 + 1* 2 2 + 0 * 21 + 1* 20
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 14
Definiciones
• BIT: Un digito binario, es la menor unidad
de información en base 2 y puede ser 0 o 1.
• BYTE: Un grupo de ocho bits, y también se
le llama caracter.
• NIBBLE: Un nibble es la mitad de un byte o
Códigos

cuatro bits.
• WORD: Es un grupo de 16 bits, o dos bytes
EL - 3307
Diseño
• DWORD: Es un grupo de 32 bits, o dos
Lógico
words o 4 bytes.
Ing. José Alberto
Díaz García
Página 15
Definiciones

• Kilobyte (KB) – Un kilobyte es 1,024 (o


aproximadamente 1,000) bytes.

• Kilobit (Kb) – Un kilobit es 1,024 (o


aproximadamente 1,000) bits.
Códigos

• Megabyte (MB) – Un megabyte son 1,048,576


bytes (or aproximadamente 1,000,000 bytes).
EL - 3307
Diseño
Lógico • Note que la B mayúscula indica bytes y la b
Ing. José Alberto
Díaz García minúscula indica bits.
Página 16
Sistemas de numeración no posicionales
• El sistema de los números romanos no es
estrictamente posicional.
• Por esto, es muy complejo diseñar
algoritmos de uso general (por ejemplo,
para suma, restar, multiplicar, dividir).
Códigos

• Como ejemplo, en el número romano


XCIX (99 decimal) los numerales X (10
decimal) del inicio y del fin de la cifra
equivalen siempre al mismo valor, sin
EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
importar su posición dentro de la cifra.
Página 17
Códigos binarios

• Existen diferentes códigos binarios:


– Binario natural
– BCD
– Exceso tres
– Gray
Códigos

– Johnson
– Biquinario
EL - 3307
Diseño
Lógico
– 2 entre 5
Ing. José Alberto
Díaz García
– Hamming
Página 18
Código BCD (Binary Coded Decimal)
• Representa los dígitos decimales por
secuencias de bits en el sistema binario.
• BCD es la abreviatura de Binary Coded
Decimal es decir, decimal codificado en
binario.
¾ Cada secuencia de 4 bits es
Códigos

una palabra del código.


¾ Cada dígito decimal se le
asocia una secuencia de 4 bits.

EL - 3307
Diseño Código 7, puede interpretarse según:
Lógico

Ing. José Alberto 0·23+1·22+1·21+1·20 =


Díaz García
Página 19 0·8 + 1·4 + 1·2 + 1·1 = 7
BCD y Decimal
• Ejemplo 1.
– Representar en BCD el valor 12 decimal.
• Para representar el número decimal 12 se
requieren 8 bits, o dos palabras de código
BCD.
Códigos

• 12 = 0001 0010

EL - 3307
• ¿Cuántas palabras se requieren para
representar 789 ?
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 20
Código Hexadecimal
• El código hexadecimal contiene los
elementos del sistema decimal y las
letras A, B, C, D, E, F.
• La base del sistema es 16. Decimal Binario Simbolo
0 0000 0
• ¿Cual será la representación F0B1 en 1 0001 1
decimal? 2 0010 2
3 0011 3
• Código F0B1, puede interpretarse 4 0100 4
según: 5 0101 5
Códigos

6 0110 6
• F·163+0·162+B·161+1·160 = 7 0111 7
• 15·163+0·162+11·161+1·160 = 61617 8
9
1000
1001
8
9
10 1010 A
• ¿Para que se utilizan los números 11
12
1011
1100
B
C
hexadecimales. 13 1101 D
• Representan a los números binarios de
EL - 3307 14 1110 E
Diseño
15 1111 F
Lógico
forma corta, y es muy simple de
Ing. José Alberto
Díaz García
transformar de HEX a BIN y vise versa.
Página 21
Código Gray
• Los códigos Grey tienen un mínimo
de cambios entre su antecesor y el
sucesor.
– De una representación numérica a la
siguiente solo cambia un bit.
Códigos

– Las principales aplicaciones se


encuentran en donde hay cambios
únicos en la entrada.
EL - 3307
Diseño
Lógico
• Tabla de posición de una molino
Ing. José Alberto
Díaz García
• Posición de un eje rotacional
Página 22
Código Gray
Binario Grey

0000 0000
0001 0001
0010 0011
0011 0010
0100 0110
0101 0111
Códigos

0110 0101
0111 0100
1000 1100
1001 1101
1010 1111
EL - 3307
1011 1110
Diseño
Lógico
1100 1010
1101 1011
Ing. José Alberto
Díaz García 1110 1001
Página 23
1111 1000
Binario Codificado en Decimal
• Se necesitan de cuatro bits para
representar cada dígito decimal.
– Cada grupo de cuatro bits, no se utilizan
6 posibles valores
– Hay muchos códigos posibles, el BCD
Códigos

natural es el más común.


– BCD no es tan eficiente como el binario.
• BCD es fácil de convertir a decimal
EL - 3307
Diseño
(realmente es decimal con diferentes
símbolos).
Lógico

Ing. José Alberto


Díaz García
Página 24
Códigos Numéricos
Ejemplo 2 Transmisión de símbolos BCD
A través de un par de cables, puede enviarse una secuencia
de cifras decimales codificadas en binario. Si enviamos
primero las unidades, luego las decenas y después las
centenas; y si se envía primero el bit menos significativo, se
tendrá que la siguiente forma de onda representa el número
923:
Códigos

EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 25 Transmisión serie de un símbolo BCD.
Códigos Numéricos
Si se dispone de cuatro líneas, más una
referencia, se puede enviar una cifra decimal
paralelo. Las líneas se han identificado de
acuerdo al peso.
Códigos

EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 26
Transmisión paralela símbolo BCD.
Códigos Numéricos
• Paridad
– En aplicaciones digitales de movimiento de
información, es importante detectar cualquier
tipo de error en la información recibida.
– Cuando la probabilidad de error no es muy
alta, se ha probado ser efectivo un sistema
denominado chequeo de paridad.
Códigos

– Esta técnica emplea un bit extra, llamado de


paridad, cuyo valor se selecciona dependiendo
de la cantidad de unos que hay en los datos.
EL - 3307
Esto es si la cantidad de unos es una cantidad
Diseño
Lógico par el bit se pone en 1 y si es impar se pone en
Ing. José Alberto
cero.
Díaz García
Página 27
Códigos Numéricos
Decim al Paridad Paridad
Im par Par
0 1000 0000
1 0001 1001
2 0010 1010
3 1011 0011
Códigos

4 0100 1100
5 1101 0101
6 1110 0110
EL - 3307
Diseño
7 0111 1111
Lógico

Ing. José Alberto


Díaz García
Página 28
Códigos Numéricos
Se envían 4 bits en paralelo más uno de paridad.

Decim al Paridad Paridad


Im par Par
0 1000 0000
1 0001 1001
Tx Rx 2 0010 1010
Códigos

3 1011 0011
4 0100 1100
5 1101 0101
6 1110 0110
7 0111 1111

EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García ¿Cómo se podría construir un generador y
Página 29 detector de paridad ?
Solución: Códigos Numéricos
Códigos

EL - 3307
Diseño
Lógico

Ing. José Alberto P: Bit de paridad


Díaz García
DP: Bit detector de paridad
Página 30
Código biquinario
• El código biquinario es un sistema de
numeración usado en ábacos y en algunos de los
primeros computadores, como el Colossus.
• El término biquinario se refiere a que el código
tiene una parte de dos estados (bi) y otra de cinco
estados (quin).
Códigos

• Existen varias representaciones de un decimal


codificado en biquinario, ya que:
– el componente de dos estados se puede representar
tanto con uno como con dos bits
EL - 3307
Diseño
Lógico
– y el componente de cinco estados, tanto con tres como
con cinco bits
Ing. José Alberto
Díaz García
Página 31
Código 2 entre 5
• El código 2 entre 5, a veces confundido con el biquinario,
• Es utilizado para la detección de errores en transmisiones
digitales.
• Existen varios métodos para la codificación mediante el sistema 2
entre 5.
– Se trata de un código ponderado donde los pesos para los 4 primeros
bits son 1,2,3,6.
– El bit más significativo se utiliza para completar la paridad par.
– Tiene dos características a tener en cuenta:
Códigos

• No existe codificación para el 0; hay que “inventarse” una


• Sólo puede haber dos bits a 1 entre los cinco bits (de ahí su nombre)
– Si partimos de los pesos directos vemos que podemos codificar los
números 1, 2, 3 y 6 utilizando un solo bit.
– En estos números se activa el bit de paridad a 1 para cumplir la
paridad par.
EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
Página 32
Códigos Alfanumérico
• “CODIGO ALFANUMÉRICO
– Con un código de un bit podemos representar 2¹=2 combinaciones.
Para representar los diez dígitos (0-9) y las 26 letras minúsculas
necesitamos como mínimo 6 bits (25=32, 26=64 combinaciones). Si
además se quieren representar las letras mayúsculas y otros símbolos
de utilidad necesitaremos un mayor número de bits. En general con el
término de carácter o código alfanumérico se incluyen:
• Las letras: a-z y A-Z.
• Los números: del 0 al 9
• Los símbolos: @ ! # $ + - * / = % ( ) [ ] etc....
• Los caracteres de control: <CR>, <LF>, etc.
Códigos

– La información que el ordenador debe procesar está formada por


letras, números y símbolos especiales.
– Los ordenadores trabajan con voltajes fijos que se representan con los
números 0 y 1 que forman la base de un sistema binario. Con la
presencia o ausencia de tensión eléctrica no sólo se pueden
representar números sino los estados de una variable lógica Con un
EL - 3307 conjunto de variables lógicas se puede definir cualquier sistema
Diseño lógico.”
Lógico
• Tomado de http://es.wikipedia.org/wiki/C%C3%B3digos_alfanum%C3%A9ricos el
Ing. José Alberto 10 de Febrero del 2007
Díaz García
Página 33
Códigos Alfanuméricos
• Códigos Alfanuméricos
– La mayor parte de los dispositivos periféricos empleados
en sistemas de computación para comunicar al hombre
con la máquina, permiten representar las letras
minúsculas y mayúsculas, dígitos decimales, signos de
puntuación y caracteres especiales.
– Uno de los más empleados es el código ASCII. Este es
un código de 7 bits, más uno de paridad. Permite
representar 128 símbolos. Su nombre es una
Códigos

abreviación de "American Standard Code for


Information Interchange".
– En computadores personales se está empleando 8 bits
para representar caracteres, lo cual permite denotar 256
símbolos. Esto ha sido especialmente útil en
EL - 3307
Diseño
aplicaciones de procesamiento de textos en diversos
Lógico idiomas, pues pueden incluirse letras con diferentes
Ing. José Alberto tipos de acentos.
Díaz García
Página 34
Códigos Alfanuméricos
• Son los códigos binarios utilizados para
representar el alfabeto y los caracteres
numéricos.
• Los dos más comunes son:
– ASCII, 7 bits, con 128 símbolos
– EBCDIC, 8 bit, 256 símbolos
Códigos

• Los problemas surgen cuando se


comparan los valores y los símbolos.
EL - 3307
– Si se compara de ‘A’ a ‘a’ en el sistema ASCII
Diseño
Lógico ocurren algunos errores respecto al sistema
Ing. José Alberto EBCDIC.
Díaz García
Página 35
Código ASCII
Códigos

EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
TOMADO DE:
Página 36 http://images.google.co.cr/imgres?imgurl=http://www.ecowin.org/aulas/resources/tables/asciitable.jpg&imgrefurl=http://www.ecowin.org/ascii.htm&h=742&w=1050&sz=105&
hl=es&start=1&tbnid=llAxgig9laYZSM:&tbnh=106&tbnw=150&prev=/images%3Fq%3Dascii%2Btable%26svnum%3D10%26hl%3Des%26sa%3DG
EL 10 DE FEBRERO DEL 2007
Conversión de decimal a binario
Método 1
Convertir el número 192 decimal a su equivalente binario
192/2 = 96 con un residuo de 0
96/2 = 48 con un residuo de 0
48/2 = 24 con un residuo de 0
Códigos

24/2 = 12 con un residuo de 0


12/2 = 6 con un residuo de 0
6/2 = 3 con un residuo de 0
EL - 3307 3/2 = 1 con un residuo de 1
Diseño
Lógico
1/2 = 0 con un residuo de 1
Ing. José Alberto
Díaz García
Escriba todos los residuos, en forma reversa, y obtiene el número
Página 37
binario 11000000.
Conversión de decimal a binario Método 2
Convierta el número decimal 192 a su equivalente
binario. Primero encuentre el mayor número que es potencia
de 2 que puede substraerse del número original. Repita el
proceso hasta que no se pueda sustraer nada.
192-128 = 64 128 utilizado 1
64-64 = 0 64 utilizado 1
32 utilizado 0
Códigos

16 utilizado 0
8 utilizado 0
4 utilizado 0
EL - 3307
Diseño
2 utilizado 0
1 utilizado
Lógico

Ing. José Alberto


0
Díaz García
Página 38
Escriba los unos y los ceros de arriba hacia abajo, y se obtiene el
número 11000000.
Conversión de Binario a Decimal
Convierta el número decimal 213 a binario. Primero
encuentre el mayor número potencia de 2 que puede
sustraerse al número original. Repita el proceso hasta que
no quede nada a que sustraer.
213-128 = 85 128 utilizado 1
85-64 = 21 64 utilizado 1
*(32 no se puede sustraer de 21) 32 utilizado 0
Códigos

21-16 = 5 16 utilizado 1
*(8 no se puede sustraer de 5) 8 utilizado 0
5-4 = 1 4 utilizado 1
*(2 no se puede sustraer de 1) 2 utilizado 0
EL - 3307

1-1 = 0 1 utilizado 1
Diseño
Lógico

Ing. José Alberto


Díaz García Escriba los unos y ceros de arriba hacia abajo, y se obtiene el
Página 39 número binario 11010101.
Conversión de Binario a Decimal Método 2

De la derecha a la izquierda, escriba los valores en


potencias de dos sobre cada uno de los dígitos
binarios. Luego sume los valores donde hay unos.

27 26 25 24 23 22 21 20
Códigos

128 64 32 16 8 4 2 1
1 0 1 1 0 1 0 1

EL - 3307
Diseño
Lógico

Ing. José Alberto


Díaz García
128 + 32 + 16 + 4 + 1 = 181
Página 40
Conversión de hexadecimal a decimal
Base 16
16^4 16^3 16^216^116^0 Decimal
65.536 4.096 256 16 1
1 2 A 298

•Cada posición del dígito está representado por


una potencia de 16
Códigos

•Dado el número hexadecimal 12A


•1 X 256 = 256
EL - 3307
•2 X 16 = 32
Diseño
Lógico
•A X 1 = +10 (A = 10 en hex)
Ing. José Alberto
Díaz García
Página 41
298
Conversión de hexadecimal a binario
Para convertir un número hexadecimal a binario, cada dígito
hexadecimal representa 4 dígitos binarios.
Dado el número hexadecimal A 3
A es el número decimal 10
10 en binario es 1 0 1 0
8 4 2 1 (las posiciones binarias son - 4 bits)
Códigos

1 0 1 0
3 es el valor de 3
3 en binario es 0 0 1 1
EL - 3307
Diseño
Lógico 8 4 2 1 (las posiciones binarias son – 4 bits)
Ing. José Alberto
Díaz García 0 0 1 1
hex A 3 = 1 0 1 0 0 0 1 1 en binario
Página 42

También podría gustarte