Capítulo 01 Sistemas Numéricos y códigos (1)

download Capítulo 01    Sistemas Numéricos y códigos (1)

of 39

Transcript of Capítulo 01 Sistemas Numéricos y códigos (1)

Captulo 1

Sistemas numricos y cdigos

Captulo 1 Sistemas Numricos

1

Captulo 1

Sistemas numricos y cdigos

Sistemas Numricos y CdigosObjetivos:1. Entender la diferencia entre una seal analgica y una seal digital. 2. Realizar conversiones de nmeros entre los diferentes sistemas numricos que se utilizan en los sistemas digitales. 3. Realizar operaciones de suma, resta, multiplicacin y divisin entre nmeros binarios 4. Representar nmeros decimales en los diferentes cdigos que se revisarn. 5. Realizar operaciones en complemento a 1 y en complemento a 2.

1.1. Introduccin.En el mundo actual, mundo de la informtica, los sistemas digitales o sistemas procesadores de informacin son de uso tan comn (uso de la computadora, calculadoras electrnicas, video juegos, aparatos para el hogar, etc.), que a travs del uso de ellos se han logrado muchos avances cientficos e industriales de forma tan rpida que no se hubiesen podido lograr utilizando otros medios. El sistema digital (contando dgitos) est fundamentado en el uso de dos cantidades nicamente como se ver mas adelante, de all su facilidad para estudiarlos. En la ciencia, tecnologa, industrias, negocios, y de hecho, en la mayora de los campos del conocimiento, constantemente se trata con cantidades. Cantidades que son medidas, monitoreadas, grabadas, manipuladas aritmticamente, observadas, o de alguna otra manera utilizadas en la mayora de los sistemas fsicos. Es importante al tratar con varias cantidades poder representar sus valores eficiente y exactamente. Hay bsicamente dos maneras de representar el valor numrico de cantidades: analgica y digital Representacin Analgica. En una representacin analgica, una cantidad se representa por un voltaje, corriente, o a travs del movimiento de un medidor que sea proporcional al valor de esa cantidad. Las cantidades analgicas tienen una caracterstica importante: pueden variar sobre un rango continuo de valores como se muestra en el siguiente diagrama.

Figura 1.1. Representacin de una magnitud analgica en funcin del tiempo.

2

Captulo 1

Sistemas numricos y cdigos

Caractersticas:Toma valores continuos es decir, una variable puede tomar cualquier valor dentro de un rango y cada valor en el tiempo, tiene asociado con l algn o algunos valores.

Ejemplos. temperatura, voltaje, corriente, peso, longitud, distancia, presin, un amplificador de sonido formado por micrfono-amplificador-bocina. Representacin Digital. Las seales y cantidades digitales se representan a travs de smbolos llamados dgitos. Como un ejemplo, considere un reloj digital, el cual muestra el tiempo del da utilizando dgitos decimales que representan las horas, minutos y segundos. Como se sabe, el tiempo del da cambia continuamente, pero el reloj digital no cambia de esta forma; sino que cambia en pasos de uno por minuto o de uno por segundo. En otras palabras, la representacin digital del tiempo del da cambia en pasos discretos, a diferencia de un reloj anlogo donde los cambios de lectura son realizados de manera continua. En la figura 1.2 se muestra una seal digital.

Figura 1.2. Representacin de una seal digital. Valores muestreados de la magnitud analgica de la figura 1.1. Cada valor representado por un punto puede digitalizarse, representndolo por un cdigo digital de una serie de unos y ceros. Caractersticas: La seal toma valores discontinuos es decir, la variable est solo definida en cierto tiempo y puede slo tomar un valor de un juego finito Ejemplos. Posicin de un switch, Lgica digital, el ndice Dow-Jones Industrial, lotera, promedio de bateo.

3

Captulo 1

Sistemas numricos y cdigos

1.2. Sistemas Digitales y AnalgicosUn sistema digital es aquel que procesa y representa la informacin de manera discreta en vez de continua y un sistema analgico representa dicha informacin de manera continua. Ejemplos de estos sistemas hay muchos, basta con mencionar que un disco compacto o CD registra el sonido de manera digital a diferencia de un cassette que la registra de manera analgica.

Ventajas y Limitaciones de las Tcnicas DigitalesVentajas 1. Fcil de disear. Los valores exactos de corriente y voltaje no son importantes, solo el rango (ALTO o BAJO) en el cual ellos estn. 3. Almacenar informacin es fcil. 4. Mayor exactitud y precisin. 5. Operacin puede ser programada. Sistemas anlogos pueden tambin ser programados, pero la variedad y complejidad de las operaciones disponibles est severamente limitada. 5. A los circuitos digitales les afecta menos el ruido. 6. La mayora de la circuitera digital se fabrica en circuitos integrados por lo que los sistemas digitales se prestan mejor a la miniaturizacin que los sistemas analgicos. 7. Los datos digitales se pueden procesar y transmitir de forma ms eficiente, rpida y confiable que los datos analgicos. Ejemplo, La msica convertida a digital, puede almacenarse de manera ms compacta y reproducirse con mayor precisin y claridad de lo que es posible en un formato analgico. 8. Las tcnicas digitales permiten el uso de mecanismos integrados para detectar y corregir errores. Limitaciones Realmente solo existe una gran limitacin cuando se usan tcnicas digitales: El mundo real es principalmente analgico. La mayora de las cantidades fsicas son analgicas por naturaleza, y son estas cantidades las que se utilizan como entradas y salidas y son monitoreadas y controladas por un sistema. Para aprovechar el uso de las tcnicas digitales al tratar con entradas y salidas anlogas, se deben de seguir los siguientes pasos: 1. Convertir las entradas anlogas del mundo real a forma digital. (ADC) 2. Procesar la informacin digital. 3. Convertir la salida digital de nuevo a una forma anloga del mundo real. (DAC)

4

Captulo 1

Sistemas numricos y cdigos

Por otra parte, todos los sistemas digitales estn basados en la utilizacin de sistemas numricos que se revisarn en la siguiente seccin.

1.3. Sistemas numricosMuchos sistemas numricos estn en uso con la tecnologa digital. Los ms comunes son, el sistema binario, el sistema octal, el sistema decimal y el sistema hexadecimal. Por supuesto que el sistema decimal es el ms familiar para nosotros debido a que es una herramienta que diariamente usamos. Se examinarn algunas de sus caractersticas para lograr entender los otros sistemas. A continuacin se muestran en la figura 1.3 los diferentes sistemas y el nmero de dgitos que utilizan: Binario - Raz 2 (0,1) Octal - Raz 8 (0,1,2,3,4,5,6,7) Decimal - Raz 10 (0,1,2,3,4,5,6,7,8,9) Hexadecimal - Raz 16 (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F) Figura 1.3. Sistemas numricos ms utilizados en los sistemas digitales.

A) Sistema DecimalEl sistema decimal est compuesto de 10 numerales o smbolos que son 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; usando estos smbolos como dgitos de un nmero, se puede expresar cualquier cantidad. El sistema decimal, tambin es llamado sistema en base-10. En la tabla 1.1 se muestra este sistema en forma de potencias de 10. Tabla 1.1. Sistema decimal 103 102 101 100 10-1 10-2 10-3 =1000 =100 =10 =1 . =0.1 =0.01 =0.001 Dgito ms Punto Dgito menos significativo decimal significativo

Representacin estndar de nmeros decimales 1 2 245.87 = 2 102 + 4 101 + 5 100 + 8 10 + 7 10 Generalizacin a base r An. . .A1A0.A . . .A 1 m =An rn + . . . + A1 r1 +A0 r0 + A1 r 1 + . . . + Am r m Ejemplo1.1. Represente los nmeros indicados en potencias de 10. 5

Captulo 1

Sistemas numricos y cdigos

a) 47 = 4x101 + 7x100 b) 579.45 = 5x102 + 7x101 + 9x100 + 4x10-1 + 5x10-2

B) Sistema BinarioEn los sistemas digitales la informacin que est siendo procesada, es usualmente presentada de manera binaria. Las cantidades binarias pueden representarse por cualquier elemento que tenga dos estados de operacin. Por ejemplo, un interruptor puede estar abierto o cerrado, un diodo conduce o no conduce al igual que un transistor o un relevador. Arbitrariamente se define que un interruptor abierto representa el binario 0 y un switch cerrado representa el binario 1. Por lo tanto, se pueden representar cualquier nmero binario usando una serie de interruptores. Los dgitos del sistema binario 1 y 0, se les llama bits. A continuacin se mostrarn los niveles de voltaje de estos dgitos binarios.

Asignaciones Tpicas de VoltajeBinario 1: Cualquier voltaje entre 2V a 5V Binario 0: Cualquier voltaje entre 0V a 0.8V No usado: Voltaje entre 0.8V a 2V, podra causar error en un circuito digital. En la figura 1.4 se muestran estos niveles de voltaje

Figura 1.4. Niveles de voltaje utilizados en los sistemas digitales. Solo se tienen dos dgitos (0,1) que representan niveles de voltaje (bajo, alto). De la observacin de esta grfica, se puede observar otra diferencia significativa entre sistemas digitales y anlogos. En un sistema digital, el valor exacto de un voltaje no es

6

Captulo 1

Sistemas numricos y cdigos

importante; por ejemplo, un voltaje de 3.8V significa lo mismo que un voltaje de 4.6V. En cambio, en los sistemas anlogos, el valor exacto de un voltaje es importante. En la tabla 1.2 se muestra la representacin de un sistema binario en potencias de 2

Tabla 1.2. Representacin de un sistema binario en potencias de 2 23 22 21 20 2-1 2-2 2-3 =8 =4 =2 =1 . =1/2 =1/4 =1/8 Dgito ms Punto Bit menos significativo Binario significativo

Ejemplo 1.2. Represente los nmeros binarios en potencias de 2 a) 1101.112 = 1x23 + 1x22 + 0x21 + 1x20 + 1x2-1 + 1x2-2 b) 0.10112 = 1x2-1 + 0x2-2 + 1x2-3 + 1x2-4

Conversin de Binario a DecimalPara convertir un nmero binario a decimal, nicamente se representan las potencias de 2 por su equivalente en decimal y se realiza la suma como se indica en los siguientes ejemplos. Ejemplo 1.3. Convertir a decimal los siguientes nmeros binarios. a) 1 1 0 1 1 2 (binario) =24+23+0+21+20 = 16+8+0+2+1 = 2710 (decimal) b) 1 0 1 1 0 1 0 1 2 (binario) = 27+0+25+24+0+22+0+20 = 128+0+32+16+0+4+0+1 = 18110 (decimal) c)11011.112 = 1x24 +1x23 + 0x22 + 1x21 + 1x20 +1x2-1 + 1x2-2 = = 16 + 8 + 0 + 2 + 1 + + = 27.75

Conversin de Decimal a Binario. Hay dos MtodosPor otra parte, si se quiere convertir un nmero decimal a binario, es necesario utilizar alguno de los dos mtodos conocidos y llamados, sustraccin repetida de potencias de dos y el de la divisin repetida o sucesiva por dos como se muestra en los ejemplos siguientes: Sustraccin repetida de potencias de 2. Se usarn las siguientes equivalencias de las potencias de dos. 210 29 28 27 26 25 24 23 22 21 20 . 2-1 2-2 2-3 2-4

7

Captulo 1 1024 512 256 128 64 32 16 8 4 2 1

Sistemas numricos y cdigos 1/8 1/16

Ejemplo 1.4. Convertir a binario los nmeros decimales indicados: 1) 398 = 256 + 142 256 = 28 142 = 128 + 14 128 = 27 14 = 8 + 6 8 = 23 6= 4+2 4 = 22 2= 2+0 2 = 21 Por lo que, (398)10 = 28 + 27 + 23 + 22 + 21 = (1100 011 1)2 2) 47 10 = 32 + 0 + 8 + 4 +2 + 1 = 25+0+23+22+21+20 = 10 11112

Divisin Repetida por 2 Ejemplo 1.5. Convertir el nmero 545 en decimal a su equivalente binario. 545/2 = 272 con residuo de 1 Bit menos significativo 272/2 = 136 con residuo de 0 136/2 = 68 con residuo de 0 68/2 = 34 con residuo de 0 34/2 = 17 con residuo de 0 17/2 = 8 con residuo de 1 8/2 = 4 con residuo de 0 4/2 = 2 con residuo de 0 2/2 = 1 con residuo de 0 1/2 = 0 con residuo de 1 Bit ms significativo Por lo que, (545)10 = (10 0010 0001)2 Ejemplo 1.6. Convertir el nmero 27 decimal a su equivalente binario. 27/2 = 13 con residuo de 1 Bit menos significativo 13/2 = 6 con residuo de 1 6/2 = 3 con residuo de 0 3/2 = 1 con residuo de 1 1/2 = 0 con residuo de 1 Bit ms significativo Por lo que (27)10 = (11011)2

8

Captulo 1

Sistemas numricos y cdigos

En el caso de lo nmeros fraccionarios, la manera de convertir un nmero decimal a binario se realiza multiplicando la fraccin por dos y se coloca el bit entero en el orden en que salga hasta obtener las cifras deseadas como se indica en el siguiente ejemplo. Ejemplo 1.7. Convertir el nmero decimal 0.456 a binario. Utilice hasta cuatro cifras despus del punto decimal. 0.456 x 2 = 0.912 0.912 x 2 = 1.824 0.824 x 2 = 1.648 0.648 x 2 = 1.296 sucesivamente se retira el 0 como el bit ms significativo se retira el 1 como el segundo bit se retira el 1 como el tercer bit y se sustituye por 0 se retira el 1 como el cuarto bit y se sustituye por cero y as

en este ejemplo se tiene que el nmero 0.45610 = 0.01112 Ejemplo 1.8. Convertir el nmero decimal 57.295 a binario. Para resolver este ejercicio, se efecta en dos partes. La parte entera se realiza usando el mtodo de sustraccin de potencias de dos o el de la divisin sucesiva y la parte fraccionaria se convierte a decimal como se hizo en el ejemplo previo. La parte entera 57/2 = 28 con residuo 1 28/2 = 14 con residuo 0 14/2 = 7 con residuo 0 7/2 = 3 con residuo 1 3/2 = 1 con residuo 1 1/2 = 0 con residuo 1 5710 = 1110012 La parte fraccionaria 0.295 x 2 = 0.590 se retira el 0 0.590 x 2 = 1.180 se retira el 1 y se sustituye por 0 0.180 x 2 = 0.360 se retira el 0 0.360 x 2 = 0.720 se retira el 0 0.29510 = 01002 Por ltimo, se unen las dos partes para obtener el equivalente binario total 57.29510 = 111001.01002

bit menos significativo

bit ms significativo

9

Captulo 1

Sistemas numricos y cdigos

C) Sistema Numrico OctalEl sistema numrico octal tiene una base de ocho, lo que significa que tiene ocho posibles dgitos: 0,1,2,3,4,5,6,7. En la tabla 1.3 se muestran las potencias de 8 y su equivalente decimal correspondiente. Tabla 1.3. Sistema octal en potencias de 8 83 =512 Dgito ms significativo 82 81 80 =64 =8 =1 . Punto Octal 8-1 8-2 =1/8 =1/64 8-3 =1/512 Dgito menos significativo

Conversin de Octal a DecimalPara convertir un nmero octal a decimal, slo se necesita multiplicar cada dgito del nmero por su respectiva potencia de ocho y sumarlos como se muestra a continuacin. Ejemplo 1.9: Convertir los siguientes nmeros dados en octal a decimal. a) 32.68 = 3 x (81) + 2 x (80) + 6 x (8-1) = 26.7510 b) 417.38 = 4x82 + 1x81 +7x80 + 3x8-1 = 271.37510

Conversin Binario-a-Octal / Octal-a-BinarioPara convertir nmeros de binario a octal y de octal a binario, es necesario utilizar tres bits del nmero binario para representar a un nmero octal y sustituir cada dgito del nmero octal por tres dgitos binarios como se muestra en la tabla 1.4 Tabla 1.4. Representacin de nmeros octales por tres dgitos binarios

Dgito Octal Equivalente Binario

0 000

1 001

2 010

3 011

4 100

5 101

6 110

7 111

Ejemplo 1.10: Convertir los nmeros binarios indicados a nmeros octales: a) 111 011 1012 = 7358 b) 100 110 1112 = 4678 10

Captulo 1 c) 3158 = 011 001 1012 d) 24618 = 010 100 1102

Sistemas numricos y cdigos

Conversin de decimal a octal y binarioPara convertir un nmero decimal a octal, se aplica el mtodo de la divisin sucesiva por ocho y para convertirlo a binario, se efecta como se hizo anteriormente o aplicando la manera de convertir el octal a binario, es decir, puede llevarse a cabo de cualquiera de las dos maneras. Ejemplos 1.11: Convertir los siguientes nmeros decimales a octal y a binario a) 16510 = 165/8 = 20 con residuo de 5 20/8 = 2 con residuo de 4 2/8 = 0 con residuo de 2 bit menos significativo bit ms significativo

por tanto, el nmero 16510 = 2458 = 010 100 1012 b) 84510 = 845/8 = 105 con residuo de 5 105/8 = 13 con residuo de 1 13/8 = 1 con residuo de 5 1/8 = 0 con residuo de 1 bit menos significativo bit ms significativo

por tanto, el 16510 = 15158 = 001 101 001 1012

D) Sistema Numrico HexadecimalEl sistema hexadecimal usa la base 16. Es decir, tiene 16 posibles dgitos. Usa los dgitos de 0 hasta 9 ms las letras A, B, C, D, E, y F como los 16 dgitos. La tabla 1.5a muestra el sistema hexadecimal en potencias de 16 y en la tabla 1.5b se muestran los 16 dgitos hexadecimales y su correspondiente nmero decimal y binario respectivamente. Tabla 1.5a. Sistema hexadecimal en potencias de 16 163 162 161 160 16-1 16-2 =4096 =256 =16 =1 . =1/16 =1/256Dgito ms significativo Punto Hexadec.

16-3 =1/4096Dgito menos significativo

Tabla 1.5b. Equivalencias del Sistema hexadecimal a decimal y binario.Hexadec imal Decimal Binario 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 A 10 1010 B 11 1011 C 12 1100 D 13 1101 E 14 1110 F 15 1111

11

Captulo 1

Sistemas numricos y cdigos

Conversin de Hexadecimal a DecimalPara convertir de hexadecimal a decimal slo se necesita multiplicar cada dgito del nmero decimal por la potencia de 16 que le corresponde y sumar cada nmero. Esto se muestra en los siguientes ejemplos. Ejemplo 1.12: Convertir los nmeros hexadecimales siguientes a decimal a) 5BF16 = 5x162 + 10x161 + 15x160 = 145510 b) B65D16 = 10x163 + 6x162 + 5x161 + 13x160 = 4258910 c) 4ACE16 = 4x163 + 10x162 + 11x161 + 14x160 = 1913410 d) F16.BC16 = 15x162 + 1x161 + 6x160 + 11x16-1 +12x16-2 = 3862.734310

Convertir de decimal a hexadecimal:Se usa el mtodo de la divisin repetida por 16 Ejemplo 1.13. Convertir los siguientes nmeros decimales a hexadecimal. a) 53710 537/16 = 33 con residuo de 9 33/16 = 2 con residuo de 1 2/16 = 0 con residuo de 2 por tanto 53710 = 21916 b) 75110 751/16 = 46 con residuo 15 = F 46/16 = 2 con residuo 14 = E 2/16 = 0 con residuo 2 el resultado ser que 75110 = 2EF16 bit menos significativo bit ms significativo

bit menos significativo bit ms significativo

Conversin Binario-a-Hexadecimal /Hexadecimal-a-BinarioPara realizar esta conversin, se aplica la misma regla que se us en el sistema octal a diferencia de que en este sistema, c ada dgito hexadecimal se representa por cuatro bits binarios. Esta operacin se ilustra con los siguientes ejemplos. Ejemplo 1.14. Convertir los siguientes nmeros binarios a hexadecimal a) 1101011012 = 0001 1010 1101 = 1AD16 b) 11000100101.1102 = 0110 0010 0101. 1100 = 625.C16 c) 1000111.12 = 0100 0111.1000 = 47.816

12

Captulo 1

Sistemas numricos y cdigos

Note que primero se separan de cuatro bits hacia la izquierda y hacia la derecha del punto decimal y en caso de faltar dgitos, simplemente se completan los cuatro bits agregando ceros. Ejemplo 1.15. Convertir los siguientes nmeros hexadecimales a binario. a) 8FC416 = 1000 1111 1100 01002 b) FFFF16 = 1111 1111 1111 11112 c) BAC.3616 = 1011 1010 1100. 0011 01102

Para convertir nmeros fraccionarios decimales a la base octal o hexadecimal, simplemente se multiplica la fraccin por la base deseada y se separa el dgito entero hasta completar las cifras solicitadas. Esto se ilustrar con el siguiente ejemplo. Ejemplo 1.16. Convertir el nmero 0.47810 a octal y a hexadecimal con cuatro cifras significativas. 0.47810 = a octal 0.478 x 8 = 3.824, 0.824 x 8 = 6.592, 0.592 x 8 = 4.736, 0.736 x 8 = 5.888, se toma el 3 como el primer dgito se toma el 6 como el segundo dgito se toma el 4 como el tercer dgito se toma el 5 como el cuarto bit

esto da como resultado que 0.47810 = 0.36458 0.47810 = a hexadecimal 0.478 x 16 = 7.648, se toma el 7 como el primer dgito 0.648 x 16 = 10.368, se toma el 10 = A como el segundo dgito 0.368 x 16 = 5.888, se toma el 5 como el tercer dgito 0.588 x 16 = 14.208, se toma el 14 = E como el cuarto dgito el resultado ser que 0.47810 = 0.7A5F16

Conversin entre diferentes basesPara realizar la conversin de bases diferentes a las aqu presentadas, primero se convierte el nmero dado a la base 10 y de all se procede como se llev a cabo en las secciones previas. Ejemplo 1.17. Convertir a decimal, binario, octal y hexadecimal los siguientes nmeros a) 210.23 = 2x32 + 1x31 + 0x30 +2x3-1 = 21.6610 = 110101.1012 = 65.58 = 35.A16 b) 10324 = 1x43 +0x42 + 3x41 + 2x40 = 7810 = 10011102 = 1168 = 4E16

13

Captulo 1

Sistemas numricos y cdigos

c) 43105 = 4x53 + 3x52 + 1x51 + 0x50 = 58010 = 10010001002 = 11048 = 24416 Por otra parte, para convertir de una base A a una base B, se convierte primero a base 10 y posteriormente a la base deseada como se muestra en el siguiente ejemplo. Ejemplo 1.18. Convertir 246.57 a base 5 246.57 = 2x72 + 4x71 + 6x70 + 5x7-1 = 132.71410 a base 5 la parte entera por divisin sucesiva 132/5 = 26 con residuo de 2, bit menos significativo 26/5 = 5 con residuo de 1 5/5 = 1 con residuo de 0 1/5 = 0 con residuo de 1, bit ms significativo Se tiene que 13210 = 10125 La parte fraccionaria se multiplica por 5 0.714x5 = 3.57, se toma el 3 como el primer dgito despus del punto 0.57 x 5 = 2.85, se toma el 2 como el segundo dgito 0.85 x 5 = 4.25, se toma el 4 como el tercer dgito Se tiene que 0.71410 = 3245 por lo que 246.57 a base 5 = 132.71410 = 1012.3245

1.4. Operaciones Aritmticas14.1 Aritmtica Binaria

14

Captulo 1

Sistemas numricos y cdigos

1.4.2 Aritmtica OctalEn la tabla 1.6 aparecen las tablas para la suma y la multiplicacin para el sistema octal. Tabla 1.6. a) Tabla de suma octal; b) Tabla de multiplicacin octal

Ejemplo 1.19. Sumar los nmeros indicados a) 6458 + 3208

En este ejemplo, al sumar 7 +4, el resultado es 13 por lo que se pone el 3 y se le suma el 1 al 6 y se prosigue con la operacin

b) 32648 + 51278

15

Captulo 1

Sistemas numricos y cdigos

Tambin se puede realizar la operacin de la siguiente forma al utilizar la secuencia de nmeros en octal mostrada a continuacin 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 Por ejemplo, para realizar la operacin 7 + 4, colquese en el nmero 7 y avance cuatro lugares hacia adelante y obtendr el resultado de 13 que es el mismo que se obtuvo usando la tabla. Se coloca el 3 y se le suma 1 al 6 de la siguiente columna lo que da 6+1 = 7 y al sumarle 2, significa que hay que avanzar dos lugares hacia adelante en la secuencia obteniendo el nmero 11. Otra vez, se pone 1 en el resultado y se le suma 1 al 2 en la siguiente columna dando 1 + 2 = 3 y luego se suma 1 obteniendo el 4 al avanzar un lugar en la secuencia y finalmente se suman los dos ltimos nmeros 3 + 5 que significa que colocados en el 3, hay que recorrer 5 lugares hacia adelante para obtener el resultado de 10 con lo que se da por terminada la operacin. Este principio puede utilizarse para efectuar la resta de dos nmeros octales como se indica a continuacin Ejemplo 1.20. Restar 5128 3678Explicacin: En la primera columna se tiene 2-7 lo que se convierte en 12-7 que significa que estando en 12 hay que regresarse 7 lugares a la izquierda para obtener el resultado de 3. Ahora se le suma 1 al 6 del sustraendo de la segunda columna como se indica con el +1 con lo que la operacin se convierte de 1-7 a 11-7 que significa que hay que regresar 7 lugares a partir del 11 para llegar al 2 como resultado y de nuevo se le suma +1 al 3 para finalmente restar 5-4 para obtener 1 como resultado y as termina la operacin

Ejemplo 1.21. Multiplicar 3258 x 168. Para realizar la multiplicacin se utiliza la tabla de multiplicar y la de la suma para obtener el resultado deseado.Explicacin: Al multiplicar 6x5 se obtiene 36, se pone el 6 y se llevan 3; enseguida se multiplica 6x2 = 14 + 3 que se llevaba da 17, se pone el 7 y se lleva 1; por ltimo se multiplica 6x3 =22 + 1 que se llevada produce 23 y as se obtiene el primer nmero 2376. As se contina la multiplicacin utilizando la tabla de multiplicar nmeros octales

Ejemplo 1.22. Para realizar una divisin entre nmeros octales se utilizan las propiedades de la resta y la multiplicacin vistas anteriormente como se muestran en el siguiente ejemplo.

16

Captulo 1

Sistemas numricos y cdigos

1.4.3. Aritmtica HexadecimalAl igual que la aritmtica octal, la aritmtica hexadecimal tambin cuenta con tablas para realizar las operaciones de suma, resta, multiplicacin y divisin aunque son ms complejas pero se utilizan de forma similar a las tablas de octal. En la tabla 1.7 se muestran la tabla de suma y de multiplicacin hexadecimal. Tabla 1.7. a) Tabla de suma hexadecimal; b) tabla de multiplicacin hexadecimal + 0 1 2 3 4 5 6 7 8 9 A B C D E 0 0 1 2 3 4 5 6 7 8 9 A B C D E 1 1 2 3 4 5 6 7 8 9 A B C D E F 2 2 3 4 5 6 7 8 9 A B C D E F 10 3 3 4 5 6 7 8 9 A B C D E F 10 11 4 4 5 6 7 8 9 A B C D E F 10 11 12 5 5 6 7 8 9 A B C D E F 10 11 12 13 6 6 7 8 9 A B C D E F 10 11 12 13 14 7 7 8 9 A B C D E F 10 11 12 13 14 15 8 8 9 A B C D E F 10 11 12 13 14 15 16 9 9 A B C D E F 10 11 12 13 14 15 16 17 A A B C D E F 10 11 12 13 14 15 16 17 18 B B C D E F 10 11 12 13 14 15 16 17 18 19 C C D E F 10 11 12 13 14 15 16 17 18 19 1A D D E F 10 11 12 13 14 15 16 17 18 19 1A 1B E E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C F F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D (a) F F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E

17

Captulo 1 X 0 1 2 3 4 5 6 7 8 9 A B C D E F 6 7 0 0 6 7 C E 12 15 18 1C 1E 23 24 2A 2A 31 30 38 36 3F 3C 46 42 4D 48 54 4E 5B 54 62 5A 69 (b) A continuacin se efectuarn algunos ejemplos. Ejemplo 1.23. Calcular (5FC4)16 + (82AB)16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 2 3 4 5 6 7 8 9 A B C D E F 2 0 2 4 6 8 A C E 10 12 14 16 18 1A 1C 1E 3 0 3 6 9 C F 12 15 18 1B 1E 21 24 27 2A 2D 4 0 4 8 C 10 14 18 1C 20 24 28 2C 30 34 38 3C 5 0 5 A F 14 19 1E 23 28 2D 32 37 3C 41 46 4B 8 0 8 10 18 20 28 30 38 40 48 50 58 60 68 70 78

Sistemas numricos y cdigos 9 0 9 12 1B 24 2D 36 3F 48 51 5A 63 6C 75 7E 87 A 0 A 14 1E 28 32 3C 46 50 5A 64 6E 78 82 8C 96 B 0 B 16 21 2C 37 42 4D 58 63 6E 79 84 8F 9A A5 C 0 C 18 24 30 3C 48 54 60 6C 78 84 90 9C A8 B4 D 0 D 1A 27 34 41 4E 5B 68 75 82 8F 9C A9 B6 C3 E 0 E 1C 2A 38 46 54 62 70 7E 8C 9A A8 B6 C4 D2 F 0 F 1E 2D 3C 4B 5A 69 78 87 96 A5 B4 C3 D2 E1

Explicacin: Al sumar 4 + B, se encuentra en la tabla el resultado igual a F. En la siguiente columna se tiene que C + A en la tabla indica 16, por lo que se pone el 6 y se lleva 1 que se suma a F o al 2 y se suma obtenindose 12 y de nueva cuenta se pone el 2 y se lleva 1 que se suma al 5 o al 8 para obtener la suma de E de la ltima columna dando el resultado total de E26F.

Ejemplo 1.24. Restar (9FA2)16 (5BE1)16 . Para el caso de la resta, es ms fcil utilizar en lugar de la tabla de suma, la siguiente secuencia que indica que para hacer una sustraccin, es necesario desplazarse hacia la izquierda el valor del nmero restado. 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1FExplicacin: Se inicia restando 2-1 lo que da 1; enseguida se resta A E pero en este caso, la operacin se convierte en 1A E obteniendo como resultado al recorrer 14 lugares hacia la izquierda de 1, el valor de C pero se lleva 1 que se suma a B en la siguiente columna y se realiza la operacin F (B +1) obteniendo el resultado de 3 y se contina la resta realizando 9-5 resultando 4 el resultado y as se obtiene la sustraccin final de 43C1.

18

Captulo 1

Sistemas numricos y cdigos

Ejemplo 1.25. Multiplicar 4B816 x 5C16. En esta operacin se utilizan las tablas de multiplicar y de sumar para obtener el resultado final.Explicacin: Se multiplica Cx8 = 60, 0 y se llevan 6 Se multiplica CxB = 84 + 6 = A y se llevan 8 Se multiplica Cx4 = 30 + 8 = 38 y se obtiene 38A0 En seguida se multiplica 5x8 = 28, 8 y se llevan 2 Se multiplica 5xB = 37 + 2 = 39, 9 y se llevan 3 Se multiplica 5x4 = 14 + 3 = 17 y as se obtiene 1798. Se hace la suma y se obtiene el resultado final de 1B220

Ejemplo 1.26. Dividir 27FC16 / 3E16. Para realizar esta operacin se utiliza el mtodo de prueba y error, es decir, se busca un nmero en el cociente que al multiplicarlo por el divisor sea menor o igual que el nmero que pertenece al dividendo y tambin se utilizan las reglas de la resta al obtener el residuo.

1.5. Sistema de complemento a 1 y complemento a 2 de nmeros binariosEl complemento a 1 y el complemento a 2 de un nmero binario son importantes porque permiten la representacin de nmeros negativos. Las computadoras utilizan la aritmtica del complemento a 2 para trabajar con nmeros negativos.

1.5.1. Obtencin del complemento a 1 de un nmero binario,El complemento a 1 de un nmero binario se obtiene cambiando todos los 1s por 0s y todos los 0s por 1s como se muestra en los siguientes ejemplos Ejemplo 1.27. Obtenga el complemento a 1 de los siguientes nmeros binarios a) 10111010 = 01000101 b) 11100101 = 00011010 c) 01100010 = 10011101

19

Captulo 1

Sistemas numricos y cdigos

1.5.2. Obtencin del complemento a 2 de un nmero binario.El complemento a 2 de un nmero binario se obtiene sumando 1 al bit menos significativo del complemento a 1 como se ilustra en los siguientes ejemplos. Ejemplo 1.28. Obtener el complemento a 2 de los siguientes nmeros binarios

1.5.3. Nmeros con signoLos sistemas digitales deben de ser capaces de manejar nmeros positivos y negativos. Un nmero binario con signo queda determinado por su magnitud y signo. El signo indica si el nmero es positivo o negativo, y la magnitud es el valor del nmero. Existen tres formas para representar los nmeros con signo: Signo-magnitud, complemento a 1, complemento a 2.

El bit del signo.El bit ms a la izquierda en un nmero binario con signo se le llama bit del signo, que indica si el nmero es positivo o negativo.

1.5.3.1. Sistema signo-magnitudEn este formato la representacin de los nmeros con signo se realiza considerando que el bit ms a la izquierda es el bit del signo y los restantes bits indican la magnitud del nmero, usualmente se utilizan 8 bits = 1 byte que es el tamao de una palabra utilizada en una computadora. En el ejemplo siguiente se ilustra este procedimiento. Ejemplo 1.29. Representar el nmero +45 y 45 en el sistema signo-magnitud

El cero significa signo + El uno significa signo

20

Captulo 1

Sistemas numricos y cdigos

1.5.3.2. Sistema del complemento a 1Los nmeros positivos en el sistema del complemento a 1 se representan de la misma forma que los nmeros positivos en el formato signo-magnitud. Sin embargo los nmeros negativos son el complemento a 1 del correspondiente nmero positivo. Ejemplo 1.30. Usando ocho bits representar el nmero decimal 45 utilizando el sistema de complemento a 1 +45 = 00101101 Complemento a 1 =11010010 = -45

1.5.3.3. Sistema del complemento a 2Los nmeros positivos en el sistema del complemento a 2 se representan de la misma forma que en los sistemas de complemento a 1 y de signo-magnitud. Los nmeros negativos son el complemento a 2 del correspondiente nmero positivo. Ejemplo 1.31. Usando ocho bits representar el nmero decimal -45 utilizando el sistema de complemento a 2. +45 = 00101101 Complemento a 1 11010010 + 1 Complemento a 2 11010011 = - 45

1.5.3.4. Determinacin de los nmeros con signo.Signo-magnitud. Los valores decimales de los nmeros positivos y negativos en el sistema de signo-magnitud se determinan sumando los pesos de todas las posiciones de los bits de magnitud, cuando son 1s, e ignorando aquellas posiciones en las que haya ceros. El signo se determina por medio del examen del bit del signo. En el ejemplo siguiente se ilustra este proceso: Ejemplo 1.32. Determinar el valor decimal del nmero binario con signo 11110101 Como el bit de signo es 1, entonces el nmero es negativo La magnitud ser 1x26 + 1x25 + 1x24 + 1x22 + 1x20 = 64 + 32 + 16 + 1 = 113 El nmero indicado ser = -113

21

Captulo 1

Sistemas numricos y cdigos

Sistema complemento a 1. Los valores decimales de los nmeros positivos y negativos en el sistema de complemento a 1 se determinan sumando los pesos de todas las posiciones de los bits de magnitud, cuando son unos, e ignorando aquellas posiciones en las que haya ceros. Los valores decimales de los nmeros negativos se determinan asignando el valor negativo al peso del bit del signo, y sumando todos los pesos donde haya unos, y aadiendo luego uno al resultado. Ejemplo 1.33. Determinar el valor de los nmeros binarios con signo expresados en complemento a 1 a) 00011011 b) 11101001 a) Los bits y sus pesos segn las potencias de dos para el nmero positivo son: -27 26 25 24 23 22 21 20 0 0 0 1 1 0 1 1 = 16 + 8 + 2 + 1 = +27 b) Los bits y los pesos segn las potencias de dos para el nmero negativo son los siguientes -27 26 25 24 23 22 21 20 1 1 1 0 1 0 0 1 = -128 + 64 + 32 + 8 + 1 = -23 Sumando 1 al resultado se obtiene 23 + 1 = -22

Complemento a 2. Los valores decimales de los nmeros positivos y negativos en el sistema de complemento a 2 se determinan sumando los pesos de todas las posiciones de bits donde haya unos e ignorando aquellas posiciones donde haya ceros. El peso del bit de signo en un nmero negativo viene determinado por su valor negativo. Ejemplo 1.34. Determinar los valores decimales de los nmeros binarios con signo expresados en complemento a 2 a) 01010111 b) 10101001

a) Los bits y sus pesos segn las potencias de dos para el nmero positivo son los siguientes: -27 26 25 24 23 22 21 20 0 1 0 1 0 1 1 1 = 64 + 16 + 4 + 2 + 1 = + 87 b) Los bits y sus pesos segn las potencias de dos para el nmero negativo son los siguientes: -27 26 25 24 23 22 21 20 1 0 1 0 1 0 0 1 = -128 +32 + 8 + 1 = -87

22

Captulo 1

Sistemas numricos y cdigos

1.5.3.5. Rango de representacin de los nmeros con signo.En los ejemplos anteriores se han utilizado nmeros de 8 bits, puesto que la agrupacin de 8 bits es un estndar en la mayora de las computadoras, y recibe el nombre de Byte 1 Byte = 8 bits Con 8 bits se pueden representar hasta 256 nmeros diferentes. Combinando 2 Bytes se obtienen 16 bits y se pueden representar 65 536 (64K) nmeros diferentes. Combinando 4 Bytes se obtienen 32 bits y se pueden representar 4.295 X 109 nmeros diferentes y as sucesivamente. Esto se puede expresar mediante la frmula siguiente: No. total de combinaciones = 2n Para los nmeros con signo en complemento a 2, el rango de valores para nmeros de n bits es: No. total de combinaciones = -(2n-1) a + (2n-1 1) Habiendo en cada caso un bit de signo y n-1 bits de magnitud. Ejemplo 1.35. Cuntos nmeros pueden representarse en complemento a 2? con a) 4 bits, b) 8bits a) Solucin -(24-1) hasta (24-1 1) = - 23 hasta 23 1 = -8 hasta + 7 b) Solucin -(28-1) hasta (28-1 1) = - 27 hasta 27 1 = - 32768 hasta +32767

1.6. Operaciones aritmticas de nmeros con signo en el sistema de complemento a 2.Se utiliza el sistema de complemento a 2 porque es el sistema de representacin de nmeros con signo mayormente utilizado en equipo de cmputo y en los sistemas basados en microprocesadores.

1.6.1 SumaLos dos nmeros en una suma se denominan sumandos. El resultado es la suma. Cuando se suman dos nmeros binarios con signo pueden producirse cuatro casos: 1. Ambos nmeros son positivos. 2. El nmero positivo es mayor que el negativo en valor absoluto. 3. El nmero negativo es mayor que el positivo en valor absoluto. 4. Ambos nmeros son negativos.

23

Captulo 1 Caso 1. Ambos nmeros son positivos:

Sistemas numricos y cdigos

La suma es positiva y, por tanto, es un nmero binario real (no complementado). Caso 2. El nmero positivo es mayor que el negativo en valor absoluto. Sumar 15 + (-8) = 9 00001111 = 15 y el nmero 8 en complemento a 2 es el siguiente

Caso 3. El nmero negativo es mayor que el nmero positivo en valor absoluto. Sumar 18 + (-24) = -6 Primero el 18 = 00010010 Segundo el +24 = 00011000 El complemento a 1 de 24 es 11100111 Se le suma + 1 El complemento a 2 ser 11101000 Entonces la suma ser de la siguiente manera: 00010010 + 11101000 11111010 = -128 +64 +32 +16 +8 +2 = - 6 Caso 4. Ambos nmeros son negativos. Sumar 4 + (-9) = -13 Se convierten a complemento a dos cada nmero y luego se suman + 4 = 00000100 +9 = 00001001 complemento a 1 11111011 11110110 se suma 1 + 1 + 1 complemento a 2 11111100 11110111 la suma ser Acarreo que se descarta 11111100 = - 4 +11110111 = - 9 1 11110011 = -13 = -128+64+32+16+2+1 = - 13

24

Captulo 1

Sistemas numricos y cdigos

1.6.2. Condicin de sobreflujo (overflow).Ocurre cuando se suman dos nmeros positivos o negativos y el resultado de la suma excede el nmero de bits de los dos nmeros. Por ejemplo, Sumar 125 + 73 = 198 125 = 01111101 + 73 = 01001001 11000110 Signo incorrecto Magnitud incorrecta

1.6.3. Sustraccin o resta.La resta es un caso especial de la suma: El signo de un nmero binario positivo o negativo se cambia calculando su complemento a 2. Para restar dos nmeros con signo se calcula el complemento a 2 del sustraendo y se suman descartando cualquier bit de acarreo final. Ejemplo 1.36. Realizar las siguientes restas de nmeros con signo a) 00001001 00000100 b) 00001110 11110110 c) 11100110 00010010 d) 10001010 11100100 a) se tiene 9 4 = 9 + (-4) = +5 Por ejemplo + 9 = 00001001 + 4 = 00000100 Complemento a 1 de +4 11111011 Se suma 1 + 1 Complemento a 2 de + 4 11111100 La resta ser 00001001 +11111101 1 00000101 diferencia (+5)acarreo que se descarta

25

Captulo 1 b) En este caso se tiene 12 (-10) = 12 + 10 = 22 +12 = 00001100 +10 = 00001010 complemento a 2 de +10 00001010

Sistemas numricos y cdigos

La resta ser 00001100 +00001010 00010110 diferencia (+22)

c) En este caso, -26 (+18) = -44 complemento a 1 sumando 1 complemento a 2 Complemento a 1 Sumando 1 Complemento a 2 +26 = 00011010 11100101 + 1 11100110 +18 = 00010010 11101101 + 1 11101110 La resta ser 11100110 +11101110 111010100 diferencia (-44)Acarreo que se descarta

d) En este caso, -118 (-28) = -118 + 28 = -90 -118 = 10001010 complemento a 2 de +28 = + 00011100 resultado de la resta = 10100110 diferencia (-90)

1.6.4. MultiplicacinLos nmeros en una multiplicacin se denominan multiplicando, multiplicador y producto lo que se ilustra en la siguiente multiplicacin decimal: 24 multiplicando x 5 multiplicador 120 producto La operacin de multiplicacin en muchas computadoras se realiza utilizando la suma a travs de los mtodos de suma directa y productos parciales. En el mtodo de suma directa, se suma el multiplicando un nmero de veces igual al multiplicador pero su desventaja es que es demasiado largo cuando el multiplicador es grande. El mtodo de productos parciales es quiz el ms comn, ya que es la forma de multiplicar manualmente. El multiplicando se multiplica por cada dgito del multiplicador, empezando por el menos significativo, y al resultado de la multiplicacin por un dgito del multiplicador se le llama producto parcial y cuando se han obtenido todos los productos parciales se suman para obtener el producto final.

26

Captulo 1

Sistemas numricos y cdigos

El signo del producto depende de los signos del multiplicando y el multiplicador, de acuerdo con las reglas siguientes: o Si tienen el mismo signo, el producto es positivo. o Si son de signo diferente, el producto es negativo. Ejemplo 1.37. Utilizando el mtodo de suma directa. Multiplicar los nmeros binarios con signo siguientes: 01001110 x 00000100 Solucin: Es necesario sumar cuatro veces el primer nmero porque el multiplicador es igual a cuatro. 01001110 primera vez + 01001110 segunda vez 10011100 suma parcial + 01001110 tercera vez 11101010 suma parcial + 01001110 100111000 cuarta vez producto final

Ejemplo 1.38. Utilizando el mtodo de los productos parciales. Los pasos bsicos del procedimiento son los siguientes: Paso 1. Determinar si los signos del multiplicando y el multiplicador son iguales o diferentes para determinar el signo del producto. Paso 2. Poner cualquier nmero negativo en formato real (no complementado). Debido a que la mayora de las computadoras almacenan los nmeros negativos en complemento a 2, es necesaria la operacin de complemento a 2 para obtener el nmero negativo en formato real. Paso 3. Empezar por el bit del multiplicador menos significativo y generar los productos parciales. Cuando el bit del multiplicador es uno, el producto parcial es igual al multiplicando y cuando es cero, el producto parcial es cero. Cada producto parcial debe desplazarse un bit a la izquierda. Paso 4. Sumar cada producto parcial a la suma de los productos parciales anteriores para obtener el producto final. Paso 5. Si el bit de signo determinado en el paso 1 es negativo, calcular el complemento a 2 del producto. Si el bit de signo es positivo, dejar el producto en forma real. Aadir el bit de signo al producto.

Multiplicar los nmeros binarios con signo: 01010011 x 11000101 Solucin Paso 1 . El bit de signo ser negativo (1) porque el bit del multiplicando es 0 y el del multiplicador es 1. Paso 2. Calcular el complemento a 2 del multiplicador para ponerlo en formato real 11000101 00111010 + 1 = 00111011 complemento a 2 27

Captulo 1

Sistemas numricos y cdigos

Paso 3 y 4. Realizar el procedimiento de multiplicacin como sigue: 01010011 x 00111011 1010011 + 1010011 11111001 + 0000000 11111001 +1010011 1110010001 +1010011 100011000001 +1010011 100110010001 multiplicando multiplicador Primer producto parcial Segundo producto parcial Suma del primero y el segundo Tercer producto parcial Suma Cuarto producto parcial Suma Quinto producto parcial Suma Sexto producto parcial Producto final

Paso 5. Ya que el signo del producto es 1, es necesario calcular el complemento a 2 del producto final 100110010001 011001101110 + 1 = 011001101111 complemento a 2 y por ltimo se aade el bit de signo 1 011001101111

1.6.5. DivisinLos nmeros en una divisin son el dividendo, el divisor y el cociente como se ilustra en la siguiente divisin decimal: dividendo = cociente divisor 32 = 4 8

En las computadoras la operacin de la divisin se realiza utilizando la resta y ya que esta se puede hacer con un sumador, la divisin se puede hacer con un sumador. El resultado de una divisin es el cociente: el cociente es el nmero de veces que el divisor estar contenido en el dividendo. Esto significa que el divisor puede restarse del dividendo un nmero de veces igual al cociente, tal como se muestra en el siguiente ejemplo: 24 entre 8 24 Dividendo - 8 Primera resta del divisor 16 Primer resto parcial -8 Segunda resta del divisor 8 Segundo resto parcial -8 Tercera resta del divisor 0 En este ejemplo, el divisor se ha restado del dividendo tres veces antes de obtener residuo de cero, por tanto el cociente es 3.

28

Captulo 1

Sistemas numricos y cdigos

El signo del cociente depende de los signos del dividendo y divisor de acuerdo con las siguientes reglas: o Si tienen el mismo signo, el cociente es positivo. o Si son de signo diferente, el cociente es negativo. Cuando se dividen dos nmeros binarios, ambos nmeros deben estar en formato real (no complementado), los pasos bsicos en la divisin son los siguientes: Paso1. Determinar si los signos del dividendo y divisor son iguales o diferentes para determinar el signo del cociente. Iniciar con el cociente a cero, es decir, 00000000. Paso 2. Restar el divisor del dividendo utilizando la suma en complemento a 2, para obtener el primer resto parcial, y sumar uno al cociente. Si este resto parcial es positivo, ir al paso 3. Si el resto es cero o negativo, la divisin se ha terminado. Paso 3. Restar el divisor del resto parcial y sumar 1 al cociente. Si el resultado es positivo, repetir para el siguiente resto parcial. Si el resultado es cero o negativo, la divisin se ha terminado. Continuar restando el divisor del dividendo y los restos parciales hasta que el resultado sea cero o negativo. Contar el nmero de veces que se ha restado el divisor y se obtendr el cociente. Ejemplo 1.39. Dividir 011001000 entre 00011001. Solucin Paso 1. El signo de ambos nmeros es positivo por lo tanto el cociente ser positivo. Iniciar con el cociente cero 00000000 Paso 2. Restar el divisor del dividendo utilizando la suma en complemento a 2 (no tomar en cuenta los acarreos finales) 00011001 ---- complemento a 1 = 11100110 + 1 = 11100111 = complemento a 2 01100100 Dividendo +11100111 Complemento a 2 del divisor 01001011 Primer resto parcial positivo sumar 1 al cociente 00000000 + 1 = 00000001 Paso 3. Restar el divisor del primer resto parcial utilizando la suma en complemento a 2. 01001011 + 11100111 00110010 Primer resto parcial positivo Complemento a 2 del divisor Segundo resto parcial positivo

29

Captulo 1

Sistemas numricos y cdigos

Sumar 1 al cociente: 00000001 + 1 = 00000010 Paso 4. Restar el divisor del segundo resto parcial utilizando la suma en complemento a 2. 00110010 Segundo resto parcial positivo + 11100111 Complemento a 2 del divisor 00011001 Tercer resto parcial positivo Sumar 1 al cociente: 00000010 + 1 = 00000011 Paso 5. Restar el divisor del tercer resto parcial utilizando la suma en complemento a 2. 00011001 + 11100111 00000000 Tercer resto parcial positivo Complemento a 2 del divisor Resto cero

Sumar 1 al cociente: 00000011 + 1 = 00000100 (cociente final) . El proceso se ha terminado.

1.7. CdigosCuando se representan nmeros, letras, palabras, informacin por medio de un grupo especial de smbolos, se dice que se encuentran codificados y al grupo de smbolos se le llama cdigo. Por ejemplo, el cdigo Morse, las luces de un semforo son un cdigo ya que el color rojo significa no continuar, el color amarillo es preventivo y el color verde permite continuar la marcha. As como este sencillo cdigo, existen otros igual de simples utilizados en el futbol, beisbol, bsquetbol, futbol americano que nos permiten conocer lo que est sucediendo en cada juego. Los cdigos son utilizados porque las computadoras trabajan con cadenas de nmeros binarios de unos y ceros pero el ser humano trabaja con nmeros decimales que se necesitan convertir a binario a travs de un mecanismo o dispositivo (cdigo) para realizar alguna operacin indicada, adems de que sera una labor muy tediosa y con alta probabilidad de equivocarse si el hombre los utilizara. La utilizacin de cdigos binarios se debe a que la mayora del equipo de cmputo utiliza circuitos lgicos que aceptan solo seales de dos valores (binarios), las seales de entrada y salida generalmente usan los nmeros decimales los que deben de ser codificados en trminos de seales binarias Existen diversos cdigos numricos utilizados en la electrnica digital como los que se muestran en la tabla 1.8.

30

Captulo 1

Sistemas numricos y cdigos

Tabla 1.8. Diversos cdigos numricos. Dgito Cdigo Cdigo Cdigo decimal binario BCD 6-3-1-1 equivalente (8421)0 1 2 3 4 5 6 7 8 9 0 1 10 11 100 101 110 111 1000 1001 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0000 0001 0011 0100 0101 0111 1000 1001 1011 1100

Cdigo exceso-30011 0100 0101 0110 0111 1000 1001 1010 1011 1100

Cdigo 2 de 500011 00101 00110 01001 01010 01100 10001 10010 10100 11000

Cdigo Gray0000 0001 0011 0010 0110 0111 0101 0100 1100 1101

Los cdigos BCD y el 6-3-1-1, son cdigos ponderados, es decir, un nmero de cuatro bits formado por unos y ceros en el cdigo BCD, significa que el bit que ocupa la primera posicin se multiplica por uno, el que ocupa la segunda posicin se multiplica por dos, el que ocupa la tercera posicin se multiplica por cuatro y el que ocupa la cuarta posicin se multiplica por ocho, de all los nmeros (8421) que se muestran en la columna del cdigo BCD. De igual manera ocurre para el cdigo 6-3-1-1. A continuacin se utilizarn algunos de estos cdigos para realizar algunas operaciones.

1.7.1. El Cdigo BCD (Binary Code Decimal)El Cdigo Decimal Binario (BCD) es una forma de expresar cada uno de los dgitos decimales con un cdigo binario ponderado, es decir, cada dgito del 0 al 9 se representa por cuatro bits los cuales se muestran en la siguiente tabla.Dgito Decimal BCD

0 0000

1 0001

2 0010

3 0011

4 0100

5 0101

6 0110

7 0111

8 1000

9 1001

Los nmeros que no estn permitidos en el cdigo BCD de manera directa son: 1010, 1011, 1100, 1101, 1110, y 1111. El hecho de que slo los nmeros de 0 al 9 se representan en cdigo BCD no significa que los nmeros mayores a 9 no se puedan representar en este cdigo. Para expresar cualquier nmero decimal mayor de 9 en BCD, es necesario representar cada nmero con cuatro bits como se muestra en los ejemplos siguientes: Ejemplo 1.40. Representar los siguientes nmeros decimales en BCD a) 45 = 0100 0101 b) 583 = 0101 1000 0011 c) 9673 = 1001 0110 0111 0011

31

Captulo 1

Sistemas numricos y cdigos

Por otra parte, es igualmente de sencillo determinar un nmero decimal a partir del cdigo BCD, solo es necesario agrupar los nmeros del cdigo en grupos de cuatro bits. En los siguientes ejemplos se ilustra este procedimiento: Ejemplo 1.41. Convertir a decimal los siguientes cdigos en BCD a) 10000110 = 1000 0110 = 86 b) 001101101001 = 0011 0110 1001 = 369 c) 1000011001110110 = 1000 0110 0111 0110 = 8 6 7 6 Tambin con el cdigo BCD se pueden realizar algunas operaciones aritmticas como se ilustra a continuacin.

Suma en BCDDos nmeros en BCD se suman de la siguiente forma: Paso 1. Sumar los dos nmeros BCD utilizando las reglas de la suma binaria. Paso 2. Si una suma de 4 bits es igual o menor que 9, es un nmero BCD vlido. Paso 3. Si una suma de 4 bits es mayor que 9, o si se genera un acarreo en el grupo de 4 bits, el resultado no es vlido. En este caso, se suma 6 (0110) al grupo de 4 bits para saltar as los seis estados no vlidos y pasar al cdigo 8421. Si se genera un acarreo al sumar 6, este se suma al grupo de cuatro bits siguiente. Ejemplo 1.42. Sumar los siguientes nmeros en BCD: a) 0011 + 0101 b) 10000110 + 00010011 c) 00100011 + 00010101 d) 010001010000 + 010000010111 Solucin a) 0011 + 0101 1000 c) 3 +5 8 23 +16 39 b) 10000100 + 00010001 10010101 d) 84 + 11 95 451 +317 768

00100011 +00010110 00111001

010001010001 + 001100010111 011101101000

Ejemplo 1.43. Sumar los siguientes nmeros en BCD a) b) c) d) 1001 + 0100 1001 + 1001 00010110 + 00010101 01100111 + 01010011

32

Captulo 1 Solucin a) 1001 + 0100 1101 nmero BCD no vlido (mayor de 9) + 0110 se suma 6 0001 0011 = 13 en BCD b) 1001 + 1001 10010 No vlido debido al acarreo 0110 se suma 6 0001 1000 = 18 en BCD

Sistemas numricos y cdigos

c)

0001 0110 + 0001 0101 0010 1011 el grupo de la derecha no es vlido porque es mayor de 9, elgrupo de la izquierda si es vlido.

0110 Se suma 6 al grupo de la derecha y el acarreo al siguiente nmero 0011 0001 = 31 en BCD d) 0110 +0101 1011 +0110 0001 0010 0111 0011 1010 Ambos grupos no son vlidos (>9) 0110 Se suma 6 a ambos grupos 0000 = 120 Nmero BCD vlido

1.7.2. Cdigo Gray.El cdigo Gray es un cdigo sin pesos (no ponderado) y no aritmtico, es decir, no existen pesos (valores) especficos asignados a las posiciones de los bits. Su caracterstica ms importante es que slo vara un bit de un cdigo al siguiente como se indica en la tabla 1.8. Esta caracterstica es de verdadera importancia en aplicaciones donde se desea codificar la posicin de un eje circular y evitar los errores que se produciran si se utilizara el cdigo binario.

33

Captulo 1

Sistemas numricos y cdigos

Conversin de cdigo binario a cdigo Gray Los siguientes ejemplos ilustran la conversin de un nmero binario a cdigo Gray Ejemplo 1.44. Convertir los nmeros binarios 11101 y 11010 a cdigo Gray

Conversin de cdigo Gray a cdigo binario Los siguientes ejemplos ilustran el procedimiento de conversin de Gray a binario Ejemplo 1.45. Convertir los nmeros en cdigo Gray 10101 y 11001 a binario

1.7.3. El cdigo exceso 3 (X3)El cdigo exceso 3 se obtiene al sumar tres a cada nmero del cdigo BCD. Por ejemplo, el cdigo X3 para nueve es 1001 + 0011 = 1100. La ventaja principal del cdigo X3 con respecto al BCD es que se genera automticamente el bit de acarreo correcto cuando se suman dos dgitos X3 al usar un sumador binario de cuatro bits. Esto se debe a que AX3 + BX3 = AX3 + 3 + BX3 + 3 Que incluye el trmino de correccin +6 necesario para la generacin del acarreo en la suma BCD.

34

Captulo 1

Sistemas numricos y cdigos

1.7.4. Cdigos alfanumricos.Por otra parte, muchas de las aplicaciones de las computadoras digitales requieren la manipulacin de datos entre ella y los dispositivos de entrada/salida que constan no slo de nmeros, sino tambin de letras. Adems, el mismo cdigo binario debe representar nmeros decimales y algunos otros caracteres especiales. Estos cdigos reciben el nombre de alfanumricos y uno de los ms utilizados es el Cdigo ASCII o Cdigo Americano Estndar para Intercambio de Informacin (American Standar Code for Interchange Information) el cual se muestra parte en la tabla 1.9. Tabla 1.9. Cdigo ASCII. b6b5b4 (columna) Fila 000 001 010 b3b2b1b0 (hex) 0 1 2 0000 0 NUL DLE SP 0001 1 SOH DC1 ! 0010 2 STX DC2 0011 3 ETX DC3 # 0100 4 EOT DC4 $ 0101 5 ENQ NAK % 0110 6 ACK SYN & 0111 7 BEL ETB 1000 8 BS CAN ( 1001 9 HT EM ) 1010 A LF SUB * 1011 B VT ESC + 1100 C FF FS , 1101 D CR GS 1110 E SO RS . 1111 F SI US /

011 3 0 1 2 3 4 5 6 7 8 9 : : < = > ?

100 4 @ A B C D E F G H I J K L M N O

101 5 P Q R S T U V W X Y Z [ \ ] ^ _

110 6 ` a b c d e f g h i j k l m n o

111 7 p q r s t u v w x y z { | } ~ DEL

35

Captulo 1 Cdigos de control

Sistemas numricos y cdigos

Ejemplo 1.46. Escribir el cdigo ASCII para la palabra bit. b 110 0010 i 110 1001 t 111 0100

Existen otro tipo de caracteres como las letras griegas, letras con acento, smbolos matemticos que se representan en el cdigo ASCII extendido el cual se anexa en al apndice A. Estos cdigos sern utilizados posteriormente en el diseo de circuitos digitales llamados precisamente convertidores de cdigos.

1.7.5. Cdigos de deteccin de errores.En todos los sistemas digitales ocasionalmente ocurre un error o sea un valor incorrecto o alguna variacin del mismo en uno o ms bits que puede ocasionarse por una falla fsica de un dispositivo de forma temporal o permanente. La informacin se codifica mediante cdigos especiales que permiten la deteccin e incluso la correccin de ciertos tipos de errores. Algunos tipos de cdigos tiles en la deteccin de errores son el 2 de 5 donde dos bits son igual a uno y tres bits estn en cero en cada palabra del cdigo como se muestra en la tabla 1.8, la deteccin de un error se realiza contando el nmero de unos de una palabra de cdigo, si no son exactamente dos unos, existe un error. Otro cdigo muy utilizado es el cdigo de deteccin par o impar el que consiste en agregar un bit extra de paridad para indicar si la paridad es par o es impar al transmitir informacin. En la tabla 1.10 se muestra este cdigo.

36

Captulo 1

Sistemas numricos y cdigos

Tabla 1.10. Uso del bit de paridad para detectar errores.Bits de informacin Cdigo paridad par Cdigo paridad impar

000 001 010 011 100 101 110 111

000 001 010 011 100 101 110 111

0 1 1 0 1 0 0 1

000 001 010 011 100 101 110 111

1 0 0 1 0 1 1 0

La desventaja del cdigo con un bit de paridad es que no detectan errores en dos bits, porque al cambiar dos bits no se afecta la paridad. Su ventaja sera que si pueden detectar errores en cualquier nmero impar de bits. Por ltimo se mencionar que para detectar errores mltiples existe otro cdigo llamado de Hamming que son como una extensin de los cdigos de paridad simple, en el sentido de que se utilizan varios bits de paridad o de verificacin. Cada bit de verificacin se define sobre un subconjunto de los bits de informacin de una palabra de forma tal que los subconjuntos se traslapan de modo que cada bit de informacin est al menos en dos subconjuntos. En al apndice A se muestra este cdigo.

1.8. Problemas.1.1. Mencione la diferencia entre una magnitud analgica y una magnitud digital. 1.2. De un ejemplo de un sistema analgico, un sistema digital y de un sistema que combine a ambos. 1.3. Qu significa bit? 1.4. Por qu se necesita realizar una conversin analgica-digital?

1.5. Cules son las ventajas de los sistemas digitales sobre los sistemas analgicos? 1.6. Analice las ventajas y desventajas que se tendran al cambiar un velocmetro analgico de un automvil, a uno digital.

1.7. Por qu la grabacin de una cinta digital tiene mejor calidad de sonido que una grabacin analgica? 1.8. Hasta qu nmero se puede contar con cinco dgitos decimales?

37

Captulo 1

Sistemas numricos y cdigos

1.9. Convertir a decimal los siguientes nmeros binarios: a) 11 b) 110 c) 1011 d) 110101 e) 1100011 f) 100011101 g) 1011.1101 h) 1111.1111 i) 10000.0001 j) 1101011.0010101 1.10. Cuntos bits se necesitan para representar en binario los siguientes nmeros decimales? a) 46 b) 78 c) 115 d) 345 e) 1024 1.11. Cuntos bits se necesitan para contar hasta 511? 1.12. Convertir a binario cada uno de los siguiente nmeros decimales: a) 23 b) 158 c) 53.27 d) 0.947 e) 225.13 1.13. Convertir a decimal los siguiente nmeros octales: a) 358 b) 1538 c) 178 d) 77568 e) 20428 1.14. Convertir a octal los siguientes nmeros decimales: a) 17.64 b) 243 c) 765 d) 2589 e) 4095 1.15. Convertir a binario los siguientes nmeros octales: a) 73.58 b) 7778 c) 54618 d) 0.45368 e) 14.078 e) 0.11

1.16. Convertir a octal los siguientes nmeros binarios: a) 110 b) 101101101 c) 11101.1101 d) 10001110111 1.17. Efecte las operaciones indicadas con los nmeros octales: a) 3458 + 2678 b) 5728 1238 c) 2348 x 158 678 / 238 1.18. Convertir a decimal los siguientes nmeros hexadecimales: a) FFFF16 b) ABC516 c) 98716 d) 3AE.CD 16 e) D1816 1.19. Convertir a hexadecimal los siguientes nmeros decimales: a) 25.87 b) 3579 c) 0.7598 d) 9875 e) 324 1.20. Realice las operaciones indicadas con nmeros hexadecimales: a) 3CF216 + 4A16 b) 5FEC16 ABC16 c) 7DFA16 x 1E16 1.21. Convertir a hexadecimal los siguientes nmeros binarios: a) 1101 b) 11011011 c) 110.10111 d) 11000010101101 1.22. Escriba los primeros 10 dgitos en base 3, base 5, base 7: 1.23. Convertir los siguientes nmeros a la base indicada: a) 35 en base 6 a base 9 b) 342 en base 5 a base 3 c) 2321 en base 4 a base 7

38

Captulo 1

Sistemas numricos y cdigos

1.24. Efecte las operaciones de suma, resta, multiplicacin y divisin con las parejas de nmeros binarios mostradas: a) 10110 y 1011 b) 100111 y 1110 c) 1110.11 y 11.01 1.25. Determine el complemento a 1 de los siguientes nmeros binarios: a) 10110010 b) 011011101 c) 10001111011010 1.26. Determine el complemento a 2 de los nmeros binarios mostrados: a) 1101110 b) 011101110 c) 1011011011100 1.27. Expresar en formato binario de 8 bits los siguientes nmeros decimales en los sistemas signo-magnitud, complemento a 1, y complemento a 2: a) +21 b) 50 c) + 118 d) 99 1.28. Realizar las operaciones indicadas utilizando el sistema de complemento a 2: a) 10011011 + 00011001 b) 10100001 10010001 c) 00001100 x 10010001 1.29. Representar los nmeros decimales mostrados en el cdigo BCD: a) 89 b) 342 c) 769 d) 158 e) 1256 1.30. Convierta a decimal los nmeros BCD mostrados: a) 10000100 b) 100110000010 c) 0110100101111000 1.31. Realice las operaciones en BCD con los siguientes nmeros: a) 0100 + 1001 b) 010100101000 + 100010010110 c) 00101000 + 0110 1.32. Convertir a cdigo Gray los nmeros binarios mostrados: a) 1000111 b) 1100110011 c) 11111000111 d) 00110110 1.33. Convierta a binario los nmeros en cdigo Gray mostrados: a) 1000111011 b) 1000111110101 c) 001101 d) 00101011101 1.34. Escriba en cdigo ASCII la palabra computadora digital: 1.35. Aadir el bit de paridad correcto a los siguientes bytes de informacin: a) 10011001 b) 11100110 c) 0110111011100010 1.36. Determinar cules de los siguientes cdigos con paridad par son errneos a) 100110011 b) 001101111 c) 0101011100111

39