Universidad Contenido

Rey Juan Carlos
Ingeniería de
Telecomunicación
1. Sistemas de numeración
1.1. Sistemas de numeración
1.2. Conversión entre bases

Electró
Electrónica Digital I
2. Códigos binarios
2.1. Binario puro
2.2. Magnitud y signo
Sistemas de numeració
numeración y codificació
codificación 2.3. Complemento a 2
2.4. Complemento a 1
Ingeniería de Telecomunicación 2.5. Exceso a M
3. Códigos BCD
Curso 2006-2007
4. Códigos progresivos
5. Aritmética binaria

Sistemas de numeración y codificación Electrónica Digital I 1 Sistemas de numeración y codificación Electrónica Digital I 2

1. Sistemas de numeració
numeración Sistemas de numeració
numeración: Conceptos bá
básicos
Sistema posicional : cada dígito tiene un valor distinto dependiendo de su
Sistema de numeración: conjunto de reglas y signos para representar los
posición.
números.
Así, un número N en base r se representa de la siguiente manera:
Un sistema de representación numérica es un sistema consistente en: (N)r = (ap-1 ap-2 ... a1 a0 , a-1 a-2 ... a-q)r ó
un conjunto ordenado de símbolos (dígitos o cifras). N⎣r = ap-1 ap-2 ... a1 a0 , a-1 a-2 ... a-q ⎣r ó
un conjunto de reglas bien definidas para las operaciones aritméticas de N = ap-1 ap-2 ... a1 a0 , a-1 a-2 ... a-q si se sobreentiende que está en base r
suma, resta, multiplicación, división, etc. Donde:
Números : secuencia de dígitos que pueden tener parte entera y parte ai son los dígitos,
fraccionaria, ambas separadas por una coma. p es el número de dígitos enteros,
q es el número de dígitos fraccionarios,
(N)r = [(parte entera) , (parte fraccionaria)]r ap-1 es el dígito más significativo,
a-q es el dígito menos significativo.
Base (r) : nº en que se fundamenta el sistema de numeración. Especifica el nº
de dígitos o cardinal de dicho conjunto ordenado. Al ser N un número en base r, sus dígitos deben situarse entre 0 y r-1, es decir:
0 ≤ a i ≤ r − 1, ∀i con - q ≤ i ≤ p − 1

Sistemas de numeración y codificación Electrónica Digital I 3 Sistemas de numeración y codificación Electrónica Digital I 4

Sistemas de numeració
numeración: Conceptos bá
básicos Sistemas de numeració
numeración
Cada dígito del número es más significativo que el que se encuentra a su
derecha, siendo el valor del número la suma acumulada de los productos de
cada dígito por su peso: p -1
N= ∑a ⋅r
i= −q
i
i
r=10 DECIMAL 0,1,2,3,4,5,6,7,8,9

Ejemplo: (N)r = (a p -1 a n- 2 ... a1 a 0 , a -1 a - 2 ...a - q )r
(1283)10 = (a 3 = 1 a 2 = 2 a1 = 8 a 0 = 3, a -i = 0)10 = r=2 BINARIO 0,1 BIT
= 1× 10 3 + 2 × 10 2 + 8 × 101 + 3 × 10 0 = 1× 1000 + 2 × 100 + 8 × 10 + 3 × 1

r=8 OCTAL 0,1,2,3,4,5,6,7

r=16 HEXADECIMAL 0,1,2,3,4,5,6,7,8,9, A, B, C, D, E, F

Sistemas de numeración y codificación Electrónica Digital I 5 Sistemas de numeración y codificación Electrónica Digital I 6

1

(1111011.8 × 2 a3 0 1 a4 (19)10 = (10011)2 a-5 a-5 3 0. 111 010)2 = (151. a-6 2 0.2..8960 × 4 0 0.. ( 001 111.)2 Sistemas de numeración y codificación Electrónica Digital I 9 Sistemas de numeración y codificación Electrónica Digital I 10 Conversió Conversión entre bases: ejemplos 2.3)10 = (0. en binario puro con representación entera: Hexadecimal a binario: Â con n bits hay 2n elementos ⇒ resolución de 1 entero. en binario puro con representación entera: =( 1 5 1 .. E )16 Â con 2 bits ⇒ {0. Â con 2 bits ⇒ desde 0 (00) hasta 3 (11) ⇒ desde 0 hasta 22-1..0 hasta el 111...1 Binario a Hexadecimal: ⇒ desde 0 hasta 2n-1 en enteros.. .E)16 = ( 6 9 .72)8 Por ejemplo.2 × 2 .1285 × 4 0. 1110 )2 = (1101001.4 × 2 127 16 a-8 0 0. 0. (0.2510 (14)16 = 1× 161 + 4 × 16 0 = 1× 16 + 4 × 1 = 2010 Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Convertir de base 10 a cualquier base (s): Binario 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 10000  La parte entera se convierte mediante divisiones sucesivas entre (s)r Octal 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 20  La parte fraccionaria se convierte mediante productos sucesivos por (s)r Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 Bases de partida y de llegada son una potencia de la otra: (s = rk ó r = sk)  Binario a octal: se agrupan los dígitos binarios en grupos de tres  Binario a hexadecimal: se agrupan los dígitos binarios en grupos de cuatro  Octal a binario: Cada dígito octal se sustituye por su equivalente binario Hexadecimal a binario: Cada dígito hexadecimal se sustituye por su equivalente binario Sistemas de numeración y codificación Electrónica Digital I 7 Sistemas de numeración y codificación Electrónica Digital I 8 Conversió Conversión entre bases: ejemplos Conversió Conversión entre bases: ejemplos Convertir de base 10 a cualquier base (s) Convertir de base 10 a cualquier base (s) Ejemplo: (0. Conversió Conversión entre bases Equivalencias entre los 17 primeros números de los sistemas decimal.2. 100 )2 = (001111..020032.11101)2 = ( 001 101 001. Có Códigos binarios: conceptos bá básicos Bases de partida y de llegada son una potencia de la otra Rango de un sistema de representación: Binario a Octal: Es el intervalo comprendido entre el menor y el mayor número representable.010011001.3)10 a binario.1285)10 a base 4... 7 2)8 Â con n bits hay 2n elementos ⇒ rango desde el 000...3} ⇒ resolución de 1 entero.4)8 = ( 1 7 .8 × 2 a0 15 7 16 (0. Sistemas de numeració numeración 1.100)2 Por ejemplo.6 × 2 a0 1 9 2 a-2 0.01)2 = 1× 23 + 1× 2 2 + 0 × 21 + 1× 2 0 + 0 × 2 −1 + 1× 2 −2 = 13..A8)16 =( 7 B .3 × 2 19 2 a-1 0 0. Ejemplo: convertir el número (19)10 a binario.3360 × 4 a-6 1 0.5140 × 4 a-1 0 0.1285)10 = (0... Convertir de cualquier base a base 10: Se evalúa directamente la expresión octal y hexadecimal: (1101.4 × 2 a2 0 2 2 a-4 a-4 0 0.10101)2 = ( 0111 1011. (69. ( 0110 1001. .5840 × 4 1 0.6 × 2 Ejemplo: convertir el número (127)10 a hexadecimal.6 × 2 a1 7 0 a2 (127)10 = (07(15))16=(07F) 16 . binario. 1010 1000)2 = (7B. (1101001.1.. A 8 )16 Octal a binario: Resolución de un sistema de representación: (17. Ejemplo: (0.2240 × 4 0 0.)4 a-9 1 0. 4 )8 Es la diferencia existente entre dos elementos representables consecutivos.111)2 Sistemas de numeración y codificación Electrónica Digital I 11 Sistemas de numeración y codificación Electrónica Digital I 12 2 .2 × 2 a-2 2 0.0560 × 4 1 a1 1 4 2 a-3 a-3 0 0. a-7 0 0.

 Redondeo hacia +∞: por exceso. Sistemas de numeración y codificación Electrónica Digital I 17 Sistemas de numeración y codificación Electrónica Digital I 18 3 .1010 = 0110 – 10100 n. i=0 Ambigüedad en el cero: 0000 . Complemento a 2 1. 2n-1-1] .  nº negativos: 1 MMMMMMM 2. Cambio de signo: representación de nº sin signo 6.10100 = 01100 01100 A = (1− 2 ⋅ a n-1 ) ⋅ ∑ a i ⋅ 2i i=0 Cálculo del C2 se procede de derecha a izquierda de la siguiente manera: 3. Binario puro Sistemas de representación en coma fija: 1. Representación de números  Copiar todos los bits de N hasta el primer 1 inclusive. Extensión de signo: representación de nº sin signo Sistemas de numeración y codificación Electrónica Digital I 15 Sistemas de numeración y codificación Electrónica Digital I 16 2.  nº positivos: 0 MMMMMMM  El resto de los bits se obtienen cambiando 1s por 0s y 0s por 1s. Bit de signo + magnitud S MMMMMMM Redondeo: Es la aproximación necesaria para representar una cantidad que no puede Complemento a 1 representarse de forma exacta. Definición: C2(N) = 2n . Representación de números  Exceso a M (representación sesgada)  Sólo nº positivos 4. Números negativos  Error relativo: cociente entre el error absoluto Ea y la cantidad real X. 2n-1] 5. Definición: divisiones y productos sucesivos  Sistema de representación sin signo: binario puro 2.3. Cambio de signo: cambiar el bit de signo 6. Códigos binarios : conceptos bá básicos Códigos binarios Precisión de un sistema de representación: Hace referencia al número de bits empleados y al error cometido al representar Números positivos cantidades de forma aproximada.2 Si n = 5.1x27 = -53⎣10 en el destino se rellena con bits a 0.2 A = −a n -1 ⋅ 2n -1 + ∑ a i ⋅ 2i 4.1. Binario natural  Error absoluto: diferencia entre la cantidad real X y la cantidad X’ que se utiliza para representarla: Ea = | X – X’| El error absoluto siempre es menor que la resolución. Complemento a 2  Redondeo hacia 0: truncamiento. Sistemas de numeración y codificación Electrónica Digital I 13 Sistemas de numeración y codificación Electrónica Digital I 14 Representació Representación de nú números en coma fija 2. Conversión a base 10  Sistemas de representación con signo: n -1  Magnitud y signo (signo-magnitud o módulo y signo) A = ∑ a i ⋅ 2i i=0  Complemento a la base (en binario: complemento a 2)  Complemento restringido a la base (en binario: complemento a 1) 3. B = 1x20 + 1x21 + 1x23 + 1x26 . C2(1010) = 10000 . Rango: [-(2n-1-1). Magnitud y signo 2. Definición: bit de signo y la magnitud del número.1000 A⎣C2 = 00011101⎣C2. Rango: [0.N 100000 2. S MMMMMMM 1. C2(10100) = 25 . y el hueco B⎣C2 = 11001011⎣C2 . Números reales  Redondeo hacia -∞: por defecto.2. A = 1x20 + 1x22 + 1x23 + 1x24 = 29 ⎣10 5. Estándares IEEE (IEEE 754)  Redondeo al valor más próximo: es el más preciso. Conversión a base 10 Si n = 4. Conversión a base 10 n. Extensión de signo: se desplaza a la izquierda el bit de signo.

a 8. base 2 5. base 10 = 1011⎣E. nº negativos: C1 (N). Cambio de signo: se lleva a cabo mediante la complementación  Representar B = -4 utilizando n = 4 y M = 23 = 8 B = -4⎣10 = (-4+8)⎣E.0001 = 10000 . bias) de la representación. Exceso a M 3. base 10 = 4⎣E.N Si n = 4. positivo N. Extensión de signo: se replica el bit de signo hacia la izquierda. a 8. base Sistemas de numeración y codificación Electrónica Digital I 23 Sistemas de numeración y codificación Electrónica Digital I 24 4 . Ejemplos: 4. Cambio de signo: se lleva a cabo mediante la complementación. a 8. n = 8 También podemos calcularlo directamente y después pasarlo a binario: -A⎣C2 = C2(A⎣C2) = 11100011⎣C2 B⎣C2 = 28-53 = 256-53 = 203 = 11001011⎣C2 Ejemplo: cambiar de signo el número B⎣C2 = 11001011⎣C2 . y M = 23 = 8 A = 3⎣10 = (3+8)⎣E. a 127. Definición: Un número A se representa en exceso a M igual que se nº positivos: Igual que en magnitud y signo 0 MMMMMMM representaría el número A+M en binario puro. a 8.5. a 8. q = 0 -B⎣C2 = C2(B⎣C2) = 00110101⎣C2 Sistemas de numeración y codificación Electrónica Digital I 19 Sistemas de numeración y codificación Electrónica Digital I 20 Complemento a 2 2. el rango es -23 ≤ x ≤ 23-1⇒ -8 ≤ x ≤ 7. Conversiónn − 2 a base 10 A = (−1) an −1 ∑ (ai ⊕ an −1) ⋅ 2i i =0 Sistemas de numeración y codificación Electrónica Digital I 21 Sistemas de numeración y codificación Electrónica Digital I 22 Complemento a 1 2. base 10 = 11⎣E. Rango: [-2n-1. 2n-1-1] nº positivos: Igual que en magnitud y signo 0 MMMMMMM nº negativos: C2 (N).1] Ambigüedad en el cero: 0000 – 1111  Representar A = 3 utilizando n = 4. y M = 27-1= 127 C = 53⎣10 = (53+127)⎣E. Complemento a 2 Complemento a 2 3. Primero lo representamos en positivo: -B⎣C2 = 00110101⎣C2 Ahora calculamos el complemento: B⎣C2 = C2(-B⎣C2) = 11001011⎣C2 Ejemplo: cambiar de signo el número A⎣C2 = 00011101⎣C2. Extender X = 010011⎣C2 de 6 a 8 bits 010011 El cálculo del C1 se puede considerar un paso intermedio para el cálculo del 00010011 C2. es decir. Complemento restringido a la base del número  M es el sesgo (exceso. C1(1010) = 24 . 2n-1.4. n = 8. base 10 = 180⎣E.1 .  Representar C = 53 utilizando n = 8. Ejemplo: representar A = 29⎣10 con n = 8 bits 0110 = 6 1110 = –2 0000 = 0 1000 = –8 A⎣C2 = A⎣MS = 00011101⎣C2 Ejemplo: representar B = -53 ⎣10 con n = 8 bits 5. Definición: C1N = 2n . base 2 6.1010 . Ejemplo: Para un número en base 2 (r=2) representado con 4 bits (n=4). a cambiar 1s por 0s y 0s por 1s.1). 1. Así.0001 = 0101 Ejemplo: extender X = 100110⎣C2 de 6 a 8 bits 100110 11100110 Cálculo del C1 : complementar todos los bits del número. Representación de números 1. para obtener el C2 de un número podemos realizar estos dos pasos: a) Calcular el C1 b) Sumar un 1 al dígito menos significativo 2. base 10 = 0100⎣E.1010 . Rango: [–(2n-1. Extensión de signo: se replica el bit de signo hacia la izquierda.  M suele valer 2n-1 ó 2n-1-1. base 10 = 10110100⎣E. Representación de números 4. a 8. a 127. Complemento a 1 6. Complemento a la base del número positivo N. a 127.

2n-1 -1] [-(2n-1 -1). enteros con n=4: n -1 A = ∑ a i ⋅ 2i − M i= 0 3. ya que implica un cambio en el valor del exceso. 4. Cambio de signo: no evidente 6. Exceso a M Coma Fija: tabla comparativa 2. 2n -1-M] Rango [0.1000 Único:0000 0000 . Conversión a base 10: Para calcular el valor de un número representado Equivalencia entre la representación binario en magnitud y signo. 2n -1] [-(2n-1 -1). 2n-1 -1] [-2n-1 . 2n-1-M] 5. complemento a 1 y exceso a 2n-1 construidas para una representación de puro y después se resta M al resultado. 2n-1 -1] [-2n-1 . Rango: [-M. complemento a en exceso a M. Sistemas de numeración y codificación Electrónica Digital I 25 Sistemas de numeración y codificación Electrónica Digital I 26 Coma Fija: tabla comparativa Coma Fija: problemas Exceso M Binario Puro Magnitud-Signo C2 C1 (*) M=2n-1 C2N=2n-N De dcha a izqda: copiar hasta C1N=2n-N-1 Definición Divisiones sucesivas S Magnitud NExcesoM= N+M|bp el primer 1 y luego 1s por 0s y 1s por 0s y 0s por 1s 0s por 1s Nº Positivos 0 Magnitud 0 Magnitud 0 Magnitud NExcesoM= N+M|bp Nº Negativos Sin signo 1 Magnitud C2N C1N NExcesoM= N+M|bp [-M . Representación de números: A se representa en exceso a M igual que se representaría el número A+M en binario puro. 2n-1 -1](*) Cambio de Signo Sin signo Cambiar bit de signo C2N C1N No evidente n −1 n−2 n−2 n−2 n −1 Conversión A = ∑ ai ⋅ 2 i A = (1 − 2an −1 ) ∑ ai ⋅ 2i A = −an −1 ⋅ 2n −1 + ∑ ai ⋅ 2i A = ( −1) a n−1 ∑ ( ai ⊕ an −1 ) ⋅ 2i A = ∑ ai ⋅ 2i − M a base 10 i =0 i =0 i =0 i =0 i =0 Representaciones con Se copian los bits de signo y Extensión del signo Sin signo Se replica el bit de signo Se replica el bit de signo nº de dígitos <> tienen magnitud y los que faltan ceros sesgos <> 0 Único: 0 0000 .1111 Único: 1000 Sistemas de numeración y codificación Electrónica Digital I 27 Sistemas de numeración y codificación Electrónica Digital I 28 Coma Fija: problemas Coma Fija: problemas Sistemas de numeración y codificación Electrónica Digital I 29 Sistemas de numeración y codificación Electrónica Digital I 30 5 . se procede como si estuviéramos en un número en binario 2. Extensión de signo: no se suele hacer.

157 · 10-7  La coma está a la derecha del bit implícito.0: NaN (Not a Number) o resultado sin sentido. el módulo de la cantidad representada es menor que el humanos utilizamos la base 10.  Exceso en precisión simple: 127  Colocar la coma a la izquierda del dígito más significativo (0 < |m| < 1).98823 · 10-23  La mantisa se representa en signo magnitud. Las normalizaciones más frecuentes son: Es un formato de coma flotante de comparación rápida que admite precisión simple (32 bits) ó doble (64 bits).1 y m=00.003157 · 10-4 = 3...04644 · 1022  El exponente se representa en exceso 2q-1-1 (q: nº de bits del exponente). Es nuestro cero..98823 · 10-23 Z = 0. La normalización facilita la comparación entre cantidades.0 y signo positivo: +∞.003157 · 10-4 = 0. de la mantisa. Z = 0. el módulo de la cantidad representada es mayor o igual  Exponente (exp): entero.3157 · 10-6  exp=11.44 · 1019 Y = 9.. •Si es positivo.9253662 · 104  exp=00. -∞... X = -298.804644 · 1023  exp=11.. Ejemplos: •Desplazar la coma a la izquierda n lugares implica sumar n al X = -298..  Base (b): utilizada para representar la mantisa y el exponente.0 y m<>00..823 · 10-25 = -2.253662 · 103 = 9253. que el de la mantisa. Los •Si es negativo. Coma Fija: problemas Coma Fija: problemas Sistemas de numeración y codificación Electrónica Digital I 31 Sistemas de numeración y codificación Electrónica Digital I 32 Números reales: coma flotante Números reales: coma flotante Notación científica Consideraciones sobre la notación científica: Es el sistema empleado por los científicos para representar cantidades  La mantisa incluye el signo de la cantidad representada.  Coma a la derecha del dígito menos significativo (mantisa entera).  Colocar la coma a la derecha del dígito más significativo (1 ≤ |m| < b). Z = 0. dependiendo de dónde ubiquemos la coma en la mantisa.0 y m=00. Consta de:  El exponente puede llevar también signo:  Mantisa (m): número en coma fija. Una cantidad X se representa mediante el producto X = m x bexp00  Una misma cantidad admite diferentes representaciones..  Exceso en precisión doble: 1023 X = -298... V = -8046.44 · 1019 = -0.0.0 se usa para expresar números desnormalizados sin bit implícito (para rellenar el hueco existente alrededor del 0).253662 · 103 X = -298. habitualmente con parte fraccionaria.823 · 10-25 = -0. Y = 9.  Emplea mantisa fraccionaria normalizada.823 · 10-25 exponente.003157 · 10-4 •Desplazar la coma a la derecha n lugares implica restar n al exponente.  Si exp=00. Sistemas de numeración y codificación Electrónica Digital I 35 Sistemas de numeración y codificación Electrónica Digital I 36 6 . V = -8046...1 y m<>00...298823 · 10-22 El estándar admite varios casos especiales: Y = 9.253662 · 103 ya está normalizado  El bit implícito es siempre 1 y no se almacena.253662 · 103 = 0.662 · 100 Sistemas de numeración y codificación Electrónica Digital I 33 Sistemas de numeración y codificación Electrónica Digital I 34 Números reales: coma flotante Números reales: está estándar IEEE 754 Normalización: consiste en colocar la coma de la mantisa en una posición determinada. Y = 9. V = -8046.823 · 10-25 = -2. numéricas.44 · 1019 = -8. Si el signo es negativo.

gi = 1. Conversión de código Gray a binario puro: se realiza de izquierda a derecha. Có Códigos BCD (Binary (Binary Code Decimal) Códigos BCD Codificación en BCD: Codificación BCD 2-4-2-1 (autocomplementario): Es la codificación decimal más sencilla y representa a los diez dígitos decimales BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 asignándoles el código binario de su representación binaria pura con 4 bits. Â Para todo i tal que 0 ≤ i ≤ n-2: Si gi y bi+1 son iguales. Si el primer y último código son progresivos. Có Códigos progresivos: có código de Gray Un código es progresivo si entre dos códigos cualesquiera hay una diferencia de un solo Equivalencia entre dígitos decimales y los códigos BCD: bit. 3. es decir 0101 0110. BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 Es importante no confundir la representación de un dígito decimal en Exceso-3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 BCD con un número binario. mientras que en binario puro se escribe como 111000. bi = 1. Sistemas de numeración y codificación Electrónica Digital I 41 Sistemas de numeración y codificación Electrónica Digital I 42 7 . 8421 2421 n+3 0 0000 0000 0011 1 0001 0001 0100 2 0010 0010 0101 3 0011 0011 0110 4 0100 0100 0111 5 0101 1011 1000 6 0110 1100 1001 7 0111 1101 1010 8 1000 1110 1011 9 1001 1111 1100 BCD natural Aiken XS-3 Autocomplementarios Sistemas de numeración y codificación Electrónica Digital I 39 Sistemas de numeración y codificación Electrónica Digital I 40 Códigos progresivos: có código de Gray Códigos progresivos: có código de Gray Ejemplo: Posicionamiento angular Conversión de código binario puro a Gray: se realiza de izquierda a derecha. Sistemas de numeración y codificación Electrónica Digital I 37 Sistemas de numeración y codificación Electrónica Digital I 38 Códigos BCD 4. gi = 0 Si bi y bi+1 son distintos. teniendo en cuenta que: Â El bit más significativo del código binario puro (bn-1) y Gray (gn-1) coinciden. el número decimal de dos dígitos 56 se escribe (5) y (6). Decimal 0 1 2 3 4 5 6 7 8 9 El sistema XS-3 es autocomplementario. Es una codificación derivada de la codificación BCD sin más que sumar 3 Equivalencia entre dígitos decimales y código BCD 8-4-2-1: (0011) a la representación BCD de cada dígito decimal. teniendo en cuenta que: Â El bit más significativo del código binario puro (bn-1) y Gray (gn-1) coinciden. ya que son representaciones distintas. además cíclico. Â Para todo i tal que 0 ≤ i ≤ n-2: Si bi y bi+1 son iguales. bi = 0 Si gi y bi+1 son distintos. Con Aiken 0000 0001 0010 0011 0100 1011 1100 1101 1110 1111 esa representación un número decimal se evalúa mediante la expresión: b3·23 + b2 ·22 + b1 ·21 + b0 ·20 = b3·8 + b2 ·4 + b1 ·2 + b0 ·1 Codificación en Exceso-3 (XS-3): Por esta razón al código BCD se le conoce también como código 8-4-2-1. Ejemplo: En BCD. se dice que el código es.

BINARIO (×) 0 1 72 0 0 0 0  Si el dividendo parcial es mayor o igual que el divisor. continuo y cíclico. B 1 1 0 0 1 0 1 112 8 dividendo 1 1 1 0 0 0 0 1 0 0 0 divisor 1 0 0 1 0 0 0 resultado 14 .10 0 0 0 0 0 0 0 . = M ] m } 1110 E SO RS . × 6 × 1 1 0 multiplicador En el caso de la binaria es más sencillo porque se simplifica la elección de PRODUCTO A cada dígito del cociente ya que sólo pueden ser 0 ó 1. hexadecimal 0000 0 1 2 3 4 5 6 7 0 NUL DLE SP 0 @ P ` p 0001 1 SOH DC1 ! 1 A Q a q 0010 American Standard Code for 2 STX DC2 " 2 B R b r 0011 Information Interchange 3 ETX DC3 # 3 C S c s 0100 4 EOT DC4 $ 4 D T d t 0101 5 ENQ NAK % 5 E U e u 0110 6 ACK SYN & 6 F V f v 0111 7 BEL ETB ' 7 G W g w 1000 8 BS CAN ( 8 H X h x 1001 9 HT EM ) 9 I Y i y 1010 A LF SUB * : J Z j z 1011 B VT ESC + . 1 0 0 0 1 1 1 0 cociente 64 + 8 = 72 0 1 1 0 0 -100 0 0 1 0 0 0 . < L \ l | 1101 D CR GS . Códigos progresivos: có código de Johnson Códigos de caracteres: ASCIII binary pattern 0000 0001 0010 0011 0100 0101 0110 0111 Es un código progresivo. si no es 0. 83 . Aritmé Aritmética binaria en coma fija Aritmé Aritmética en base 2 SUMA RESTA Estudiaremos las reglas básicas de la aritmética según los distintos sistemas 0+0=0 0 0-0=0 0 de representación numérica en coma fija estudiados: 0+1=1 0 0-1=1 1 Acarreo  Binario puro Acarreo 1+0=1 0 1-0=0 0  Magnitud y signo 1+1=0 1 1-1=0 0  Complemento a 2  Complemento a 1 SUMA A RESTA BINARIA A BINARIA 0 1 0 1 Suma binaria Resta binaria  Exceso a M (+) (-)  BCD 0 0 1 0 0 1 B B 1 1 10 1 11 0 acarreo 1 acarreos 1 1 1 1 0 1 0 0 1 1 minuendo 9 1 0 0 1 . el siguiente dígito 0 0 0 1 1 0 0 Productos parciales del cociente es 1.0 0 0 0 0 0 0 0 resto Sistemas de numeración y codificación Electrónica Digital I 47 Sistemas de numeración y codificación Electrónica Digital I 48 8 . > N ^ n ~ 1111 F SI US / ? O _ o DEL Sistemas de numeración y codificación Electrónica Digital I 43 Sistemas de numeración y codificación Electrónica Digital I 44 5. K [ k { 1100 C FF FS . 1 0 1 0 1 sustraendo + 15 + 1 1 1 1 21 acarreos 1 1 1 1 24 1 1 0 0 0 62 0 1 1 1 1 1 0 diferencia Sistemas de numeración y codificación Electrónica Digital I 45 Sistemas de numeración y codificación Electrónica Digital I 46 Aritmé Aritmética en base 2 Aritmé Aritmética en base 2 División binaria Producto binario 12 1 1 0 0 multiplicando La división binaria se puede realizar igual que la decimal.

 Signo (A) ≠Signo(B): División:  signo(R) = signo (mayor(|A|. B = -6 0100 4 + 1010 ..2 Se desprecia 1110 -2 1 1011 -5 Ejemplo : A = -2.111)2 × 2-4 = (110. y si no es negativo.. B = 2 Ejemplo : A = 6.0)10 1 1110 -2  Producto: al multiplicar números de n bits el resultado puede necesitar hasta 2n bits (¡puede salirse de rango!).. Operar con los módulos y detectar el posible desbordamiento.. multiplicaciones y N ⋅ r m = a n-1 ⋅ r n-1+m + .. 3.4 Se desprecia el bit de acarreo el bit de acarreo 1 0010 2 Ejemplo : A = 4. + a 0 ⋅ r 0 + a -1 ⋅ r -1 + . Producto: Suma de R=A+B: casos posibles 1.. 2. Si los signos del dividendo y divisor son iguales. B = -4 0110 6 + 0010 +2 + 1100 .  Suma: el resultado puede tener n+1 bits (acarreo superior C = 1) La coma aparece a la derecha del dígito ai que cumple i+m = 0 ⇒i = -m. al sumar o restar con módulo y signo se debe hacer lo siguiente: 4.. Se multiplican los módulos (da un resultado de hasta 2n-2 bits).2 + 1101 -3 1110 . Desbordamiento: se detecta al operar con los módulos.|B|) .  Signo(A) = Signo(B): 2...(menor(|A|. 3.. se realiza la suma directamente con las reglas de la aritmética binaria directamente con las reglas de la aritmética binaria 0100 4 Ejemplo: A = 4.q Desbordamiento: puede darse al realizar sumas. B = -3 el bit de acarreo + 1101 -3 Se desprecia el bit de acarreo 1 1011 -5 Sistemas de numeración y codificación Electrónica Digital I 53 Sistemas de numeración y codificación Electrónica Digital I 54 9 . el cociente es Resta: A-B = A + (-B) positivo.4 0110 6 Se desprecia 1 0010 2 + 1100 ... N = a p -1 ⋅ r p -1 + . restas. y si no es negativo.. Observar los signos y decidir qué operación se va a realizar.  |R| =(mayor(|A|. 1. B = -4 0110 6 0100 4 0110 6 Ejemplo : A = 6. B = 2 + 0010 +2 Ejemplo: A = 4.111)2 × 23 = (1101001111. 1 1100 28  Resta: el resultado puede ser negativo (acarreo superior C = 1) Ejemplo: (1101001.q ⋅ r . + a .. Si los signos del multiplicando y el multiplicador son iguales. Sistemas de numeración y codificación Electrónica Digital I 49 Sistemas de numeración y codificación Electrónica Digital I 50 Aritmé Aritmética binaria en magnitud y signo Aritmé Aritmética binaria en magnitud y signo Es preciso tratar por separado signos y magnitudes.15 sustraendo mayor que minuendo acarreo (10.0)2 1101 13 DESBORDAMIENTO NEGATIVO: (1101001. B = -6 Ejemplo : A = -2. Colocar el signo al resultado....6 1110 .. se realiza la suma ÂEl bit de acarreo superior siempre se desprecia.. Se separan el signo y el módulo del multiplicando y del multiplicador.53)10 × 104 = (105300.. Ordenar los módulos si hay que restar.1001111)2 . El signo del resto será siempre igual que el del dividendo.. + a 0 ⋅ r 0 + m + a -1 ⋅ r -1+m + . 4....1111 . Aritmé Aritmética en base 2 Aritmé Aritmética binaria en binario puro Multiplicación y división de un número N por una potencia de la base r (rm): Sus reglas son las de la aritmética binaria ya estudiada.|B|) 1. el  |R| = |A| + |B| resultado es positivo. + a -p ⋅ r -p +m divisiones. Sistemas de numeración y codificación Electrónica Digital I 51 Sistemas de numeración y codificación Electrónica Digital I 52 Aritmé Aritmética en complemento a 2 Aritmé Aritmética en complemento a 2 ÂEl bit de acarreo superior siempre se desprecia..6 1110 -2 + 1010 .. B = -3 0100 4 Ejemplo : A = 4.|B|) 2. Se dividen los módulos. Se separan el signo y el módulo del dividendo y del divisor.. Por tanto. es decir 1101 13 detrás del dígito que originalmente era a-m acarreo + 1111 +15 DESBORDAMIENTO POSITIVO  si m > 0 (multiplicación) se desplaza la coma p lugares a la derecha.. con la limitación del tamaño de los operandos (n = p+q).  si m < 0 (división) se desplaza la coma p lugares a la izquierda.  División: hay desbordamiento si el divisor es 0.  Signo (R) = signo(A) = signo(B) 3.

 Si en sumas o restas el bit de acarreo superior vale 1. para multiplicar y para dividir haremos lo siguiente: complemento a 1.  Pasamos los operandos a positivos. q = 0 la resta en binario puro. el bit de acarreo superior siempre se desprecia. q = 0 Operación en binario puro Operación en complemento a 2 A = -3⎣10 = 1101⎣C2. ÂPrecaución: hay que invertir el bit de acarreo superior una vez realizada la 0110 6 La suma de dos números positivos operación de resta en complemento a 2. se complementa el dato obtenido. A+B = 9⎣10. n = 4. A-B = 4⎣10. + 0011 +3 no puede producir un número 1001 ¡¡-7!! negativo: V = 1 Ejemplo: A=0111⎣2. n = 4.0011 Acarreo superior erróneo: + 1101 La suma de dos números negativos + 1001 + -7 hay que invertirlo C=0 no puede producir un número 0100 10100 10110 ¡¡6!! positivo: V = 1 El acarreo superior se desprecia. A-B = 2⎣10. B = 3⎣10 = 0011⎣C2. y el resultado obtenido siempre es correcto (salvo Ejemplo: A = 6⎣10 = 0110⎣C2. Aritmé Aritmética en complemento a 2 Aritmé Aritmética en complemento a 2 Resta en complemento a 2: A-B = A + C2(B)  En sumas y restas en complemento a 2. De forma análoga a la aritmética estudiada para la representación en complemento a la base. n = 4 que se produzca desbordamiento).  El acarreo superior siempre se desprecia. A-B = -4⎣10. y el resultado es positivo Sistemas de numeración y codificación Electrónica Digital I 57 Sistemas de numeración y codificación Electrónica Digital I 58 Aritmé Aritmética en complemento a 2 Aritmé Aritmética en complemento a 1 Aunque hay algoritmos para multiplicar y dividir directamente números en De forma análoga a la aritmética estudiada para la representación en complemento a 2. se puede estudiar la aritmética para la representación en complemento restringido a la base. B = -7⎣10 = 1001⎣C2.  Si el análisis de los signos de los operandos revela que el resultado (o el cociente o el resto) debe ser negativo. Segundo: sumar A+(-B) El posible acarreo superior resultante en una suma o una resta no 1001 indica desbordamiento. Sistemas de numeración y codificación Electrónica Digital I 59 Sistemas de numeración y codificación Electrónica Digital I 60 10 . Primero: complementar el sustraendo -B⎣C2 = C2(B⎣C2) = 1100⎣C2 Segundo: sumar A+(-B) 0110  Desbordamiento en sumas y restas: se detecta porque el resultado El acarreo superior se desprecia.  El acarreo superior siempre se desprecia. complemento a 2. Ejemplo: A = -7⎣10 = 1001⎣C2. + 1100 presenta un signo erróneo. se puede estudiar la aritmética para la representación en De momento. B = 4⎣10 = 0100⎣C2. 1100 Sistemas de numeración y codificación Electrónica Digital I 55 Sistemas de numeración y codificación Electrónica Digital I 56 Aritmé Aritmética en complemento a 2 Aritmé Aritmética en complemento a 2 Ejemplos de sumas con desbordamiento Es posible utilizar la resta en complemento a 2 para realizar más fácilmente A = 6⎣10 = 0110⎣C2. + 0011 También puede producirse desbordamiento en productos y divisiones. B = -3⎣10 = 1101 ⎣C2.  Problema: si en sumas o restas el bit de acarreo superior vale 1.  Operamos en binario puro. q = 0 0111 0111 1101 -3 . es preciso sumar 1 al resultado. n = 4 Nunca puede haber desbordamiento al sumar números de distinto signo o al Primero: complementar el sustraendo -B⎣C2 = C2(B⎣C2) = 0011⎣C2 restar números de igual signo. A+B = -10⎣10. n = 4. es preciso sumar 1 al resultado. no los vamos a estudiar todavía. B = 0011⎣2. y el resultado es positivo 10010 Puede producirse desbordamiento al sumar dos números de igual signo o al restar dos números de distinto signo.

1001 -6 Incorrecto . tendremos que: Si queremos restar A y B para obtener C=A-B. Ejemplos: Si no se ha producido acarreo. 0011 al dígito resultante y se obtiene el C10 (resultado).21 100010110 01000000 . se sumará 0011. tendremos que: A se representa en exceso como A+M A se representa en exceso como A+M B se representa en exceso como B+M B se representa en exceso como B+M Queremos obtener C representado en exceso. + 00101011 + . • El dígito resultante sea mayor que 9. o sea.0101 . (A-B)+M Al hacer la suma obtenemos (A+M)+(B+M) = (A+B)+M+M.85 Corrección: sumar 6 al dígito resultante y dar un acarreo superior a la 00101111 siguiente pareja de dígitos BCD. pero hay que sumar M al obtenido. si se ha producido acarreo se restará 0011 al dígito resultante.. se le restará 0011. o sea.21 . a no ser que: operación de corrección del resultado. obtenemos Al hacer la suma obtenemos (A+M)-(B+M) = (A-B)+M-M = (A-B). Ejemplos (M=2n-1): 00000100 -124 • Se produzca un acarreo superior. es decir. y si no se ha producido. el el exceso 2 veces: es preciso restar M al resultado obtenido. si se ha producido acarreo se sumará Al restar dos dígitos en BCD XS-3.0011 -3 1 1111 BCD 0011 1 0100 11 BCD 1010 7 .10000000 Correcto + 0110 +6 Correcto + 0110 +6 DESBORDAMIENTO POSITIVO C=1 100001101 BCD 1 0001 11 BCD 1 1000 18 Resta en BCD es una suma haciendo el complemento a 10 del sustraendo. Aritmé Aritmética en exceso a M Aritmé Aritmética en exceso a M Suma en exceso a M: Resta en exceso a M: La operación es similar al binario puro. resultado obtenido. 0100 4 .0011 -3 Correcto + 0011 +3 1 1100 19 BCD 0110 3 Sistemas de numeración y codificación Electrónica Digital I 65 Sistemas de numeración y codificación Electrónica Digital I 66 11 . pero hay que restar M al resultado La operación es similar al binario puro. Sistemas de numeración y codificación Electrónica Digital I 63 Sistemas de numeración y codificación Electrónica Digital I 64 Aritmé Aritmética en BCD: XS- XS-3 Aritmé Aritmética en BCD: XS- XS-3 Al sumar dos dígitos en BCD en XS-3. 1000 5 1000 5 Ejemplos: + 1001 +6 Incorrecto + 0101 +2 1 0001 BCD 1101 1000 5 1000 5 . (A+B)+M Queremos obtener C representado en exceso.2 + 0011 +3 Correcto . es decir. resultado está en binario puro y para pasarlo a exceso habrá que sumarle M Ejemplo (M=2n-1): 10101011 43 Ejemplo (M=2n-1): 10101011 43 + 01101011 + . Si queremos sumar A y B para obtener C=A+B.10000000 + 10000000 10010110 22 11000000 64 Sistemas de numeración y codificación Electrónica Digital I 61 Sistemas de numeración y codificación Electrónica Digital I 62 Aritmé Aritmética en exceso a M Aritmé Aritmética en BCD Desbordamiento en sumas o restas en exceso a M: La suma de dos dígitos representados en BCD proporciona un dígito correcto Se detecta cuando se produce desbordamiento en binario puro en la representado en BCD.01101011 .10000000 DESBORDAMIENTO NEGATIVO: Ejemplos: + 0011 +3 C=1 111101111 sustraendo mayor que minuendo 0111 7 1000 8 Incorrecto 1001 9 11111000 120 + 0011 +3 BCD + 1001 +9 + 10010101 + 21 Incorrecto BCD 1011 1 0010 110001101 .