Sistemas Numéricos y Códigos Digitales
Upcoming SlideShare
Loading in...5
×
 

Sistemas Numéricos y Códigos Digitales

on

  • 18,815 reproducciones

Sistemas numéricos binarios, octales y hexadecimales. Operaciones aritméticas. Codigo BCD y Hamming

Sistemas numéricos binarios, octales y hexadecimales. Operaciones aritméticas. Codigo BCD y Hamming

Statistics

reproducciones

Total Views
18,815
Slideshare-icon Views on SlideShare
18,810
Embed Views
5

Actions

Likes
3
Downloads
359
Comments
0

2 insertados 5

http://www.slideshare.net 4
http://itesm.blackboard.com 1

Accesibilidad

Categorias

Detalles de carga

Uploaded via as Microsoft PowerPoint

Derechos de uso

© Todos los derechos reservados

Report content

Marcada como inapropiada Marcar como inapropiada
Marcar como inapropiada

Seleccione la razón para marcar esta presentación como inapropiada.

Cancelar
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Tu mensaje aparecerá aquí
    Processing...
Publicar comentario
Edite su comentario

    Sistemas Numéricos y Códigos Digitales Sistemas Numéricos y Códigos Digitales Presentation Transcript

    • Sistemas Digitales SISTEMAS NUMERICOS 2009
    • Sistemas Digitales
      • SISTEMAS NUMERICOS
      • Conjunto ordenado de símbolos llamados “dígitos”, con relaciones definidas para operaciones de :
        • Suma , Resta, Multiplicación y División
      • La base (r) del sistema representa el número total de dígitos permitidos, por ejemplo:
        • r=2 Binario dígitos: 0,1
        • r=10 Decimal dígitos: 0,1,2,3,4,5,6,7,8,9
        • r=8 Octal dígitos: 0,1,2,3,4,5,6,7
        • r=16 Hexadecimal dígitos:0,1,2,3,4,5,6,7,8,9
              • A,B,C,D,E,F
      Conceptos de distributividad, conmutatividad y asociatividad se usan en todos los sistemas
    • Sistemas Digitales NOTACION POSICIONAL
      • En general, un número positivo puede escribirse como:
      • N= (a n-1 ….a 1 a 0 a -1 a -2 ….a -m ) r
      • Donde:
        • .= punto decimal
        • r= base o decimal
        • n= número de dígitos enteros positivos
        • m= número de dígitos enteros negativos
        • a n-1 = dígito más significativo (MSD)
        • a -m = dígito menos significativo (LSD)
      • Ejemplos
      • (123.45) 10
      • (1001.11) 2
      • (763.12) 8
      • (3A.2F) 16
    • Sistemas Digitales NOTACION POLINOMIAL
      • Ejemplos
      (123.45) 10 = 1*10 2 +2*10 1 +3*10 0 +4*10 -1 +5*10 -2 (1001.11) 2 = 1*2 3 +0*2 2 +0*2 1 +1*2 0 +1*2 -1 +1*2 -2 (763.12) 8 = 7*8 2 +6*8 1 +3*8 0 +1*8 -1 +2*8 -2 (3A.2F) 16 = 3*16 1 +A*16 0 +2*16 -1 +F*16 -2 Donde: A=10, B=11, C=12, D=13, E=14 y F=15
    • Sistemas Digitales Sistemas de uso común F 17 1111 15 E 16 1110 14 D 15 1101 13 C 14 1100 12 B 13 1011 11 A 12 1010 10 9 11 1001 9 8 10 1000 8 7 7 111 7 6 6 110 6 5 5 101 5 4 4 100 4 3 3 11 3 2 2 10 2 1 1 1 1 0 0 0 0 Hexadecimal Octal Binario Decimal
    • Sistemas Digitales Conversión de un sistema de Base “ r ” a Base “10”
      • Utilizando la notación polinomial:
      • Ejemplos:
      (10100) 2 = 1*2 4 +0*2 3 +1*2 2 +0*2 1 +0*2 0 =(20) 10 (AF3.15) 16 = 10*16 2 +15*16 1 +3*16 0 +1*16 -1 +5*16 -2 = (2803.08203125) 10
    • Sistemas Digitales Conversión de un sistema de Base “ r ” a Base “10”
      • Utilizando la noción de los pesos:
      • Ejemplo en el sistema Binario (r = 2):
      • Peso (2 1 ) : 8 4 2 1
      • Digito (b i ) : b 3 b 2 b 1 b 0
      • (1001) 2 = 8 + 1 = (9) 10
      • (0101) 2 = 4 + 1 = (5) 10
    • Sistemas Digitales Conversión de un sistema de Base “10” a Base “ r ”
      • Utilizando divisiones sucesivas por la Base
      • msb = bit más significativo
      Ejemplos de números enteros : msb msb 0 1 : 2 1 1 : 2 3 0 : 2 6 1 : 2 13 (13) 10 = (1101) 2 E 0 14 A :16 14 10 :16 234 (234) 10 = (EA) 16
    • Sistemas Digitales Ejemplos de números enteros y decimal. Sean los números decimales 13.125 10 y 234.25 10 Conversión de un sistema de Base “10” a Base “ r ”
      • Utilizando divisiones sucesivas por la Base para la parte entera (caso anterior) y multiplicaciones sucesivas por la Base para la parte decimal.
      1101.001 2 EA.40 16 msb msb 1 X 2 0.500 0 X 2 0.250 0 X 2 0.125 entero 0 X 16 00 4 X 16 25 entero
    • Sistemas Digitales Conversión de un sistema de Base “10” a Base “8”
      • Ejemplo : convertir (145.64) 10 a número octal
      Parte Entera : 145 10 = 221 8 2 0 8 2 2 2 8 18 1 18 8 145 Resto Cuociente Base Entero
    • Sistemas Digitales Conversión de un sistema de Base “10” a Base “8”
      • Ejemplo : convertir (145.64) 10 a número octal
      Parte Decimal : 0.64 10 = 0.507534…. 8 …… aproximación… 4 4.16 8 0.52 3 3.52 8 0.44 5 5.44 8 0.68 7 7.68 8 0.96 0 0.96 8 0.12 5 5.12 8 0.64 Acarreo Producto Base Decimal
    • Sistemas Digitales Conversión entre Base Binaria y Hexadecimal
      • Base Binaria a Base Hexadecimal
      ( 1100 0011 1111 . 1101 ) 2 = ( C3F.D ) 16 C 3 F D ( 000 1 1000 ) 2 = ( 18 ) 16 Completando Con 0’s
    • Sistemas Digitales
      • Base Base Hexadecimal a Base Binaria
      Conversión entre Base Binaria y Hexadecimal ( 4AB.F5 ) 16 = ( 0 100 1010 1011 . 1111 0101 ) 2
    • Sistemas Digitales Conversión entre Base Binaria y Octal
      • Base Binaria a Base Octal
      ( 0 10 000 111 111 . 110 1 00 ) 2 = ( 2077.64 ) 8 Completando Con 0’s
      • Base Base Octal a Base Binaria
      ( 457.05 ) 8 = ( 100 101 111 . 000 101 ) 2
    • Sistemas Digitales BCD : Binary Coded Decimal
      • Representación en código binario de 4 bits de los números decimales.
      1001 9 1000 8 0111 7 0110 6 0101 5 0100 4 0011 3 0010 2 0001 1 0000 0 Código BCD Números Decimales
    • Sistemas Digitales BCD : Binary Coded Decimal Ejemplo: ( 4096 ) 10 = 0100 0000 1001 0110 Número decimal Representación BCD Comparación con su representación en Base binaria. ( 4096 ) 10 = ( 1000000000000 ) 2 4 0 9 6
    • Sistemas Digitales ARITMETICA BINARIA ( SUMA )
      • Condiciones :
        • 0 + 0 = 0
        • 0 + 1 = 1
        • 1 + 0 = 1
        • 1 + 1 = 0 más un acarreo a la siguiente posición más significativa.
    • Sistemas Digitales ARITMETICA BINARIA ( SUMA )
      • Ejemplo :
      Acarreos SUMA 0 0 1 0 1 0 1 1 1 1 0 1 0 + 1 0 1 1 1 1 1 1 1 1 1 1
    • Sistemas Digitales ARITMETICA BINARIA ( SUMA )
      • Ejemplo :
      0 0 1 1 1 1 1 1 1 0 1 0 + 1 0 1 0 0 1 1 1 1
    • Sistemas Digitales ARITMETICA BINARIA ( SUMA )
      • Ejemplo :
      Suma 0 0 0 0 0 0 0 1 1 0 0 0 1 0 + 1 0 1 1 0 0 1 0 1 0 1 1 1 0 1 1 0 1 Acarreos 10 1 10 10 10 10
    • Sistemas Digitales ARITMETICA BINARIA ( RESTA )
      • Condiciones :
        • 0 - 0 = 0
        • 1 - 0 = 1
        • 1 - 1 = 0
        • 0 – 1 = 1 tomando prestado 1,
        • ó 10 – 1 = 1
      La última regla señala que si se resta un bit 1 de un bit 0, hay que tomar prestado un 1 de la siguiente columna más significativa.
    • Sistemas Digitales ARITMETICA BINARIA ( RESTA )
      • Ejemplo : Restar 1001101 2 - 10111 2
      Diferencia 0 1 1 0 1 1 Sustraendo 1 1 1 0 1 - Minuendo 1 0 1 1 0 0 1 Prestamos 10 0 0 10 10 0 Prestamos 10 1 Columnas 0 1 2 3 4 5 6
    • Sistemas Digitales ARITMETICA BINARIA ( RESTA )
      • Ejemplo : Restar 11101 2 - 10111 2
      Diferencia 0 1 1 0 1 Sustraendo 1 1 + 0 = 1 1 + 1 = 0 0 + 1 = 1 1 + 0 = 1 - Minuendo 1 0 1 1 1 Columnas 0 1 2 3 4
    • Sistemas Digitales ARITMETICA BINARIA ( MULTIPLICACION)
      • Ejemplo: Multiplicar 10111 2 por 1010 2
      + Producto 0 1 1 0 0 1 1 1 1 1 1 0 1 0 0 0 0 0 1 1 1 0 1 0 0 0 0 0 Multiplicador 0 1 0 1 X Multiplicando 1 1 1 0 1
    • Sistemas Digitales ARITMETICA BINARIA (MULTIPLICACION)
      • Ejemplo: Multiplicar 101112 por 10102
      + + + Producto 0 1 1 0 0 1 1 1 Producto 4 1 1 1 0 1 Acumulativo 2 0 1 1 1 0 1 0 Producto 3 0 0 0 0 0 Acumulativo 1 0 1 1 1 0 1 Producto 2 1 1 1 0 1 Producto 1 0 0 0 0 0 Multiplicador 0 1 0 1 X Multiplicando 1 1 1 0 1
    • Sistemas Digitales ARITMETICA BINARIA (DIVISION)
      • Ejemplo: Dividir 1110111 2 entre 1001 2
      Residuo 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0 1 Dividendo 1 1 1 0 1 1 1 1 0 0 1 Divisor Cuociente 1 0 1 1
    • Sistemas Digitales
      • Ejemplo: Sumar 4163 8 + 7520 8
      ARITMETICA OCTAL (SUMA y RESTA)
      • Ejemplo: Sustraer 5173 8 de 6204 8
      Suma 3 0 7 3 1 Sumando 0 2 5 7 + Sumando 3 6 1 4 Acarreos 1 1 Diferencia 1 1 0 1 Sustraendo 3 7 1 5 - Minuendo 4 0 2 6 Prestado 10 1
    • Sistemas Digitales ARITMETICA OCTAL (Multiplicación)
      • Ejemplo: Multiplicar 4167 8 x 2503 8
      + Producto 5 4 0 5 0 1 3 1 6 5 3 0 1 0 3 2 1 5 2 Productos Parciales 5 4 5 4 1 Multiplicador 3 0 5 2 x Multiplicando 7 6 1 4
    • Sistemas Digitales
      • Ejemplo: Dividir 4163 8 : 25 8
      ARITMETICA OCTAL (División) Residuo 0 3 2 2 - 3 2 2 4 2 1 - 6 4 1 5 2 - Dividendo 3 6 1 4 5 2 Divisor Cuociente 7 4 1
    • Sistemas Digitales ARITMETICA HEXADECIMAL ( Suma)
      • Ejemplo: Sumar 2A58 16 + 71D0 16
      Suma 8 2 C 9 Sumando 0 D 1 7 + Sumando 8 5 A 2 Acarreos 1
    • Sistemas Digitales ARITMETICA HEXADECIMAL ( Resta)
      • Ejemplo: Sustraer 4A36 16 de 9F1B 16
      Diferencia 5 E 4 5 Sustraendo 6 3 A 4 - Minuendo B 1 F 9 Prestamos 11 E
    • Sistemas Digitales ARITMETICA HEXADECIMAL (Multiplicación)
      • Ejemplo: Multiplicar 5C2A 16 X 71D0 16
      + Producto 0 2 C 6 9 F 8 2 6 2 5 8 2 A 2 C 5 Productos Parciales 0 2 2 E A 4 Multiplicador 0 D 1 7 X Multiplicando A 2 C 5
    • Sistemas Digitales ARITMETICA HEXADECIMAL (División)
      • Ejemplo: Dividir 27FCA 16 : 3E 16
      Residuo C 2 E 3 A 6 6 3 1 C 3 1 C 6 2 Dividendo A C F 7 2 E 3 Divisor Cuociente 1 5 A
    • Sistemas Digitales NUMEROS SIGNADOS
      • Las computadoras construyen los signos “+” y “-” mediante los bits “0” y “1” respectivamente. Mediante un bir adicional, conocido como bit de signo es puesto como el bit más significativo de una expresión binaria.
      • Ejemplo:
      • -13 10 = 1 , 1101 2
      Bit de Signo Separador de Signo Magnitud +27 10 = 0 , 11011
    • Sistemas Digitales NUMEROS SIGNADOS Representación de los Complementos
      • Representación en Complemento 1’s
      • La representación en complemento 1’s de un número binario signado, se expresa cambiando el operando del número por su complemento ( 0 por 1 y 1 por 0 ) y manteniendo el bit de signo.
      • Por ejemplo:
      • Sea N= +6 valor positivo, de representación binaria 0,0110 2 , su complemento 1’a será 0,1001 2 .
      • Sea N= -17 valor negativo, de representación binaria 1,10001 2 , su complemento 1’s será 1,01110 2 .
    • Sistemas Digitales NUMEROS SIGNADOS Representación de los Complementos
      • La primera ventaja de complementar números, es que el proceso de la sustracción se ejecuta por la adición de ellos. Asuma por ejemplo, que se desea realizar la operación siguiente:
      • (+17 10 ) – (+12 10 ) = (+17 10 ) + (-12 10 )
      Sea N=(+17 10 ) = 0,10001 2 y N=(+12 10 )= 0,01100 2 , El complemento 1’s de N(-12 10 ) = 1,10011 2 , luego se tiene N=(+17 10 ) + N=(-12 10 )
    • Sistemas Digitales NUMEROS SIGNADOS Representación de los Complementos + 5 10 1 0 1 0 0 0, 1 + + 4 10 0 0 1 0 0 0, - 12 10 1 1 0 0 1 1, + + 17 10 1 0 0 0 1 0, Bits de acarreo 1 1 0 0 1 1
    • Sistemas Digitales NUMEROS SIGNADOS
      • Rango de representación de los números signados.
      • Combinando 8 bits (1 byte), se pueden representar hasta 256 números diferentes. Con dos bytes, hasta 65.536 números diferentes. La fórmula para calcular el número de combinaciones diferentes de “n” bits es:
      • N° total de combinaciones = 2 n
      • Para los números con signo en complemento a 2, el rango de valores para números de “n” bits es:
      • -(2 n-1 ) a +(2 n-1 -1)
      • habiendo en cada caso un bit de signo y n-1 bits de magnitud. Con 4 bits el rango es de -8 a +7 .
    • Sistemas Digitales ARITMETICA BINARIA DE NUMEROS CON SIGNO LA SUMA
      • Cuando se suman dos números binarios con signo se pueden producir cuatro casos:
        • Ambos números son positivos.
        • El número positivo es mayor que el negativo en valor absoluto.
        • El número negativo es mayor que el positivo en valor absoluto.
        • Ambos números son negativos.
    • Sistemas Digitales ARITMETICA BINARIA DE NUMEROS CON SIGNO Caso 1: C s+1 C s Si C s+1 = C s se descarta Acarreo Si C s+1 ≠ C s se considera Acarreo y la coma se desplaza un bit a la izquierda +11 1 1 0 1 0 0 0 0, +4 0 0 1 0 0 0 0 0, + +7 1 1 1 0 0 0 0 0,
    • Sistemas Digitales Caso 2: ARITMETICA BINARIA DE NUMEROS CON SIGNO 1 1 Compl. 2 -6 0 1 1 0 0 0 0 1, + +15 1 1 1 1 0 0 0 0, +9 1 0 0 1 0 0 0 0, -6 0 1 0 1 1 1 1 1, + +15 1 1 1 1 0 0 0 0,
    • Sistemas Digitales ARITMETICA BINARIA DE NUMEROS CON SIGNO Caso 3: 0 0 Compl. 2 -24 0 0 0 1 1 0 0 1, + +16 0 0 0 0 1 0 0 0, -8 0 0 0 1 1 1 1 1, -24 0 0 0 1 0 1 1 1, + +16 0 0 0 0 1 0 0 0,
    • Sistemas Digitales ARITMETICA BINARIA DE NUMEROS CON SIGNO Caso 4: 1 1 Compl. 2 Compl. 2 -9 1 0 0 1 0 0 0 1, + -5 1 0 1 0 0 0 0 1, -14 0 1 0 0 1 1 1 1, -9 1 1 1 0 1 1 1 1, + -5 1 1 0 1 1 1 1 1,
    • Sistemas Digitales ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA - DIFERENCIA + N 3 SUSTRAENDO N 2 MINUENDO N 1
    • Sistemas Digitales ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA
      • Se deben aplicar dos reglas en la sustracción en complemento 2’s :
      • Regla I
      • Al sacar el complemento 2’s del sustraendo se debe considerar lo siguiente:
      • Si es un número Positivo cámbielo a un número negativo en complemento 2’s.
      • Si es un número Negativo cambie la magnitud del número a uno positivo, es decir, sólo complementa el signo.
    • Sistemas Digitales Regla II Después de sacar el complemento 2’s del sustraendo súmelo al minuendo y obtenga la diferencia. El bit correspondiente al signo de la diferencia determina si éste es positivo o negativo y desde luego si se encuentra en la forma binaria correcta o en complemento 2’s. ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA
    • ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA Ejemplos : 1 1 C. 2’s Sistemas Digitales +5 1 0 1 0 0, +4 0 0 1 1 1 , - +9 1 0 0 1 0, +5 +4 0 0 1 0 0, - +9 1 0 0 1 0,
    • Sistemas Digitales 0 0 C. signo ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA Ejemplos : +13 1 0 1 1 0, -4 0 0 1 0 0 , - +9 1 0 0 1 0, +13 -4 0 0 1 0 1, - +9 1 0 0 1 0,
    • Sistemas Digitales 1 1 C. Signo y 2’s ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA Ejemplos : C. 2’s -13 1 1 0 0 1, +4 0 0 1 1 1 , - -9 1 1 1 0 1, -13 +4 0 0 1 0 0, - -9 1 0 0 1 1,
    • Sistemas Digitales 0 0 C. Signo ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA Ejemplos : C. 2’s -5 -4 0 0 1 0 1, - -9 1 0 0 1 1, -5 1 1 0 1 1, -4 0 0 1 0 0 , - -9 1 1 1 0 1,
    • Sistemas Digitales 0 0 C. Signo ARITMETICA BINARIA DE NUMEROS CON SIGNO LA RESTA Ejemplos : +8 -4 0 0 1 0 1, - +4 0 0 1 0 0, +8 0 0 0 1 0, -4 0 0 1 0 0 , - +4 0 0 1 0 0,
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA SUMA BCD es un código numérico y que puede utilizarse en operaciones aritméticas. La suma es la más importante de estas operaciones, ya que las otras tres operaciones (sustracción, multiplicación y división) se pueden llevar a cabo utilizando la suma. A continuación, se explicará como se suman dos números en código BCD.
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA SUMA Paso 1. Sumar los dos números BCD utilizando las reglas de la suma binaria. Paso 2. Si una suma de 4 bits es igual o menor que 9, es un número BCD válido. Paso 3. Si una suma de 4 bits es mayor que 9, o si genera acarreos en el grupo de 4 bits, el resultado no es valido . En este caso, se suma 6 (0110) al grupo de 4 bits para saltar así los seis estados no válidos y pasar al código 8421. Si se genera un acarreo al sumar 6, éste se suma al grupo de 4 bits siguiente.
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA SUMA 13 4 9 3 1 BCD válido 1 1 0 0 1 0 0 0 Se Suma 6 0 1 1 0 + BCD no válido > 9 1 0 1 1 + 0 0 1 0 + 1 0 0 1
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA SUMA 18 9 9 8 1 BCD válido 0 0 0 1 1 0 0 0 Se Suma 6 0 1 1 0 + No válido por acarreo 0 1 0 0 1 + 1 0 0 1 + 1 0 0 1
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA SUMA 31 15 16 1 3 BCD’s válidos 1 0 0 0 1 1 0 0 Se Suma 6 0 1 1 0 + 1 + acarreo BCD no válido > 9 BCD válido 1 1 0 1 0 1 0 0 + 1 0 1 0 1 0 0 0 + 0 1 1 0 1 0 0 0
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA SUMA 0 0 BCD’s Válidos 0 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 1 1 0 1 1 0 1 2 1 120 53 67 Se Suma 6 0 1 1 1 0 1 + BCD’s no válidos > 9 0 1 0 0 1 + 1 1 0 1 0 + 1 1 1 1 0
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA RESTA 1 0 0 0 1 1 0 0 1 0 1 11 34 45 BCD’s válidos 1 0 0 0 0 - 0 0 1 0 0 - 1 0 1 1 0
    • Sistemas Digitales ARITMETICA DE NUMEROS EN CODIGO BCD LA RESTA 1 0 0 1 9 0 1 1 1 0 1 0 0 0 1 9 19 28 Resta 6 0 1 1 - BCD no válido BCD válido 1 1 1 0 0 - 1 0 0 0 0 - 0 0 0 0 0
    • Sistemas Digitales CODIGOS DIGITALES
      • Existen muchos códigos especializados que se usan en sistemas digitales, tales como el código Gray , el código de exceso 3 y el código ASCII .
      • El código Gray es un código sin pesos y no aritmético; es decir, no existen pesos específicos asignados a la posición de los bits. La característica más importante del código Gray es que sólo varía un bit de un código al siguiente .
    • Sistemas Digitales CODIGO DIGITAL GRAY 1000 1111 15 1001 1110 14 1011 1101 13 1010 1100 12 1110 1011 11 1111 1010 10 1101 1001 9 1100 1000 8 0100 0111 7 0101 0110 6 0111 0101 5 0110 0100 4 0010 0011 3 0011 0010 2 0001 0001 1 0000 0000 0 GRAY BINARIO DECIMAL
    • Sistemas Digitales CODIGO DIGITAL GRAY
      • Convertir a código Gray, el número binario 11000110.
      • Convertir a binario el código Gray 10101111.
      Solución
      • Binario a código Gray :
      Observación : no tener en cuenta el acarreo 1 0 1 0 0 1 0 1 0 + 1 + 1 + 0 + 0 + 0 + 1 + 1
    • Sistemas Digitales CODIGO DIGITAL GRAY
      • Código Gray a Binario :
      Sumar en esta dirección sin acarreo 0 1 0 1 0 0 1 1 1 1 1 1 0 1 0 1
    • Sistemas Digitales CODIGO DIGITAL EXCESO 3 Es un código digital relacionado con el BCD, y se deriva de él sumando 3 a cada dígito decimal y convirtiendo el resultado de esta suma en número binario de 4 bits. Es un código sin ningún peso. 1100 1001 9 1011 1000 8 1010 0111 7 1001 0110 6 1000 0101 5 0111 0100 4 0110 0011 3 0101 0010 2 0100 0001 1 0011 0000 0 EXCESO-3 BCD DECIMAL
    • Sistemas Digitales CODIGO DIGITAL EXCESO 3
      • Ejemplo:
      • Convertir a código exceso 3 el número decimal 430
      Exceso-3 0011 0110 0111 3 6 7 3 + 3 + 3 + 0 3 4
    • Sistemas Digitales ASCII
      • El American Estándar Code for Information Interchange ( ASCII , código estándar americano para el intercambio de información), es un código alfanumérico universalmente aceptado, que se usa en la mayoría de los computadores y otros equipos electrónicos (teclados).
      • Dispone de 128 caracteres que se representan por códigos binarios de 7 bits . Letras , números y símbolos.
      • Ejemplos:
      3D 16 0111101 = 50 16 1010000 P Hexadec. Binario Carácter
    • Sistemas Digitales Método de paridad para la detección de errores
      • Mucho sistemas emplean un bit de paridad como medio para la detección de errores de bit.
      • Cualquier grupo de bits contiene un número par o impar de 1s.
      • Un bit de paridad se añade al grupo de bits para hacer que el número total de 1s en el grupo sea siempre par o siempre impar .
      • Un bit de paridad par hace que el número total de 1s en el grupo sea par y un bit de paridad impar hace que el número total de 1s en el grupo sea impar .
      • Un determinado sistema puede funcionar con paridad par o impar , pero no con ambas .
    • Sistemas Digitales Método de paridad para la detección de errores
      • Por ejemplo, si un sistema trabaja con paridad par , una comprobación que se realice en cada grupo de bits recibidos tiene que asegurar que el número total de 1s en ese grupo es par . Si hay un número total impar de 1s , quiere decir que se ha producido un error .
      • El bit de paridad se puede añadir al principio o al final del código, dependiendo del diseño del sistema.
      • Observe que el número total de 1s incluyendo el bit de paridad es siempre par para paridad par , y siempre es impar para paridad impar.
    • Sistemas Digitales Método de paridad para la detección de errores
      • Detección de un error . Un bit de paridad facilita la detección de un único error de bit, pero no puede detectar dos errores dentro de un grupo.
      • Ejemplo : Transmitir el código BCD 0101 con paridad par .
      Código BCD 0 0101 Bit de paridad par
    • Sistemas Digitales Código HAMMING de Corrección de Errores
      • Este código no sólo permite detectar un bit erróneo, sino también identifica el bit erróneo de forma que pueda ser corregido.
      • El código utiliza un número de bits de paridad (dependiendo del número de bits de información), localizados en determinadas posiciones del grupo del código.
      • La detección del código que aquí se presenta corresponde a una única corrección de error.
    • Sistemas Digitales Código HAMMING de Corrección de Errores Números de Paridad Si al número de bits de información lo designamos como m , entonces el número de bits de paridad, p , se determina mediante la siguiente relación: 2 p > m + p + 1 Por ejemplo, si se tiene cuatros bits de información ( m =4), p se calcula mediante el método de prueba y error. Sea p =2, entonces 2 p > =2 2 =4 y m + p + 1 = 4 + 2 + 1 = 7 Puesto que p =2 no satisface la ecuación, se busca probar con p =3 .
    • Sistemas Digitales Código HAMMING de Corrección de Errores Sea p =3, entonces: 2 p =2 3 =8 y m + p + 1 = 4 + 3 + 1 = 8 este valor de p satisface la ecuación, de manera que se necesitan tres bits de paridad para proporcionar corrección simple de errores para cuatro bits de información. Conviene fijarse en que la detección y corrección de errores se proporciona para todos los bits, tanto de paridad como de información, dentro de un grupo de código.
    • Sistemas Digitales Código HAMMING de Corrección de Errores Situación de los bits de paridad dentro del código Se debe tener en cuenta que en esta expresión, el código se compone de cuatro bits de información y de tres bits de paridad . El bit más a la izquierda se designa como bit 1, el siguiente bit 2, y así sucesivamente del mismo modo: bit 1, bit 2, bit 3, bit 4, bit 5, bit 6 , bit 7
    • Sistemas Digitales Código HAMMING de Corrección de Errores Los bits de paridad se sitúan en las posiciones cuya numeración corresponde a las potencias de dos en sentido ascendente ( 1,2,4,8,….. ), tal como se indica: P 1 , P 2 , M 1 , P 3 , M 2 , M 3 , M 4 El símbolo P n designa un determinado bit de paridad y M n designa un determinado bit de información .
    • Sistemas Digitales Código HAMMING de Corrección de Errores Asignación de valores a los bits de paridad
      • Se tiene que asignar un valor 1 ó 0 a cada bit de paridad .
      • Dado que cada bit de paridad proporciona una comprobación de otros bits del código total, se tiene que conocer el valor de estos otros bits para poder asignarle un valor.
      • Para encontrar los valores del bit, primero se tiene que numerar cada posición de bit en forma de número binario .
      • A continuación, se indica la situación de los bits de paridad y de información .
    • Sistemas Digitales Código HAMMING de Corrección de Errores
      • Tenga en cuenta que el número binario que indica la posición del bit de paridad P 1 contiene un 1 como el dígito más a la derecha. Este bit de paridad comprueba todas las posiciones de bit, incluída la suya propia, que tiene como valor “1” en la misma posición que los números binarios que indican la posición . Por consiguiente, el bit de paridad P 1 , comprueba las posiciones de bit 1, 3, 5 y 7 .
      Tabla de posiciones de los bits para código de corrección de errores de 7 bits Bits de paridad ( P n ) Bits de información ( M n ) 111 110 101 100 011 010 001 Número binario de posición 7 6 5 4 3 2 1 Posición de bit M 4 M 3 M 2 P 3 M 1 P 2 P 1 Designación de bit
    • Sistemas Digitales Código HAMMING de Corrección de Errores
      • El número binario de posición para el bit de paridad P 2 tiene un “1” en el bit del medio. Comprueba todas las posiciones de bit, incluída la suya propia, que tienen un “1” en la misma posición. Por lo tanto, el bit de paridad P 2 comprueba las posiciones de bit 2, 3, 6 y 7 .
      • Bajo la misma premisa, el bit de paridad P 3 , comprobará las posiciones de bit 4, 5, 6 y 7 .
      • En cada caso, al bit de paridad se le asigna un valor tal, que haga que el número de unos del conjunto de bits que comprueba, sea par o impar , de acuerdo a lo que especificado.
    • Sistemas Digitales Código HAMMING de Corrección de Errores Ejemplo : Determinar el código de corrección de error para el número de código BCD 1001 ( bits de información ) , utilizando paridad par . Solución : Paso 1 . Encontrar el número de bits de paridad requeridos. Sea p=3 , entonces 2 p = 2 3 = 8 y m + p + 1 = 8 tres bits de paridad son suficientes. Bits totales del código = 4 + 3 = 7
    • Sistemas Digitales Código HAMMING de Corrección de Errores Paso 2 . Construir una tabla de posiciones de los bits para un código de corrección de errores de 7 bits . Recuerde que el número es el BCD 1001 ( bits de información ) BCD 1001 Bits de paridad ( P n ) 1 0 0 1 Bits de información ( M n ) 111 110 101 100 011 010 001 Número binario de posición 7 6 5 4 3 2 1 Posición de bit M 4 M 3 M 2 P 3 M 1 P 2 P 1 Designación de bit
    • Sistemas Digitales Código HAMMING de Corrección de Errores Paso 3 . Determinar los bits de paridad de la siguiente manera: El bit P 1 comprueba las posiciones 1, 3, 5 y 7 y tiene que ser 0 para que haya un número par de unos (2) en este grupo. El bit P 2 comprueba las posiciones 2, 3, 6 y 7 y tiene que ser 0 para que haya un número par de unos (2) en este grupo. El bit P 3 comprueba las posiciones 4, 5, 6 y 7 y tiene que ser 1 para que haya un número par de unos (2) en este grupo.
    • Sistemas Digitales Código HAMMING de Corrección de Errores Paso 4 . Estos bits se introducen en la tabla. El código combinado resultante es 00 1 1 001 1 0 0 Bits de paridad ( P n ) 1 0 0 1 Bits de información ( M n ) 111 110 101 100 011 010 001 Número binario de posición 7 6 5 4 3 2 1 Posición de bit M 4 M 3 M 2 P 3 M 1 P 2 P 1 Designación de bit
    • Sistemas Digitales Código HAMMING de Corrección de Errores Detección y corrección de un error
      • Ahora que ya se tiene un método de construcción de un código de errores, ¿Cómo se puede aplicar para localizar el error?
      • Cada bit de paridad , junto con su correspondiente grupo de bits, tiene que ser comprobado con la paridad adecuada.
      • Si hay tres bits de paridad en una palabra de código, entonces hay que realizar tres comprobaciones de paridad.
      • Cada comprobación de paridad nos dará un resultado correcto o incorrecto .
      • El resultado total de las comprobaciones de paridad indican el bit, si es que lo hay, que es erróneo .
    • Sistemas Digitales Código HAMMING de Corrección de Errores Los pasos a seguir son entonces los siguientes: Paso 1 . Comenzar con el grupo que comprueba P 1 . Paso 2 . Comprobar que el grupo tenga la paridad adecuada. Un 0 representa que la comprobación de paridad es correcta y un 1 representa una mala comprobación . Paso 3 . Repetir el paso 2 para cada grupo de paridad. Paso 4 . El número binario formado a partir de los resultados de todas las comprobaciones de paridad determina la posición del bit de código que contiene un error . Este es el código de posición de error . La primera comprobación de paridad genera el bit menos significativo . Si todas las comprobaciones son correctas, no hay error .
    • Sistemas Digitales Código HAMMING de Corrección de Errores Ejemplo : Suponer que la palabra de código del ejemplo anterior ( 0011001 ) es transmitida y que recibimos 0010001 . El receptor no “ conoce ” cuál fue la palabra transmitida y tiene que buscar las paridades adecuadas para determinar si el código es correcto. Encontrar cualquier error que haya habido en la transmisión si utilizamos paridad par . Solución : Construimos una tabla de posición de bit : 1 0 0 0 1 0 0 Código recibido 111 110 101 100 011 010 001 Número binario de posición 7 6 5 4 3 2 1 Posición de bit M 4 M 3 M 2 P 3 M 1 P 2 P 1 Designación de bit
    • Sistemas Digitales Código HAMMING de Corrección de Errores
      • Primera comprobación de paridad:
        • El bit P 1 comprueba las posiciones 1, 3, 5 y 7 .
        • Hay dos unos en este grupo
        • Comprobación de paridad correcta 0 ( LSB )
      • Segunda comprobación de paridad:
        • El bit P 2 comprueba las posiciones 2, 3, 6 y 7 .
        • Hay dos unos en este grupo
        • Comprobación de paridad correcta 0
      • Tercera comprobación de paridad:
        • El bit P 3 comprueba las posiciones 4, 5, 6 y 7 .
        • Hay un uno en este grupo
        • Comprobación de paridad incorrecta 1 ( MSB )
    • Sistemas Digitales Código HAMMING de Corrección de Errores
      • Resultado :
      • El código de posición de error es 100 (cuatro binario).
      • Esto indica que el bit de la posición 4 es erróneo, y que es un 0 cuando debería ser un 1 .
      • El código corregido es 0011001 , que concuerda con el código transmitido.