sistemas de numeracion

Preview:

DESCRIPTION

sistemas de numeracion

Citation preview

Tema 1. SISTEMAS DE NUMERACION

SISTEMAS DE NUMERACION

Sistemas de numeraciónSistema decimalSistema binarioSistema hexadecimalSistema octal.Conversión entre sistemasCódigos binarios

SISTEMAS DE NUMERACION (I)

• Un número está constituido por una serie de dígitos situados ordenadamente a izquierda y derecha de una coma de referencia.

• Responde al siguiente polinomio:

basebdígitod

bdbdbdbdbdbdbdbdbd nn

nn

==

++++++++++ −−

−−

−− ...... 2

21

10

01

12

23

34

4

SISTEMAS DE NUMERACION (II)

• Se denomina base de un sistema, al número de posibles dígitos que se utilizan en dicho sistema de numeración.

• Los dígitos tienen un valor de carácterposicional.– El valor del dígito depende del lugar que ocupe

en la cifra.• Los valores posicionales se representan en

potencias de la base.

SISTEMAS DE NUMERACION (III)

• Ejemplo del sistema decimal:

5Centenas

500

5Unidades

5Decenas

550

SISTEMA DECIMAL

• El sistema decimal o base 10, emplea para su representación los dígitos 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9.

• Los valores posicionales son:

10n 104 103 102 101 100

10000 1000 100 10 1

SISTEMA BINARIO (I)

• El sistema binario o base dos, solo emplea dos dígitos, el ‘0’ y el ‘1’.

• Es el sistema más usado en los sistemas digitales.

• Sus valores posicionales son:

2n 24 23 22 21 20

16 8 4 2 1

SISTEMA BINARIO (II)

• Cada uno de los dígitos que componen un número binario se le denomina “bit”.

• Al bit situado más a la derecha en el número se le conoce como “bit menos significativo” (LSB).

• Al que está situado más a la izquierda, recibe el nombre de “bit más significativo” (MSB).

SISTEMA BINARIO (III)

• En el sistema binario encontramos las siguientes agrupaciones básicas de bits.– NIBBLE Formado por 4 bits– BYTE Formado por 8 bits– WORD Formado por 16 bits– DOUBLE WORD Formado por 32 bits– QUADRUPLE WORD Formado por 64 bits

SISTEMA HEXADECIMAL (I)

• El sistema hexadecimal o base dieciséis, utiliza 16 dígitos para su representación.

• Los 10 primeros son los dígitos del 0 al 9. Para los restantes se completan las letras de la ‘A’ a la ‘F’. – La A tiene el valor 10, la B el 11, la C el 12 y

así sucesivamente.

SISTEMA HEXADECIMAL (II)

• Sus valores posicionales son:

16n 164 163 162 161160

65536 4096 256 16 1

SISTEMA OCTAL

• El sistema octal o base ocho, utiliza 8 dígitos para su representación, del 0 al 7.

• Sus valores posicionales son:

8n 84 83 82 81 80

4096 512 64 8 1

CONVERSION ENTRE SISTEMAS

CONVERSION DECIMAL A OTRO SISTEMA (I)

• Un procedimiento muy empleado para la conversión es el de las divisiones sucesivas.– Se divide el número entre el valor de la base, sin

obtener decimales.– Los cocientes resultantes se dividen nuevamente

hasta que sea menor que la base.– Se obtiene el número en el nuevo sistema, colocando

el último cociente como dígito más significativo y los restos de forma ascendente de izquierda a derecha.

CONVERSION DECIMAL BINARIO

• Ejemplo: Convertir el número 43 a binario43 203 21

12

22

10011 0 5

21 20 1

1Número binario: 11 0 10

CONVERSION DECIMAL A HEXADECIMAL

• Ejemplo: Convertir el número 543 a hexadecimal.

543 1663 3315

16201

1

2 1Número hexadecimal: F

CONVERSION DECIMAL A OCTAL

• Ejemplo: Convertir el número 209 a octal.

209 849 261

832

3 2Número octal: 1

CONVERSION DE UN SISTEMA A DECIMAL

• Para convertir un número en cualquier sistema a decimal:– Se multiplica cada dígito por su valor

posicional.– Se suman todos los resultados obtenidos.

CONVERSION DE BINARIO A DECIMAL

• Ejemplo: Convertir el número 101101 a decimal.

1 0 1 1 0 1202122232425

(1 x 1)(0 x 2)(1 x 32) (1 x 4)(1 x 8)(0 x 16)

10 454 =8032 +++++

CONVERSION DE HEXADECIMAL A DECIMAL• Ejemplo: Convertir el número 3C05 HEX a

decimal.

3 C 0 5160161162163

(0 x 16)(3 x 4096) (12 x 256) (5 x 1)

5 15365=12288 + 3072 0+ +

CONVERSION DE OCTAL A DECIMAL

• Ejemplo: Convierte el número 742 en octal a decimal.

7 4 2808182

(4 x 8)(7 x 64) (2 x 1)

232 + 482448 =+

CONVERSION DE BINARIO A HEXADECIMAL (I)

• Para convertir un número binario natural a hexadecimal.– Agrupamos los bits de 4 en 4 empezando por la

derecha.– Si el último grupo tiene menos de 4 dígitos,

puede completarse con ceros (“0”).– Se obtiene el número hexadecimal, indicando el

dígito equivalente en hexadecimal de cada grupo binario.

CONVERSION DE BINARIO A HEXADECIMAL (II)

• Ejemplo: Convertir el número binario 1110110101 a hexadecimal.

1110110101010110111100

3 3B5B =5

CONVERSION HEXADECIMAL A BINARIO (I)

• Para convertir un número hexadecimal a binario natural.– Sustituimos cada dígito hexadecimal, por un

bloque binario de cuatro bits cuyo valor sea equivalente al dígito.

– Podemos eliminar los ceros que se encuentren a la izquierda.

CONVERSION DE HEXADECIMAL A BINARIO (II)

• Ejemplo. Determinar el número binario correspondiente al número 3F6A hexadecimal.

3 F 6 A

1010011011110011

CONVERSION DE BINARIO A OCTAL (I)

• Para convertir un número binario natural a octal.– Agrupamos los bits de 3 en 3 empezando por la

derecha.– Si el último grupo tiene menos de 3 dígitos,

puede completarse con ceros (“0”).– Se obtiene el número octal, indicando el dígito

equivalente en octal de cada grupo binario.

CONVERSION DE BINARIO A OCTAL (II)

• Ejemplo: Determinar el número octal correspondiente al número binario 10111101

10111101101111100

572 275=

CONVERSION DE OCTAL A BINARIO (I)

• Para convertir un número octal a binario natural.– Sustituimos cada dígito octal, por un bloque

binario de tres bits cuyo valor sea equivalente al dígito.

– Podemos eliminar los ceros que se encuentren a la izquierda.

CONVERSION DE OCTAL A BINARIO (II)

• Ejemplo. Determinar el número binario correspondiente al número 1064 en octal.

1 0 6 4

001 100110000

CODIGOS BINARIOS

CODIGO CONTINUOS Y CICLICOS

• Un código binario es continuo, si las combinaciones correspondientes a números decimales consecutivos son adyacentes, es decir, aquellas que varían solo en un bit.

• Un código binario es cíclico cuando además la última combinación es adyacente a la primera.

• Códigos binarios continuos y cíclicos son:Gray y progresivo Johnson.

CODIGOS PONDERADOS

• Son aquellos códigos en los que a cada dígito binario se le asigna un peso.

• Cada palabra de código es la suma de los pesos cuyos dígitos son ‘1’.

• Ejemplo de código ponderado:– BCD Natural

• Ejemplo de código no ponderado:– Código Gray

CODIGO GRAY O CODIGO REFLEJADO (I)

• La formación se realiza por reflexión del código n-1 bits (menos significativos), repitiendo simétricamente las combinaciones de éste.

• Se añade a la izquierda un bit.– 0 en la mitad superior de la tabla.– 1 en la reflejada.

CODIGO GRAY O CODIGO REFLEJADO (II)

3

2

1

0

Código GrayDecimal

Código Gray con 2 bits

00

0 1

11

1 0

CODIGO GRAY O CODIGO REFLEJADO (III)

76543210

Código GrayDecimalCódigo Gray con 3 bits

000000

101101011

111

111000

CONVERSION DE BINARIO NATURAL A GRAY (I)

• Hay que tener en cuenta las siguiente consideraciones:– El bit más significativo (MSB) del código Gray

y del binario natural, son iguales– El resto de bits se obtienen comparando cada

par de adyacentes. Sigue la siguiente norma:• Si son iguales el bit es ‘0’.• Si son distintos el bit es ‘1’.

CONVERSION DE BINARIO NATURAL A GRAY (II)

• Ejemplo: Convertir a código Gray el número binario 1011101

1 0 1 1 1 0 1CCCCC C

1100111

CONVERSION DE GRAY A BINARIO NATURAL (I)

• Hay que tener en cuenta las siguientes consideraciones.– El bit más significativo del número en binario

natural y del código Gray, son iguales.– El resto de bits se obtiene comparando el bit en

binario natural generado, con el siguiente bit en código Gray adyacente.

– La comparación sigue la misma norma anterior.

CONVERSION DE GRAY A BINARIO NATURAL (II)

• Ejemplo: Convertir el número en código Gray 1100110, a binario natural.

1 1 0 0 1 1 0

1C C C C C C

0 0 0 1 0 0

CODIGO JOHNSON (I)• Es un código binario cíclico, continuo y

progresivo.• El número de valores que se pueden

representar es: 2n.– n es el número de bits.

• Un código de 4 bits permite obtener un total de 8 valores.

• El número de unos aumenta y disminuye progresivamente, de una combinación a la siguiente.

CODIGO JOHNSON (II)

• Código Johnson de 2 bits

3210

Código JohnsonDecimalCódigo Johnson con 2 bits

000 11 11 0

CODIGO JOHNSON (III)

• Código Johnson de 3 bits

543210

Código JohnsonDecimalCódigo Johnson con 3 bits

0 000 101 101 111 010 01

CODIGO BCD NATURAL o BCD 8421 (I)

• Se representan los diez dígitos 0 a 9 del sistema decimal, mediante un bloque de 4 bits en binario, cuyo valor sea igual al número que representa.

• Es sabido que con 4 bits es posible elaborar 16 combinaciones.– Solo se emplean 10 de ellas

CODIGO BCD NATURAL o BCD 8421 (II)

9876543210

BCD NaturalDECIMAL0 0 0 00 10 0

0 1 00

0 1 100 1 0 0

0 0 110 1 1 0

0 1 1 11 0 0 01 0 0 1

CONVERSION DECIMAL A BCD

• Para convertir un número decimal a cualquier sistema de codificación en BCD:– Se sustituye cada dígito por un bloque de cuatro

bits en binario, cuyo valor sea igual al dígito representado.

CONVERSION DECIMAL A BCD NATURAL (8421)

• Ejemplo: Determinar el código BCD correspondiente al número 306.

3 0 6011000000011

CONVERSION DE NUMERO EN BASE N A BCD (I)

• Para convertir un número en una base distinta a la decimal:– Convertir el número en la base indicada a

decimal.– Convertir el resultado a BCD por el

procedimiento explicado anteriormente.

CONVERSION DE NUMERO EN BASE N A BCD (II)

• Ejemplo: Convertir el número 526 en base octal a BCD– Convertimos el número 526 octal a decimal.

• 5268 = 34210

– Convertimos el número decimal obtenido a BCD.

• 34210 = 0011 0100 0010 (BCD)

CONVERSION DE BCD NATURAL A DECIMAL (I)

• Para convertir un número codificado en BCD natural a decimal:– Agrupar los dígitos binarios de 4 en 4.– Sustituir cada bloque de cuatro bits por su valor

decimal correspondiente.

CONVERSION DE BCD NATURAL A DECIMAL (II)

• Ejemplo: Convertir el número BCD natural 001110000101 a decimal:

001110000101010110000011

3 3858 =5

CODIGO BCD AIKEN (I)• Existen dos tipos de código Aiken:

– Código Aiken 2421– Código Aiken 5421

• Para codificar un número decimal en código Aiken, tenemos en cuenta que:– Se asigna un “0” al MSB de los números 0 a 4

y un “1” al MSB de los números 5 a 9.– El resto de los bits toman el valor adecuado

para que la suma sea el número decimal.

CODIGO AIKEN (II)

9876543210

AIKEN 5421AIKEN 2421DECIMAL

1 0 0

1 10

00

000

11

111

0 0 010 0

1 00

1 101 0 0

0 0010 0

1 001 10

1 0 0

0 0 010 0

1 00

1 10

00

000

11

111

1 0 0

1 0 11 1 01 1 1

CONVERSION DECIMAL A BCD (2421)

• Ejemplo: Determinar el número BCD 2421 o código Aiken del número 306:

3 0 6110000000011

CONVERSION DECIMAL A BCD (5421)

• Ejemplo: Determinar el número BCD 5421 o código Aiken 5421 del número 306:

3 0 6100100000011

CODIGO BCD EXCESO 3 (I)

• El código BCD exceso 3, se forma sumando 3 al código BCD natural.

• Es un código no ponderado.

CODIGO BCD EXCESO 3 (II)

9876543210

BCD Exceso 3BCD NaturalDECIMAL

0 1 0 0

0 0 11

0 0 0 00 10 0

0 1 00

0 1 10

0 0 1 10 01 0

0 0 11

0 1 010 1 1 1

1 0 001 10 00 1 1 0

0 1 1 1 1 1 001 1 101 0 0 0

1 0 0 1 1 1 0 0