SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
Estructura de computadores Tema 2: Sistemas de representación numérica
1
Tema 2: Sistemas de representación numérica
2.1 Sistemas de Numeración
Definiciones previas
Comenzaremos por definir unos conceptos fundamentales.
Existen 2 tipos de computadoras:
• Analógicas: actúan bajo el control de variables continuas, es decir, que
toman infinitos valores.
• Digitales: actúan bajo el control de variables discretas, es decir, que
pueden tomar un número finito de valores en el tiempo.
Las computadoras con las que vamos a tratar son digitales.
Sistema de numeración: es un conjunto de reglas, signos y convenios que
nos permiten expresar, verbal y gráficamente, las cantidades de las magnitudes
o valores numéricos.
Base de un sistema de numeración: es el número de signos distintos que se
emplean en el sistema.
Alfabeto de un sistema de numeración: son todos y cada uno de los signos
que se emplean en el sistema. A partir de ellos se expresarán todas las
cantidades.
Por ejemplo, el sistema de numeración decimal utiliza diez dígitos:
Base: 10
Alfabeto: 0,1,2,3,4,5,6,7,8,9.
Estructura de computadores Tema 2: Sistemas de representación numérica
2
Clasificación
Los sistemas de numeración se clasifican en: posicionales y no posicionales.
1. Sistemas posicionales
En ellos, cada cifra de un valor numérico contribuye al valor final
dependiendo de su valor y de la posición que ocupa dentro de él (valor
relativo). En estos sistemas tenemos tantos símbolos como la base del
sistema. Los números mayores que la base se representan por medio de
varias cifras.
El valor final será la suma de una serie de potencias de la base del sistema
(B):
N = An·Bn
+ An-1·Bn-1
+ ... + A1·B1
+ A0·B0
Donde Ai son las distintas cifras del valor numérico e ‘i’ su posición.
2. Sistemas no posicionales
Al contrario que en el caso anterior, en este caso la contribución de cada
cifra no depende del lugar que ocupa.
Un ejemplo de este sistema serían los números romanos:
La combinación XXI equivale a 21. Podemos ver cómo la cifra X aparece
dos veces y siempre tiene el mismo valor: 10 unidades, independientemente
de su posición.
El inconveniente que tienen estos sistemas es que para escribir valores
numéricos grandes son necesarios muchos símbolos, y además resulta
difícil efectuar operaciones aritméticas con ellos, cosa que no sucede con
los posicionales.
Los sistemas de numeración que veremos a continuación son todos
sistemas posicionales.
A partir de ahora, para evitar confusiones, cuando expresemos un valor
numérico pondremos un subíndice al final indicando la base en la que se
expresa dicho valor, salvo que por el contexto quede suficientemente claro:
22510 = Base decimal
110112 = Base binaria
Estructura de computadores Tema 2: Sistemas de representación numérica
3
Sistema decimal
Es el sistema que utilizamos habitualmente las personas.
Base: 10
Alfabeto: 0,1,2,3,4,5,6,7,8,9
Cumple la fórmula anterior (B=10):
N = An·10n
+ An-1·10n-1
+ ... + A1·101
+ A0·100
Ejemplo:
22510 = 2·102
+ 2·101
+ 5·100
= 200 + 20 + 5
Estructura de computadores Tema 2: Sistemas de representación numérica
4
Sistema binario
Es el sistema utilizado por los computadores.
Base: 2
Alfabeto: 0,1
Este sistema, presenta el inconveniente de que necesita muchas cifras para la
representación de un número grande, y es muy engorroso para un humano.
Sin embargo, el sistema binario es el más adecuado a las máquinas
electrónicas por varias razones:
1. La mayor parte de las computadoras existentes representan la
información y la procesan mediante elementos y circuitos
electrónicos de dos estados (relés, núcleos de ferrita, etc.).
2. Por la seguridad y la rapidez de respuesta de los elementos físicos
de dos estados diferenciados (ON / OFF).
3. Las operaciones aritméticas son sencillas.
Los quince primeros números binarios se escriben:
Decimal Binario
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
10 1010
11 1011
12 1100
13 1101
14 1110
15 1111
Estructura de computadores Tema 2: Sistemas de representación numérica
5
Conversión binario-decimal
La forma más sencilla de realizar esta conversión es desarrollando la
fórmula que vimos para los sistemas posicionales (suma de potencias de la
base).
N = An·Bn
+ An-1·Bn-1
+ ... + A1·B1
+ A0·B0
Donde Ai son las distintas cifras del valor numérico e ‘i’ su posición.
B = 2
Ejemplo 1:
Dado el número binario: “10112”, encontrar el equivalente decimal.
Si desarrollamos el número dado como potencias de 2 tendremos:
10112 = 1·23
+ 0·22
+ 1·21
+ 1·20
= 1·8 + 0·4 + 1·2 + 1·1 =
= 8 + 2 + 1 = 1110
Ejemplo 2:
Ahora vamos a realizar lo mismo pero con cifras decimales.
Dado el número binario: “1011,0112”, encontrar el equivalente decimal.
1011,0112 = 1·23
+ 0·22
+ 1·21
+ 1·20
+ 0·2-1
+ 1·2-2
+ 1·2-3
=
= 1·8 + 0·4 + 1·2 + 1·1 + 0·1/2 + 1·¼ + 1·1/8 = 11,375
Conversión decimal-binario
Una forma de realizar esta conversión sería separar la parte entera de la
parte fraccionaria, y operar del siguiente modo:
1. La parte entera se divide tantas veces como sea posible por la base
(2), hasta que el cociente sea 0 o 1. El último cociente y los restos
obtenidos, al escribirlos en orden inverso a su obtención, nos dan el
resultado.
2. La parte fraccionaria se multiplica por la base (2); la parte entera
obtenida (0..1) representa la cifra binaria. Se procede de forma
iterativa con la parte fraccionaria que nos vaya quedando, hasta que
sea 0 o veamos que el resultado será periódico o infinitas cifras
decimales. El resultado será la unión de las partes enteras, en el
orden que las hemos obtenido.
Estructura de computadores Tema 2: Sistemas de representación numérica
6
Ejemplo 1:
Vamos a obtener el equivalente binario del valor decimal: 1110
En este caso tan sólo tenemos parte entera.
11 |__2__
1 5 |__2__
1 2 |__2__ Según esto, el equivalente será:
0 1
1110 = 10112
Puede comprobarse el resultado con los ejemplos anteriores.
Ejemplo 2:
Expresar el número decimal 109,62510 en el sistema binario.
Parte entera
109 |__2__ Obtenemos el valor 11011012
1 54 |__2__
0 27 |__2__
1 13 |__2__
1 6 |__2__
0 3 |__2__
1 1
Parte fraccionaria
0,625 * 2 = 1,250 Obtenemos el valor: 1012
0,250 * 2 = 0,5
0,5 * 2 = 1,0
El resultado final es la unión de ambos valores:
109,62510 = 1101101,1012
Estructura de computadores Tema 2: Sistemas de representación numérica
7
Sistema Octal
Base: 8
Alfabeto: 0,1,2,3,4,5,6,7
El interés de este sistema proviene de que su conversión al binario
resulta sencilla, por ser 8 = 23
.
Se usa bastante con listados de programas y volcados de memoria
(dump), pues permite impresiones mucho más compactas que con el sistema
binario, ya que cada dígito octal equivale a 3 dígitos binarios.
Los ocho primeros números octales se escriben:
Octal Decimal Binario
0 0 000
1 1 001
2 2 010
3 3 011
4 4 100
5 5 101
6 6 110
7 7 111
Conversión octal-binaria
Para convertir un número expresado en base 8 a base 2, simplemente
sustituimos cada una de las cifras que lo forman por sus tres cifras binarias
equivalentes.
Ejemplo:
375,4210 = 011 111 101,100 010
Conversión binaria-octal
Se realiza a la inversa, comenzando desde la coma decimal hacia la
izquierda para la parte entera, rellenando con 0’s a la izquierda si fuera
necesario; y desde la coma decimal hacia la derecha para la parte fraccionaria,
rellenando con 0’s a la derecha si fuera necesario.
Ejemplo 1:
11111101,1000102 = 011 111 101,100 0102 = 375,4210
Ejemplo 2:
11010,10112 = 011 010,101 1002 = 32,5410
Estructura de computadores Tema 2: Sistemas de representación numérica
8
Conversión octal-decimal
Se realiza del mismo modo que de binario a decimal, teniendo en cuenta
que la base ahora es B=8.
Ejemplo:
345,58 = 3·82
+ 4·81
+ 5·80
+ 5·8-1
= 192 + 32 + 5 + 0,625 = 229,62510
Conversión decimal-octal
Se realiza del mismo modo que de decimal a binario, dividiendo la parte
entera de forma sucesiva por la base B=8, y multiplicando la parte fraccionaria
por la base.
Ejemplo:
Expresar el número decimal 1036,3510 en octal.
Parte entera
1036 |__8__ El resultado será: 103610 = 20148
23 129 |__8__
76 49 16 |__8__
4 1 0 2
Parte fraccionaria
0,35 * 8 = 2,8 Obtenemos el valor: 26314...8
0,8 * 8 = 6,4
0,4 * 8 = 3,2
0,2 * 8 = 1,6
0,6 * 8 = 4,8
El resultado final es la unión de ambos valores:
1036,3510 = 2014,26314...8
Estructura de computadores Tema 2: Sistemas de representación numérica
9
Sistema Hexadecimal
Base: 16
Alfabeto: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
El interés de este sistema proviene de que su conversión al binario
resulta sencilla, por ser 16 = 24
. Esto significa que cada grupo de 4 bits (dígitos
en binario), equivale a uno solo en hexadecimal, con lo cual, obtendremos
representaciones mucho más compactas.
Conversión hexadecimal-binario
Basta con sustituir cada símbolo hexadecimal por su equivalente en
binario, según se indica en la tabla siguiente:
Hexadecimal 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
Ejemplo:
Hállese el equivalente binario del número 9A7E16
9A7E16 = 1001 1010 0110 11102
Conversión binario-hexadecimal
La conversión de un número binario a hexadecimal se realiza a la
inversa: se forman grupos de cuatro cifras binarias a partir de la coma decimal,
hacia la izquierda y hacia la derecha, y se sustituye cada grupo por su
equivalente hexadecimal. Si el grupo final de la izquierda queda incompleto, se
rellena con 0’s por la izquierda. Del mismo modo, si el grupo final de la derecha
queda incompleto, se rellena con 0’s por la derecha.
Estructura de computadores Tema 2: Sistemas de representación numérica
10
Ejemplo:
Calcúlese el equivalente hexadecimal del número binario siguiente:
1101010111100011100000001,1100012
Agrupamos y rellenamos con 0’s:
0001 1010 1011 1100 0111 0000 0001,1100 01002
Sustituimos cada grupo de 4 por su equivalente hexadecimal:
1 A B C 7 0 1 , C 4
Resultado: 1ABC701,C416
Conversión hexadecimal-decimal
La conversión se realiza siguiendo el mismo procedimiento que en las
conversiones binario-decimal, pero considerando la base B=16. En este caso,
además, deberemos sustituir los valores A..F por su equivalencia en el sistema
decimal.
Ejemplo:
Hállese el equivalente decimal del valor hexadecimal 39,B816.
39,B816 = 3·161
+ 9·160
+ B·16-1
+ 8·16-2
=
= 3·161
+ 9·160
+ 11·16-1
+ 8·16-2
=
= 48 + 9 + 0.6875 + 0.03125 =
= 57,71875
Conversión decimal-hexadecimal
Procederemos del mismo modo que en la conversión decimal-binario,
considerando B=16. Dividiremos la parte entera sucesivamente por la base, y
la parte fraccionaria la multiplicaremos por la base.
Ejemplo:
Hállese el equivalente hexadecimal del número 4573,7910.
Parte entera
4573 |_16__ 457310 = 11DD16
13 285 |_16__
13 17 |_16__
1 1
Estructura de computadores Tema 2: Sistemas de representación numérica
11
Parte fraccionaria
0,79 * 16 = 12,64 Valor: 12 10 3 13 7... = CA3D7...16
0,64 * 16 = 10,24
0,24 * 16 = 3,84
0,84 * 16 = 13,44
0,44 * 16 = 7,04
...
Valor final: 4573,CA3D7...16
Conversiones de cualquier base
Conversión de una base cualquiera a base decimal (b => 10)
Para este tipo de conversión utilizaremos la fórmula de la suma de
productos de potencias de la base vista anteriormente.
Ejemplo: Hallar el equivalente decimal del valor 1312,34
1312,34 = 1·43
+ 3·42
+ 1·41
+ 2·40
+ 3·4-1
=
= 64 + 48 + 4 + 2 + 0.75 = 118,7510
Conversión de base decimal a otra base cualquiera (10 => b)
Se realiza como hemos visto hasta ahora, es decir:
• Parte entera: dividiendo el número decimal por la base a la que
queremos convertir, de forma sucesiva hasta que el cociente sea
menor que la base. El último cociente y los restos que resultan de
todas las divisiones en orden inverso a su obtención es el resultado
final.
• Parte fraccionaria: multiplicando sucesivamente por la base,
cogiendo las partes enteras como parte del resultado.
Estructura de computadores Tema 2: Sistemas de representación numérica
12
Ejemplo: Expresar el número decimal 545,6710 en base 5
Parte entera
545 |__5__ 54510 = 41405
0 109 |__5__
4 21 |_ 5__
1 4
Parte fraccionaria
0,67 * 5 = 3,35 Valor: 3 1 3 3 ... = 3133...5
0,35 * 5 = 1,75
0,75 * 5 = 3,75
0,75 * 5 = 3,75
...
Valor final: 4140,3133...5
Conversión de una base b1 a otra b2
Para realizar este tipo de conversiones desde una base que no sea la
decimal a otra que tampoco lo sea seguimos dos pasos:
• Convertir el valor en base b1 a base decimal
• Convertir de base decimal a b2
Estas conversiones las haremos según los apartados anteriores.
Valor en b1 ⇒ Valor intermedio en base 10 ⇒ Valor final en b2
Ejemplo: Expresar el valor 13189 en base 7.
• Convertimos a decimal (base 10):
13189 = 1·93
+ 3·92
+ 1·91
+ 8·90
= 729 + 243 + 9 + 8 = 98910
• Convertimos a base 7:
989 |__7__ 98910 = 26127
2 141 |__7__
1 20 |__7__
6 2
Estructura de computadores Tema 2: Sistemas de representación numérica
13
Conversiones de base con números no enteros:
Cuando trabajamos con números no enteros tenemos parte entera y
parte fraccionaria.
Hemos visto que para convertir de decimal a cualquier otra base
tenemos que realizar dos procesos cuando tenemos cifras decimales; la parte
entera y la parte fraccionaria.
La parte entera es sencilla, como hemos visto hasta ahora. Para la parte
fraccionaria debemos tener en cuenta las siguientes consideraciones.
Dependiendo del tipo de número que tengamos podemos tener las
siguientes posibilidades.
1 Racionales
1.1 Cifras decimales no periódicas
Procedemos como hemos visto hasta ahora, es decir, multiplicando
sucesivamente por la base y nos quedamos con la parte entera.
0,615 x 2 = 1,250
0,250 x 2 = 0,500
0,500 x 2 = 1
Por tanto: 0,62510 = 0,1012
NOTA: el hecho de que un número N tenga un número finito de
decimales en una base no implica que en otra base sea así (p.e. 0,82510)
1.2 Cifras decimales periódicas
Tenemos que expresarlo en forma de fracción equivalente
irreducible, después la expresaremos en binario (base 2) (numerador
y denominador) y haremos la división en binario.
_
0,666... = 0,6 (periódico)
• Fracción irreducible:
_
x = 0,6 (Lo llamamos x)
_
1 · x = 0,6 (La parte periódica detrás de la coma: ya está)
_
10 · x = 6,6 (Desplazando el número de cifras periódicas)
_ _
10·x - 1·x = 6,6 - 0,6 = 6 (Restando ambas expresiones)
Estructura de computadores Tema 2: Sistemas de representación numérica
14
x = 6 / 9 = 2 / 3 (Fracción equivalente e irreducible)
_
Se puede comprobar que: 2 / 3 = 0,6
• Expresarlo en binario: 102 / 112
• Finalmente, hacer la división binaria:
10 0 |__11__ 102 / 112 = 0,100 100 ...
- 11 0, 100100 ...
------
0 0100
Otros ejemplos:
__
x = 0,07954 (Lo llamamos x)
__
1000 · x = 79,54 (La parte periódica detrás de la coma)
__
1000 00 · x = 7954,54 (Desplazando el número de cifras periódicas)
__ __
1000 00·x - 1000·x = 7954,54 - 79,54 = 7875
(Restando ambas expresiones)
x = 7875 / 99000 = 7 / 88 (Fracción equivalente e irreducible)
__
Se puede comprobar que: 7 / 88 = 0,07954
__
x = 0,563 (Lo llamamos x)
__
10·x = 5,63 (La parte periódica detrás de la coma)
__
1000·x = 563’63 (Restando ambas expresiones)
__ __
1000·x - 10·x = 563,63 - 5,63 = 558
(Restando ambas expresiones)
x = 558 / 990 = 279 / 495 (Fracción equivalente e irreducible)
__
Se puede comprobar que: 279 / 495 = 0,563
• En la práctica lo que se hace para obtener la fracción equivalente
es tomar el número como un entero, le restamos la parte no periódica
y se divide por tantos 9’s como el número de cifras periódicas y
tantos 0’s como las no periódicas.
Estructura de computadores Tema 2: Sistemas de representación numérica
15
2 Irracionales
Tienen infinitas cifras decimales que no se repiten. Los tratamos como
racionales, pero tenemos que considerar que trabajamos con errores, es
decir, los resultados serán aproximados.
El proceso es similar a los racionales no periódicos, solo que en este
caso, necesitamos conocer el número de cifras decimales con las que
nos vamos a quedar.
Supongamos el número PI = 3,141592653 ... (infinitas cifras decimales)
Vamos a considerar que el número PI = 3,1416 (redondeado a 4 cifras)
Al hacer esto estamos cometiendo un error E1 ≤ 10-4
Al convertirlo al sistema binario cometemos otro error E2, tal que:
E2 ≤ E1
Para determinar el número de cifras fraccionarias binarias necesarias
para que se cumpla la desigualdad anterior hacemos lo siguiente:
Sabemos que: E1 ≤ 10-4
Del mismo modo: E2 ≤ 2-n
, donde n = número de cifras fraccionarias.
Debe complirse: E2 ≤ E1
Sustituyendo: 2-n
≤ 10-4
.
Tomamos logaritmos: Log10 2-n
≤ Log10-4
⇒ -n·Log10 2 ≤ -4·Log10 10 ⇒
-n·Log10 2 ≤ -4 ⇒ -n ≤ (-4 / Log10 2) ⇒
n > (4 / Log10 2) ⇒ n > 13,28
Por tanto, necesitaremos al menos 14 cifras decimales en la parte fraccionaria
para no cometer más error al convertir a binario.
0,1416 x 2 = 0,2832 0,1248 x 2 = 0,2496
0,2832 x 2 = 0,5664 0,2496 x 2 = 0,4992
0,5664 x 2 = 1,1328 0,4992 x 2 = 0,9984
0,1328 x 2 = 0,2656 0,9984 x 2 = 1,9968
0,2656 x 2 = 0,5312 0,9968 x 2 = 1,9936
0,5312 x 2 = 1,0624 0,9936 x 2 = 1,9872
0,0624 x 2 = 0,1248 0,9872 x 2 = 1,9744
Por tanto, el resultado será: 3,141610 = 11,001001000011112
(con un error E ≤ 10-4
).
Estructura de computadores Tema 2: Sistemas de representación numérica
16
2.2 Aritmética binaria
La aritmética binaria es básica en las computadoras digitales
Las operaciones aritméticas que vamos a ver son las mismas que para
el sistema decimal:
• suma
• resta
• multiplicación
• división, para la base binaria
Suma
La tabla de adición siguiente nos muestra las 4 reglas básicas para
sumar dígitos binarios:
Valor 1 Valor 2 Suma Acarreo
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
En el último caso tenemos un acarreo, que se sumará en la cifra
siguiente. Entonces tendremos que sumar 3 bits, los dos de las dos cifras
binarias que estamos sumando y el bit de acarreo. Si ambos son 1, al sumarle
el acarreo, obtendremos 1 y volveremos a tener un acarreo.
Ejemplo: Sumar los valores binarios 110011101 y 10110111.
1 1 0 0 1 1 1 0 1
+ 1 0 1 1 0 1 1 1
---------------------------
1 0 0 1 0 1 0 1 0 0
Estructura de computadores Tema 2: Sistemas de representación numérica
17
Resta
La sustracción binaria utiliza las siguientes reglas:
Valor 1 Valor 2 Resta Acarreo
0 0 0 0
0 1 1 -1
1 0 1 0
1 1 0 0
En el segundo caso, lo que haremos será prestar un 1 de la siguiente
columna, o la primera que no sea 0, sustituyendo todos los 0 por 1 desde esa
columna hasta la columna actual (todo esto es en el minuendo).
Ejemplo: Efectuar la diferencia 11101 – 1011.
modificaciones en el minuendo: 0
minuendo: 1 1 1 0 1 29
substraendo: - 1 0 1 1 - 11
------------------ -------
1 0 0 1 0 18
Ejemplo: Efectuar la diferencia 11000 – 10011.
modificaciones en el minuendo: 0 1 1
minuendo: 1 1 0 0 0 24
substraendo: - 1 0 0 1 1 - 19
------------------- ----------
0 0 1 0 1 5
En el caso de que tengamos cifras decimales, lo primero que debemos
hacer es alinear verticalmente las comas binarias antes de efectuar la resta y
rellenar con ceros a la derecha de los números para ajustar las partes
fraccionarias a un mismo número de dígitos.
Ejemplo: Efectuar la diferencia 1101,101 – 11,10111.
modificaciones en el minuendo: 0 1 0 0 1 0 1
minuendo: 1 1 0 1 , 1 0 1 0 0
substraendo: - 1 1 , 1 0 1 1 1
-----------------------------
1 0 0 1 , 1 1 1 0 1
Estructura de computadores Tema 2: Sistemas de representación numérica
18
También podría hacerse como hacemos en el sistema decimal, sumando
los acarreos negativos a la siguiente columna del sustraendo, es decir, en vez
de realizar modificaciones en el minuendo, realizaremos modificaciones en el
sustraendo. Cuando sumemos un acarreo, si en la siguiente columna tengamos
un 1, se produce un nuevo acarreo y seguimos sumando dicho acarreo a la
siguiente columna, hasta llegar a un bit 0.
minuendo: 1 1 0 1 , 1 0 1 0 0
substraendo: - 1 1 , 1 0 1 1 1
modificaciones en el sustraendo: 1 0 0 0 1 0 0
-----------------------------
1 0 0 1 , 1 1 1 0 1
Estructura de computadores Tema 2: Sistemas de representación numérica
19
Multiplicación
La multiplicación de 2 bits sigue las siguientes 4 reglas:
Valor 1 Valor 2 Multiplicación
0 0 0
0 1 0
1 0 0
1 1 1
La multiplicación de números binarios se realiza de la misma forma que
con números decimales. Se realizan los productos parciales, desplazando cada
producto parcial una posición a la izquierda, y luego se suman dichos
productos.
Es aun más sencilla que con números decimales, ya que en binario tan
sólo tenemos dos dígitos: 0 y 1. Cuando multiplicamos por 0 obtenemos 0, y
cuando multiplicamos por 1 obtenemos el mismo número.
Ejemplo: Calcular el producto 1100 x 1011.
1 1 0 0 12
x 1 0 1 1 x 11
--------------- --------
1 1 0 0 132
1 1 0 0
0 0 0 0
+ 1 1 0 0
----------------------
1 0 0 0 0 1 0 0
En el caso de que tengamos cifras decimales, la multiplicación se realiza
exactamente igual, y al final, el número de posiciones decimales en el número
resultante del producto es la suma del número de cifras decimales de los
números que se están multiplicando.
Ejemplo: Calcular el producto binario 11,01 x 101,1.
1 1 , 0 1 3,25
x 1 0 1 , 1 x 5,5
-------------- -------------
1 1 0 1 1 6 2 5
1 1 0 1 1 6 2 5
0 0 0 0 -------------
1 1 0 1 1 7,8 7 5
---------------------
1 0 0 0 1,1 1 1
Estructura de computadores Tema 2: Sistemas de representación numérica
20
División
El algoritmo utilizado por la división binaria se reduce a sustracciones
repetidas del divisor.
Las reglas utilizadas son las siguientes:
Valor 1 Valor 2 División
0 0 No definido
0 1 0
1 0 Imposible
1 1 1
Ejemplo: Efectuar la división 1 1 1 0 1 1 1 / 1 0 0 1
0
1 1 1 0 1 1 1 |_1 0 0 1_ 1 1 9 |__9__
- 1 0 0 1 1 1 0 1 - 9 1 3
------------ ------
0 1 0 1 1 2 9
- 1 0 0 1 - 2 7
------------ -------
0 0 1 0 1 1 2
- 1 0 0 1
------------
0 0 1 0
En el caso de fracciones binarias se trata de la misma forma que la
división de fracciones decimales, es decir, se convierte el divisor en un entero
desplazando la coma binaria a la derecha; el dividendo se desplaza el mismo
número de posiciones.
Ejemplo: Realizar la división 111,00001 / 1,01
1 1 1 0 0 , 0 0 1 |__1 0 1___ 7,03125 / 1,250 = 5,625
- 1 0 1 1 0 1 1 0 1
--------- 0 1 1
0 1 0 0 0 0 1 0 0 0
- 1 0 1 - 1 0 1
----------- -------------- 0
0 1 1 0 0 1 1 1 1 0
- 1 0 1 - 1 0 1
---------- ------------
0 0 1 0 1 0 0 1
- 1 0 1
------------
0 0 0
Estructura de computadores Tema 2: Sistemas de representación numérica
21
El resultado final será el cociente pero cogiendo tantas cifras decimales
como tenga el dividendo, después de haber desplazado la coma. En este caso
son 3. Por tanto, el resultado es: 101,101.
NOTA: Los computadores utilizan una forma de representación de los números
negativos llamada “complemento”, que nos facilita la realización de las
operaciones de resta, ya que utiliza circuitos sumadores. La veremos en el
siguiente apartado.
Estructura de computadores Tema 2: Sistemas de representación numérica
22
2.3 Representación de la información en las
computadoras
En las computadoras, la información se procesa por conmutación y
almacenamiento de señales eléctricas. Se utiliza el sistema binario por la
facilidad y estabilidad que tiene representar dos estados lógicos diferenciados.
Dependiendo de las familias lógicas utilizadas, se utiliza un valor de
tensión para representar el “0” lógico y otro valor para el “1” lógico. No se trata
de un valor exacto, sino de un margen.
• Familia TTL: “0” = 0,2 v / “1” = 3,3 v
• Familia CMOS: “0” = 0..3 v / “1” = 7..10 v
• Familia ECL (lóg.neg.): “0” = -0,75 v / “1” = -1,5 v
Los dígitos binarios se suelen transmitir y recibir como una sucesión de
impulsos. Existen dos técnicas para distinguir entre los dos estados lógicos:
• Con retorno a cero (RZ): un impulso positivo representa un “1” y un
impulso negativo representa un “0”.
• Sin retorno a cero (NRZ): el “0” se representa por ausencia de
impulso, y el “1” se representa por un impulso. Lógicamente, los
circuitos receptores deben mantenerse sincronizados con la señal.
1
0
11
1011
Estructura de computadores Tema 2: Sistemas de representación numérica
23
Números con signo
Los sistemas digitales deben ser capaces de manejar números positivos
y negativos. Un número binario con signo queda determinado por su magnitud
(valor) y su signo (positivo/negativo).
El símbolo “-“ del sistema decimal no se puede representar en binario.
Debido a esto, existen 3 formatos de representación de números con signo:
• Signo-magnitud:
• Complemento a la base
• Complemento a la base menos uno
En todos ellos, el signo del número viene representado por un bit
adicional, el “Bit de signo”, que se coloca en el extremo izquierdo del número
binario con signo. Se utiliza el siguiente convenio:
“0”: signo positivo “1”: signo negativo
Método signo-magnitud
Se trata de reservar el bit del extremo izquierdo (MSB) como bit de
signo; los restantes representan el valor numérico del número en formato
binario (magnitud).
n bits
Bs Magnitud
1 bit (n-1) bits
Por ejemplo, para n=8:
+1110 = 0 000 1011
- 1110 = 1 000 1011
En un registro de n bits, los números que pueden representarse serán 0
.. 2n
-1. En total 2n
números.
Al utilizar el primer bit como bit de signo, no se reduce la cantidad de
números que se pueden representar (2n
), pero si el valor mínimo y máximo,
pues en vez de tener n bits para la magnitud ahora tendremos n-1 bits. Por
tanto, el rango de valores que podremos representar en signo-magnitud es:
-(2n-1
-1) .. 0 .. +(2n-1
-1)
Esta representación presenta ciertos inconvenientes:
• Pues para cualquier operación aritmética debemos comprobar
primero el signo, para después sumar o restar en función del mismo.
• El diseño de circuitos lógicos que realicen operaciones aritméticas
con números binarios en signo-magnitud no es fácil.
• Tenemos dos representaciones para el número 0:
+010 = 0 000 0000 -010 = 1 000 0000
Estructura de computadores Tema 2: Sistemas de representación numérica
24
Método del complemento
La utilización de números complementados es un concepto
especialmente útil para simplificar la resta, pues permite realizarla utilizando
circuitos sumadores.
Los números positivos en este sistema se representan de la misma
forma que los números positivos en formato signo-magnitud, simplemente se
añade un 0 como bit de signo a la magnitud del número. El número 0 se
identifica como positivo y tiene por tanto un bit de signo 0 y una magnitud de
todos ceros.
Los números negativos son el complemento del correspondiente
número positivo.
Existen dos variantes en la forma de complemento: el complemento a la
base y el complemento a la base menos uno.
NOTA: Cuando hay decimales, se quita la coma, se hace el
complemento correspondiente y de nuevo se coloca la coma.
Complemento a la base
El complemento a la base de un número ‘a’ de n cifras es el valor:
Cb = bn
– |a| con b = base del sistema
n = número de dígitos incluido el signo
|a| = valor absoluto del número
Para el sistema binario recibe el nombre de complemento a 2 o
complemento verdadero:
b=2 => C2 = 2n
– |a|
Complemento a la base menos 1
El complemento a la base menos 1 de un número ‘a’ es el valor:
Cb-1 = bn
– 1 – |a| b = base del sistema
n = número de dígitos incluido el signo
|a| = valor absoluto del número
Para el sistema binario recibe el nombre de complemento a 1 o
complemento restringido:
b=2 => C1 = 2n
– 1 – |a|
Estructura de computadores Tema 2: Sistemas de representación numérica
25
Ejemplo: considerando la base decimal (b=10), obtener los complementos a la
base (C10) y a la base menos uno (C9):
a = 2310 Tenemos 2 dígitos (n = 2)
C10: -2310 = 102
– |a| = 100 – 23 = 77C10
C9 : -2310 = 102
– 1 – |a| = 100 – 1 – 23 = 76C9
a = 125810 Tenemos 4 dígitos (n = 4)
C10: -125810 = 104
– |a| = 10000 – 1258 = 8742C10
C9 : -125810 = 104
– 1 – |a| = 10000 – 1 – 1258 = 8741C9
Ejemplo: considerando la base binaria (b=2) y 8 dígitos (n=8), obtener el
correspondiente C1 y C2 de los siguientes valores:
a = 1010 = 0000 10102
C2: -1010 = 28
– |a| = 1 0000 0000 – 0000 1010 = 1111 0110C2
0 1 1 1 1 1 1
1 0 0 0 0 0 0 0 0
- 0 0 0 0 1 0 1 0
--------------------------
1 1 1 1 0 1 1 0
C1: -1010 = 28
– 1 – |a| = 1 0000 0000 – 1 – 0000 1010 =
= 1111 1111 – 0000 1010 =
= 1111 0101C1
1 1 1 1 1 1 1 1
- 0 0 0 0 1 0 1 0
-----------------------
1 1 1 1 0 1 0 1
En la práctica, y SOLO para el sistema binario (b=2):
• El complemento a 1 se obtiene directamente sin más que cambiar
en el número todos los 0’s por 1’s y viceversa.
• El complemento a 2 se obtiene sumando 1 al complemento a 1.
Aplicando esta regla en el ejemplo anterior obtenemos los mismos resultados:
a = 1010 = 0000 10102
C1 = 1111 0101
C2 = 1111 0101 + 1 = 1111 0110
Podemos comprobar que los números negativos siempre tienen el bit de signo
(MSB) a 1, y los positivos a 0.
Estructura de computadores Tema 2: Sistemas de representación numérica
26
Operaciones aritméticas de números con signo
Suma
Cuando se suman dos números binarios A y B (A+B) pueden producirse
cuatro casos:
• A y B son positivos ⇒ A+B ≥ 0
• A y B son negativos ⇒ A+B < 0
• A es positivo y B negativo, con A > |B| ⇒ A+B ≥ 0
• A es positivo y B negativo, con |B| > A ⇒ A+B < 0
En cualquier caso, el procedimiento de la suma es muy sencillo: sumar los
dos números y descartar el bit de acarreo final (si lo hay).
Ejemplos: Consideremos números con signo de 8 bits (n=8).
• A y B son positivos (A=7, B=4)
710 = 0000 0111
410 = 0000 0100
0 0 0 0 0 1 1 1 7
+ 0 0 0 0 0 1 0 0 + 4
----------------------- ------
0 0 0 0 1 0 1 1 11
• A y B son negativos (A=-5, B=-9)
510 = 0000 0101 C2 = 1111 1010 + 1 = 1111 1011
910 = 0000 1001 C2 = 1111 0110 + 1 = 1111 0111
1 1 1 1 1 0 1 1 -5
+ 1 1 1 1 0 1 1 1 + -9
------------------------ -------
1 1 1 1 1 0 0 1 0 -14
En este caso tenemos acarreo, que descartamos. Como la suma es
negativa, el resultado está en C2.
Estructura de computadores Tema 2: Sistemas de representación numérica
27
Para comprobar el resultado: C2 = bn
– |a| => |a| = bn
– C2.
|a| = 28
– C2 = 1 0000 0000 – 1111 0010
Mod. minuendo: 0 1 1 1 1 1 1
1 0 0 0 0 0 0 0 0
- 1 1 1 1 0 0 1 0
------------------------
0 0 0 0 1 1 1 0 ==> |a| = 14 ==> a = -14
• A es positivo y B negativo, con A > |B| (A=15, B=-6)
1510 = 0000 1111
610 = 0000 0110 C2 = 1111 1001 + 1 = 1111 1010
0 0 0 0 1 1 1 1 15
+ 1 1 1 1 1 0 1 0 + -6
----------------------- -------
1 0 0 0 0 1 0 0 1 9
Como siempre, el bit de acarreo se desprecia.
• A es positivo y B negativo, con |B| > A (A=16, B=-24)
1610 = 0001 0000
2410 = 0001 1000 C2 = 1110 0111 + 1 = 1110 1000
0 0 0 1 0 0 0 0 16
+ 1 1 1 0 1 0 0 0 + -24
----------------------- --------
1 1 1 1 1 0 0 0 -8
Cuando se suman dos números y el número de bits requerido para representar
la suma excede al número de bits de los dos números, se produce un
desbordamiento (overflow), que se indica mediante un bit de signo incorrecto
(p.e. negativo cuando A y B son positivos).
Estructura de computadores Tema 2: Sistemas de representación numérica
28
Resta
El mecanismo es cambiar el signo al sustraendo y sumar al minuendo:
a – b = a + (-b)
La forma de cambiar el signo al sustraendo es mediante la
complementación (C1 ó C2).
Complemento a 1 (C1)
Utilizando la forma de C1 se puede convertir la operación de resta de
dos números binarios en una operación de suma. La forma de operar consiste
en calcular el C1 del sustraendo y sumarlo al minuendo.
Tenemos dos posibilidades
• Si se produce acarreo, éste se suma al bit menos significativo de la
suma (acarreo circular), para corregir el error que se produce.
• Si no hay acarreo: el resultado es negativo y la solución se obtiene
complementando a 1 el resultado de la suma.
Ejemplo: Calcular la diferencia 11001 – 10110, utilizando C1.
Resta ordinaria: Utilizando C1:
0 1 1 1
1 1 0 0 1 1 1 0 0 1
- 1 0 1 1 0 + 0 1 0 0 1
----------------- ----------------
0 0 0 1 1 1 0 0 0 1 0 Acarreo
+ 1
----------------
0 0 0 1 1
El C1 tiene la ventaja de que es sencillo de diseñar un circuito, pues tan
solo necesita un inversor para cada bit, que se colocarán en paralelo y serán
los bits de entrada de un circuito sumador.
Pero el C1 tiene dos inconvenientes:
• Hay dos formas de expresar el cero (+0 y -0):
+0 = 00 .. 00 -0 = 11 .. 11
• La resta de dos números no es válida cuando son iguales (el
resultado es –0 (cero negativo).
Con el C2 se eliminan estos problemas.
Estructura de computadores Tema 2: Sistemas de representación numérica
29
Complemento a 2 (C2)
Del mismo modo que en C1, calculamos el C2 del substraendo y lo
sumamos al minuendo.
También tenemos dos posibilidades:
• Si se produce acarreo: éste se desprecia (al contrario que con C1).
• Si no hay acarreo: el resultado es negativo y la solución se obtiene
complementando a 2 el resultado de la suma.
Ejemplo: Calcular la diferencia binaria 1012 – 110112.
Resta ordinaria: Utilizando C1: Utilizando C2:
0
1 1 0 1 1 0 0 1 0 1 0 0 1 0 1
- 0 0 1 0 1 + 0 0 1 0 0 + 0 0 1 0 1
---------------- ---------------- ----------------
1 0 1 1 0 0 0 1 0 0 1 0 0 1 0 1 0
(Cambiamos el (Como no hay (Como no hay
signo al final) acarreo => C1) acarreo => C2)
Res: -10110 Res: -10110 Res: -10110
Resta ordinaria: como el sustraendo es menor que el minuendo,
hacemos la resta poniendo el mayor como sustraendo, pero luego debemos
poner el resultado como negativo.
Utilizando C1 y C2: como no hay acarreo, hacemos el C1/C2, y por
tanto, el resultado es negativo.
Estructura de computadores Tema 2: Sistemas de representación numérica
30
Si consideramos la base decimal, la forma de operar sería la misma,
teniendo que obtener el C9 o C10.
Ejemplo: Calcular la diferencia 30010 – 298,6410 = 1,3610, utilizando C9 y C10:
a = 298,6410 a’ = 2986410 (sin coma decimal)
Utilizando C10:
C10: 105
– |a’| = 100000 – 29864 = 70136
300 C10 = 701,36
+ 701,36
---------------
1001,36 à Bit de acarreo se desprecia: 1,36
C10: 103
– |a| = 1000 – |a| = 1000 – 298,64 = 701,36
300
+ 701,36
---------------
1001,36 à Bit de acarreo se desprecia: 1,36
Utilizando C9:
C9: 105
– 1 – |a’| = 100000 – 1 – |a| = 99999 – 29864 = 70135
300 C9 = 701,35
+ 701,35
---------------
1001,35 à Bit de acarreo se suma al resultado
+ 1
---------------
1,36
C9: 103
– 1 – |a| = 1000 – 1 – |a| = 999 – 298,64 = 700,36
300
+ 700,36
---------------
1000,36 à Bit de acarreo se suma al resultado
+ 1
---------------
0,37
RECUERDA: Para calcular el complemento (cualquiera), cuando hay
decimales, se quita la coma, se hace el complemento correspondiente y de
nuevo se coloca la coma.
¡ MAL HECHO !
Estructura de computadores Tema 2: Sistemas de representación numérica
31
Multiplicación y División
En ambos casos realizaremos la operación sin tener en cuenta el signo
de los dos números binarios, y posteriormente le aplicaremos el signo, teniendo
en cuenta:
• Si los dos son del mismo signo: resultado positivo.
• Si los dos son de diferente signo: resultado negativo.

Más contenido relacionado

La actualidad más candente

Substation Protection Systems Presentation Group II.pptx
Substation Protection Systems Presentation Group II.pptxSubstation Protection Systems Presentation Group II.pptx
Substation Protection Systems Presentation Group II.pptxIntishar Rahman
 
Vacuum Tubes--- Electronics Presentation 1904
Vacuum Tubes--- Electronics Presentation 1904Vacuum Tubes--- Electronics Presentation 1904
Vacuum Tubes--- Electronics Presentation 1904Shaheryar Khan
 
semiconductors and metal contacts
semiconductors and metal contactssemiconductors and metal contacts
semiconductors and metal contactsShashank Sharma
 
SCR based On-chip ESD protection for LNA
SCR based On-chip ESD protection for LNASCR based On-chip ESD protection for LNA
SCR based On-chip ESD protection for LNASofics
 
Electrical Transformer
Electrical TransformerElectrical Transformer
Electrical TransformerAnaseem Hanini
 
DIFFUSION AND DRIFT CURRENT
DIFFUSION AND DRIFT CURRENT DIFFUSION AND DRIFT CURRENT
DIFFUSION AND DRIFT CURRENT NumanUsama
 
Difference between bjt and fet
Difference between bjt and fetDifference between bjt and fet
Difference between bjt and fetBangulkhanbaloch
 
Zener and avalanche diode
Zener and avalanche diode    Zener and avalanche diode
Zener and avalanche diode AnuJyothi2
 

La actualidad más candente (20)

Substation Protection Systems Presentation Group II.pptx
Substation Protection Systems Presentation Group II.pptxSubstation Protection Systems Presentation Group II.pptx
Substation Protection Systems Presentation Group II.pptx
 
Vacuum Tubes--- Electronics Presentation 1904
Vacuum Tubes--- Electronics Presentation 1904Vacuum Tubes--- Electronics Presentation 1904
Vacuum Tubes--- Electronics Presentation 1904
 
Thermistors
ThermistorsThermistors
Thermistors
 
MOSFET.pptx
MOSFET.pptxMOSFET.pptx
MOSFET.pptx
 
semiconductors and metal contacts
semiconductors and metal contactssemiconductors and metal contacts
semiconductors and metal contacts
 
Mosfet
MosfetMosfet
Mosfet
 
SCR based On-chip ESD protection for LNA
SCR based On-chip ESD protection for LNASCR based On-chip ESD protection for LNA
SCR based On-chip ESD protection for LNA
 
CMOS
CMOS CMOS
CMOS
 
Varactor diode
Varactor diodeVaractor diode
Varactor diode
 
Transistor notes
Transistor notesTransistor notes
Transistor notes
 
Electrical Transformer
Electrical TransformerElectrical Transformer
Electrical Transformer
 
Rtd
RtdRtd
Rtd
 
DIFFUSION AND DRIFT CURRENT
DIFFUSION AND DRIFT CURRENT DIFFUSION AND DRIFT CURRENT
DIFFUSION AND DRIFT CURRENT
 
Metal oxide semiconductor
Metal oxide semiconductorMetal oxide semiconductor
Metal oxide semiconductor
 
Semiconductor diode
Semiconductor diodeSemiconductor diode
Semiconductor diode
 
An Introduction to Crosstalk Measurements
An Introduction to Crosstalk MeasurementsAn Introduction to Crosstalk Measurements
An Introduction to Crosstalk Measurements
 
Difference between bjt and fet
Difference between bjt and fetDifference between bjt and fet
Difference between bjt and fet
 
MOSFET....complete PPT
MOSFET....complete PPTMOSFET....complete PPT
MOSFET....complete PPT
 
Metal Semi-Conductor Junctions
Metal Semi-Conductor JunctionsMetal Semi-Conductor Junctions
Metal Semi-Conductor Junctions
 
Zener and avalanche diode
Zener and avalanche diode    Zener and avalanche diode
Zener and avalanche diode
 

Similar a Electrónica digital: Tema 2 Sistema de representación numérica

Similar a Electrónica digital: Tema 2 Sistema de representación numérica (20)

9. electronica digital
9. electronica digital9. electronica digital
9. electronica digital
 
4. electronica digital
4. electronica digital4. electronica digital
4. electronica digital
 
4. electronica digital
4. electronica digital4. electronica digital
4. electronica digital
 
4. electronica digital
4. electronica digital4. electronica digital
4. electronica digital
 
4. electronica digital
4. electronica digital4. electronica digital
4. electronica digital
 
La electronica digital
La electronica digitalLa electronica digital
La electronica digital
 
Sistemas numericos
Sistemas numericosSistemas numericos
Sistemas numericos
 
Sistemas De NumeracióN
Sistemas De NumeracióNSistemas De NumeracióN
Sistemas De NumeracióN
 
Asignacion #3
Asignacion #3Asignacion #3
Asignacion #3
 
Sistemas numericos
Sistemas numericosSistemas numericos
Sistemas numericos
 
Nombr
NombrNombr
Nombr
 
Asignacion #3
Asignacion  #3Asignacion  #3
Asignacion #3
 
Sistemas Numéricos – Conversiones
Sistemas Numéricos – ConversionesSistemas Numéricos – Conversiones
Sistemas Numéricos – Conversiones
 
Sistemas de numeración
Sistemas de numeraciónSistemas de numeración
Sistemas de numeración
 
Sistemas de numeración
Sistemas de numeraciónSistemas de numeración
Sistemas de numeración
 
1.1 a identifica sistemas de numeracion
1.1 a identifica sistemas de numeracion1.1 a identifica sistemas de numeracion
1.1 a identifica sistemas de numeracion
 
Aritmética binaria para todos
Aritmética binaria para todosAritmética binaria para todos
Aritmética binaria para todos
 
Aritmética binaria
Aritmética binariaAritmética binaria
Aritmética binaria
 
Sistemas numericos y de conversion
Sistemas numericos y de conversionSistemas numericos y de conversion
Sistemas numericos y de conversion
 
Sistemas de numeración
Sistemas de numeraciónSistemas de numeración
Sistemas de numeración
 

Más de SANTIAGO PABLO ALBERTO

Manual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaManual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaSANTIAGO PABLO ALBERTO
 
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez SANTIAGO PABLO ALBERTO
 
Programación de microcontroladores PIC en C con Fabio Pereira
Programación de microcontroladores PIC en  C con Fabio PereiraProgramación de microcontroladores PIC en  C con Fabio Pereira
Programación de microcontroladores PIC en C con Fabio PereiraSANTIAGO PABLO ALBERTO
 
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...SANTIAGO PABLO ALBERTO
 
Programación de autómatas PLC OMRON CJ/CP1
Programación de  autómatas PLC OMRON CJ/CP1Programación de  autómatas PLC OMRON CJ/CP1
Programación de autómatas PLC OMRON CJ/CP1SANTIAGO PABLO ALBERTO
 
Manual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTManual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTSANTIAGO PABLO ALBERTO
 
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...SANTIAGO PABLO ALBERTO
 
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...SANTIAGO PABLO ALBERTO
 
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...SANTIAGO PABLO ALBERTO
 
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...SANTIAGO PABLO ALBERTO
 
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...SANTIAGO PABLO ALBERTO
 

Más de SANTIAGO PABLO ALBERTO (20)

secuencia electroneumática parte 1
secuencia electroneumática parte 1secuencia electroneumática parte 1
secuencia electroneumática parte 1
 
secuencia electroneumática parte 2
secuencia electroneumática parte 2secuencia electroneumática parte 2
secuencia electroneumática parte 2
 
Manual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzadaManual de teoría y practica electroneumática avanzada
Manual de teoría y practica electroneumática avanzada
 
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez Programacion de PLC basado en Rslogix 500 por Roni Domínguez
Programacion de PLC basado en Rslogix 500 por Roni Domínguez
 
Programación de microcontroladores PIC en C con Fabio Pereira
Programación de microcontroladores PIC en  C con Fabio PereiraProgramación de microcontroladores PIC en  C con Fabio Pereira
Programación de microcontroladores PIC en C con Fabio Pereira
 
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
Análisis y Diseño de Sistemas de Control Digital por Ricardo Fernandez del Bu...
 
Arduino: Arduino de cero a experto
Arduino: Arduino de cero a expertoArduino: Arduino de cero a experto
Arduino: Arduino de cero a experto
 
Fisica I
Fisica IFisica I
Fisica I
 
Quimica.pdf
Quimica.pdfQuimica.pdf
Quimica.pdf
 
Manual básico PLC OMRON
Manual básico PLC OMRON Manual básico PLC OMRON
Manual básico PLC OMRON
 
Programación de autómatas PLC OMRON CJ/CP1
Programación de  autómatas PLC OMRON CJ/CP1Programación de  autómatas PLC OMRON CJ/CP1
Programación de autómatas PLC OMRON CJ/CP1
 
Manual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMARTManual del sistema del controlador programable S7-200 SMART
Manual del sistema del controlador programable S7-200 SMART
 
Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART Catálogo de PLC S7-200 SMART
Catálogo de PLC S7-200 SMART
 
PLC: Automatismos industriales
PLC: Automatismos industrialesPLC: Automatismos industriales
PLC: Automatismos industriales
 
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
PLC: Buses industriales y de campo practicas de laboratorio por Jose Miguel R...
 
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...PLC y Electroneumática: Electricidad y Automatismo eléctrico por  Luis Miguel...
PLC y Electroneumática: Electricidad y Automatismo eléctrico por Luis Miguel...
 
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
Electrónica: Diseño y desarrollo de circuitos impresos con Kicad por Miguel P...
 
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
PLC: Diseño, construcción y control de un motor doble Dahlander(cuatro veloci...
 
PLC: Motor Dahlander
PLC: Motor DahlanderPLC: Motor Dahlander
PLC: Motor Dahlander
 
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...Electrónica digital:  Introducción a la Lógica Digital - Teoría, Problemas y ...
Electrónica digital: Introducción a la Lógica Digital - Teoría, Problemas y ...
 

Último

LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfAdelaHerrera9
 
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdfSEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdffredyflores58
 
Peligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionPeligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionOsdelTacusiPancorbo
 
Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCANDECE
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIAMayraOchoa35
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadANDECE
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidasNelsonQuispeQuispitu
 
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBRQUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBRyanimarca23
 
Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...
Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...
Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...ssuser646243
 
CFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric ProjectCFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric ProjectCarlos Delgado
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)ssuser6958b11
 
Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)mendezruben1901
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.pptVitobailon
 
Sistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosSistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosfranchescamassielmor
 
NOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptxNOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptxJairReyna1
 
Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1victorrodrigues972054
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
Tarea de UTP matematices y soluciones ingenieria
Tarea de UTP matematices y soluciones ingenieriaTarea de UTP matematices y soluciones ingenieria
Tarea de UTP matematices y soluciones ingenieriaSebastianQP1
 
Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)dianamateo1513
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdffredyflores58
 

Último (20)

LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdfLEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
LEYES DE EXPONENTES SEMANA 1 CESAR VALLEJO.pdf
 
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdfSEMANA  6 MEDIDAS DE TENDENCIA CENTRAL.pdf
SEMANA 6 MEDIDAS DE TENDENCIA CENTRAL.pdf
 
Peligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionPeligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacion
 
Edificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRCEdificio residencial Becrux en Madrid. Fachada de GRC
Edificio residencial Becrux en Madrid. Fachada de GRC
 
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIACLASE 2 MUROS CARAVISTA EN CONCRETO  Y UNIDAD DE ALBAÑILERIA
CLASE 2 MUROS CARAVISTA EN CONCRETO Y UNIDAD DE ALBAÑILERIA
 
SOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidadSOUDAL: Soluciones de sellado, pegado y hermeticidad
SOUDAL: Soluciones de sellado, pegado y hermeticidad
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidas
 
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBRQUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
 
Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...
Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...
Como de produjo la penicilina de manera masiva en plena guerra mundial Biotec...
 
CFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric ProjectCFRD simplified sequence for Mazar Hydroelectric Project
CFRD simplified sequence for Mazar Hydroelectric Project
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
 
Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)Sistema de Base de Datos (Rubén Alberto)
Sistema de Base de Datos (Rubén Alberto)
 
Fe_C_Tratamientos termicos_uap _3_.ppt
Fe_C_Tratamientos termicos_uap   _3_.pptFe_C_Tratamientos termicos_uap   _3_.ppt
Fe_C_Tratamientos termicos_uap _3_.ppt
 
Sistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosSistema de gestión de turnos para negocios
Sistema de gestión de turnos para negocios
 
NOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptxNOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptx
 
Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
Tarea de UTP matematices y soluciones ingenieria
Tarea de UTP matematices y soluciones ingenieriaTarea de UTP matematices y soluciones ingenieria
Tarea de UTP matematices y soluciones ingenieria
 
Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
 

Electrónica digital: Tema 2 Sistema de representación numérica

  • 1. Estructura de computadores Tema 2: Sistemas de representación numérica 1 Tema 2: Sistemas de representación numérica 2.1 Sistemas de Numeración Definiciones previas Comenzaremos por definir unos conceptos fundamentales. Existen 2 tipos de computadoras: • Analógicas: actúan bajo el control de variables continuas, es decir, que toman infinitos valores. • Digitales: actúan bajo el control de variables discretas, es decir, que pueden tomar un número finito de valores en el tiempo. Las computadoras con las que vamos a tratar son digitales. Sistema de numeración: es un conjunto de reglas, signos y convenios que nos permiten expresar, verbal y gráficamente, las cantidades de las magnitudes o valores numéricos. Base de un sistema de numeración: es el número de signos distintos que se emplean en el sistema. Alfabeto de un sistema de numeración: son todos y cada uno de los signos que se emplean en el sistema. A partir de ellos se expresarán todas las cantidades. Por ejemplo, el sistema de numeración decimal utiliza diez dígitos: Base: 10 Alfabeto: 0,1,2,3,4,5,6,7,8,9.
  • 2. Estructura de computadores Tema 2: Sistemas de representación numérica 2 Clasificación Los sistemas de numeración se clasifican en: posicionales y no posicionales. 1. Sistemas posicionales En ellos, cada cifra de un valor numérico contribuye al valor final dependiendo de su valor y de la posición que ocupa dentro de él (valor relativo). En estos sistemas tenemos tantos símbolos como la base del sistema. Los números mayores que la base se representan por medio de varias cifras. El valor final será la suma de una serie de potencias de la base del sistema (B): N = An·Bn + An-1·Bn-1 + ... + A1·B1 + A0·B0 Donde Ai son las distintas cifras del valor numérico e ‘i’ su posición. 2. Sistemas no posicionales Al contrario que en el caso anterior, en este caso la contribución de cada cifra no depende del lugar que ocupa. Un ejemplo de este sistema serían los números romanos: La combinación XXI equivale a 21. Podemos ver cómo la cifra X aparece dos veces y siempre tiene el mismo valor: 10 unidades, independientemente de su posición. El inconveniente que tienen estos sistemas es que para escribir valores numéricos grandes son necesarios muchos símbolos, y además resulta difícil efectuar operaciones aritméticas con ellos, cosa que no sucede con los posicionales. Los sistemas de numeración que veremos a continuación son todos sistemas posicionales. A partir de ahora, para evitar confusiones, cuando expresemos un valor numérico pondremos un subíndice al final indicando la base en la que se expresa dicho valor, salvo que por el contexto quede suficientemente claro: 22510 = Base decimal 110112 = Base binaria
  • 3. Estructura de computadores Tema 2: Sistemas de representación numérica 3 Sistema decimal Es el sistema que utilizamos habitualmente las personas. Base: 10 Alfabeto: 0,1,2,3,4,5,6,7,8,9 Cumple la fórmula anterior (B=10): N = An·10n + An-1·10n-1 + ... + A1·101 + A0·100 Ejemplo: 22510 = 2·102 + 2·101 + 5·100 = 200 + 20 + 5
  • 4. Estructura de computadores Tema 2: Sistemas de representación numérica 4 Sistema binario Es el sistema utilizado por los computadores. Base: 2 Alfabeto: 0,1 Este sistema, presenta el inconveniente de que necesita muchas cifras para la representación de un número grande, y es muy engorroso para un humano. Sin embargo, el sistema binario es el más adecuado a las máquinas electrónicas por varias razones: 1. La mayor parte de las computadoras existentes representan la información y la procesan mediante elementos y circuitos electrónicos de dos estados (relés, núcleos de ferrita, etc.). 2. Por la seguridad y la rapidez de respuesta de los elementos físicos de dos estados diferenciados (ON / OFF). 3. Las operaciones aritméticas son sencillas. Los quince primeros números binarios se escriben: Decimal Binario 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111
  • 5. Estructura de computadores Tema 2: Sistemas de representación numérica 5 Conversión binario-decimal La forma más sencilla de realizar esta conversión es desarrollando la fórmula que vimos para los sistemas posicionales (suma de potencias de la base). N = An·Bn + An-1·Bn-1 + ... + A1·B1 + A0·B0 Donde Ai son las distintas cifras del valor numérico e ‘i’ su posición. B = 2 Ejemplo 1: Dado el número binario: “10112”, encontrar el equivalente decimal. Si desarrollamos el número dado como potencias de 2 tendremos: 10112 = 1·23 + 0·22 + 1·21 + 1·20 = 1·8 + 0·4 + 1·2 + 1·1 = = 8 + 2 + 1 = 1110 Ejemplo 2: Ahora vamos a realizar lo mismo pero con cifras decimales. Dado el número binario: “1011,0112”, encontrar el equivalente decimal. 1011,0112 = 1·23 + 0·22 + 1·21 + 1·20 + 0·2-1 + 1·2-2 + 1·2-3 = = 1·8 + 0·4 + 1·2 + 1·1 + 0·1/2 + 1·¼ + 1·1/8 = 11,375 Conversión decimal-binario Una forma de realizar esta conversión sería separar la parte entera de la parte fraccionaria, y operar del siguiente modo: 1. La parte entera se divide tantas veces como sea posible por la base (2), hasta que el cociente sea 0 o 1. El último cociente y los restos obtenidos, al escribirlos en orden inverso a su obtención, nos dan el resultado. 2. La parte fraccionaria se multiplica por la base (2); la parte entera obtenida (0..1) representa la cifra binaria. Se procede de forma iterativa con la parte fraccionaria que nos vaya quedando, hasta que sea 0 o veamos que el resultado será periódico o infinitas cifras decimales. El resultado será la unión de las partes enteras, en el orden que las hemos obtenido.
  • 6. Estructura de computadores Tema 2: Sistemas de representación numérica 6 Ejemplo 1: Vamos a obtener el equivalente binario del valor decimal: 1110 En este caso tan sólo tenemos parte entera. 11 |__2__ 1 5 |__2__ 1 2 |__2__ Según esto, el equivalente será: 0 1 1110 = 10112 Puede comprobarse el resultado con los ejemplos anteriores. Ejemplo 2: Expresar el número decimal 109,62510 en el sistema binario. Parte entera 109 |__2__ Obtenemos el valor 11011012 1 54 |__2__ 0 27 |__2__ 1 13 |__2__ 1 6 |__2__ 0 3 |__2__ 1 1 Parte fraccionaria 0,625 * 2 = 1,250 Obtenemos el valor: 1012 0,250 * 2 = 0,5 0,5 * 2 = 1,0 El resultado final es la unión de ambos valores: 109,62510 = 1101101,1012
  • 7. Estructura de computadores Tema 2: Sistemas de representación numérica 7 Sistema Octal Base: 8 Alfabeto: 0,1,2,3,4,5,6,7 El interés de este sistema proviene de que su conversión al binario resulta sencilla, por ser 8 = 23 . Se usa bastante con listados de programas y volcados de memoria (dump), pues permite impresiones mucho más compactas que con el sistema binario, ya que cada dígito octal equivale a 3 dígitos binarios. Los ocho primeros números octales se escriben: Octal Decimal Binario 0 0 000 1 1 001 2 2 010 3 3 011 4 4 100 5 5 101 6 6 110 7 7 111 Conversión octal-binaria Para convertir un número expresado en base 8 a base 2, simplemente sustituimos cada una de las cifras que lo forman por sus tres cifras binarias equivalentes. Ejemplo: 375,4210 = 011 111 101,100 010 Conversión binaria-octal Se realiza a la inversa, comenzando desde la coma decimal hacia la izquierda para la parte entera, rellenando con 0’s a la izquierda si fuera necesario; y desde la coma decimal hacia la derecha para la parte fraccionaria, rellenando con 0’s a la derecha si fuera necesario. Ejemplo 1: 11111101,1000102 = 011 111 101,100 0102 = 375,4210 Ejemplo 2: 11010,10112 = 011 010,101 1002 = 32,5410
  • 8. Estructura de computadores Tema 2: Sistemas de representación numérica 8 Conversión octal-decimal Se realiza del mismo modo que de binario a decimal, teniendo en cuenta que la base ahora es B=8. Ejemplo: 345,58 = 3·82 + 4·81 + 5·80 + 5·8-1 = 192 + 32 + 5 + 0,625 = 229,62510 Conversión decimal-octal Se realiza del mismo modo que de decimal a binario, dividiendo la parte entera de forma sucesiva por la base B=8, y multiplicando la parte fraccionaria por la base. Ejemplo: Expresar el número decimal 1036,3510 en octal. Parte entera 1036 |__8__ El resultado será: 103610 = 20148 23 129 |__8__ 76 49 16 |__8__ 4 1 0 2 Parte fraccionaria 0,35 * 8 = 2,8 Obtenemos el valor: 26314...8 0,8 * 8 = 6,4 0,4 * 8 = 3,2 0,2 * 8 = 1,6 0,6 * 8 = 4,8 El resultado final es la unión de ambos valores: 1036,3510 = 2014,26314...8
  • 9. Estructura de computadores Tema 2: Sistemas de representación numérica 9 Sistema Hexadecimal Base: 16 Alfabeto: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F El interés de este sistema proviene de que su conversión al binario resulta sencilla, por ser 16 = 24 . Esto significa que cada grupo de 4 bits (dígitos en binario), equivale a uno solo en hexadecimal, con lo cual, obtendremos representaciones mucho más compactas. Conversión hexadecimal-binario Basta con sustituir cada símbolo hexadecimal por su equivalente en binario, según se indica en la tabla siguiente: Hexadecimal 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 Ejemplo: Hállese el equivalente binario del número 9A7E16 9A7E16 = 1001 1010 0110 11102 Conversión binario-hexadecimal La conversión de un número binario a hexadecimal se realiza a la inversa: se forman grupos de cuatro cifras binarias a partir de la coma decimal, hacia la izquierda y hacia la derecha, y se sustituye cada grupo por su equivalente hexadecimal. Si el grupo final de la izquierda queda incompleto, se rellena con 0’s por la izquierda. Del mismo modo, si el grupo final de la derecha queda incompleto, se rellena con 0’s por la derecha.
  • 10. Estructura de computadores Tema 2: Sistemas de representación numérica 10 Ejemplo: Calcúlese el equivalente hexadecimal del número binario siguiente: 1101010111100011100000001,1100012 Agrupamos y rellenamos con 0’s: 0001 1010 1011 1100 0111 0000 0001,1100 01002 Sustituimos cada grupo de 4 por su equivalente hexadecimal: 1 A B C 7 0 1 , C 4 Resultado: 1ABC701,C416 Conversión hexadecimal-decimal La conversión se realiza siguiendo el mismo procedimiento que en las conversiones binario-decimal, pero considerando la base B=16. En este caso, además, deberemos sustituir los valores A..F por su equivalencia en el sistema decimal. Ejemplo: Hállese el equivalente decimal del valor hexadecimal 39,B816. 39,B816 = 3·161 + 9·160 + B·16-1 + 8·16-2 = = 3·161 + 9·160 + 11·16-1 + 8·16-2 = = 48 + 9 + 0.6875 + 0.03125 = = 57,71875 Conversión decimal-hexadecimal Procederemos del mismo modo que en la conversión decimal-binario, considerando B=16. Dividiremos la parte entera sucesivamente por la base, y la parte fraccionaria la multiplicaremos por la base. Ejemplo: Hállese el equivalente hexadecimal del número 4573,7910. Parte entera 4573 |_16__ 457310 = 11DD16 13 285 |_16__ 13 17 |_16__ 1 1
  • 11. Estructura de computadores Tema 2: Sistemas de representación numérica 11 Parte fraccionaria 0,79 * 16 = 12,64 Valor: 12 10 3 13 7... = CA3D7...16 0,64 * 16 = 10,24 0,24 * 16 = 3,84 0,84 * 16 = 13,44 0,44 * 16 = 7,04 ... Valor final: 4573,CA3D7...16 Conversiones de cualquier base Conversión de una base cualquiera a base decimal (b => 10) Para este tipo de conversión utilizaremos la fórmula de la suma de productos de potencias de la base vista anteriormente. Ejemplo: Hallar el equivalente decimal del valor 1312,34 1312,34 = 1·43 + 3·42 + 1·41 + 2·40 + 3·4-1 = = 64 + 48 + 4 + 2 + 0.75 = 118,7510 Conversión de base decimal a otra base cualquiera (10 => b) Se realiza como hemos visto hasta ahora, es decir: • Parte entera: dividiendo el número decimal por la base a la que queremos convertir, de forma sucesiva hasta que el cociente sea menor que la base. El último cociente y los restos que resultan de todas las divisiones en orden inverso a su obtención es el resultado final. • Parte fraccionaria: multiplicando sucesivamente por la base, cogiendo las partes enteras como parte del resultado.
  • 12. Estructura de computadores Tema 2: Sistemas de representación numérica 12 Ejemplo: Expresar el número decimal 545,6710 en base 5 Parte entera 545 |__5__ 54510 = 41405 0 109 |__5__ 4 21 |_ 5__ 1 4 Parte fraccionaria 0,67 * 5 = 3,35 Valor: 3 1 3 3 ... = 3133...5 0,35 * 5 = 1,75 0,75 * 5 = 3,75 0,75 * 5 = 3,75 ... Valor final: 4140,3133...5 Conversión de una base b1 a otra b2 Para realizar este tipo de conversiones desde una base que no sea la decimal a otra que tampoco lo sea seguimos dos pasos: • Convertir el valor en base b1 a base decimal • Convertir de base decimal a b2 Estas conversiones las haremos según los apartados anteriores. Valor en b1 ⇒ Valor intermedio en base 10 ⇒ Valor final en b2 Ejemplo: Expresar el valor 13189 en base 7. • Convertimos a decimal (base 10): 13189 = 1·93 + 3·92 + 1·91 + 8·90 = 729 + 243 + 9 + 8 = 98910 • Convertimos a base 7: 989 |__7__ 98910 = 26127 2 141 |__7__ 1 20 |__7__ 6 2
  • 13. Estructura de computadores Tema 2: Sistemas de representación numérica 13 Conversiones de base con números no enteros: Cuando trabajamos con números no enteros tenemos parte entera y parte fraccionaria. Hemos visto que para convertir de decimal a cualquier otra base tenemos que realizar dos procesos cuando tenemos cifras decimales; la parte entera y la parte fraccionaria. La parte entera es sencilla, como hemos visto hasta ahora. Para la parte fraccionaria debemos tener en cuenta las siguientes consideraciones. Dependiendo del tipo de número que tengamos podemos tener las siguientes posibilidades. 1 Racionales 1.1 Cifras decimales no periódicas Procedemos como hemos visto hasta ahora, es decir, multiplicando sucesivamente por la base y nos quedamos con la parte entera. 0,615 x 2 = 1,250 0,250 x 2 = 0,500 0,500 x 2 = 1 Por tanto: 0,62510 = 0,1012 NOTA: el hecho de que un número N tenga un número finito de decimales en una base no implica que en otra base sea así (p.e. 0,82510) 1.2 Cifras decimales periódicas Tenemos que expresarlo en forma de fracción equivalente irreducible, después la expresaremos en binario (base 2) (numerador y denominador) y haremos la división en binario. _ 0,666... = 0,6 (periódico) • Fracción irreducible: _ x = 0,6 (Lo llamamos x) _ 1 · x = 0,6 (La parte periódica detrás de la coma: ya está) _ 10 · x = 6,6 (Desplazando el número de cifras periódicas) _ _ 10·x - 1·x = 6,6 - 0,6 = 6 (Restando ambas expresiones)
  • 14. Estructura de computadores Tema 2: Sistemas de representación numérica 14 x = 6 / 9 = 2 / 3 (Fracción equivalente e irreducible) _ Se puede comprobar que: 2 / 3 = 0,6 • Expresarlo en binario: 102 / 112 • Finalmente, hacer la división binaria: 10 0 |__11__ 102 / 112 = 0,100 100 ... - 11 0, 100100 ... ------ 0 0100 Otros ejemplos: __ x = 0,07954 (Lo llamamos x) __ 1000 · x = 79,54 (La parte periódica detrás de la coma) __ 1000 00 · x = 7954,54 (Desplazando el número de cifras periódicas) __ __ 1000 00·x - 1000·x = 7954,54 - 79,54 = 7875 (Restando ambas expresiones) x = 7875 / 99000 = 7 / 88 (Fracción equivalente e irreducible) __ Se puede comprobar que: 7 / 88 = 0,07954 __ x = 0,563 (Lo llamamos x) __ 10·x = 5,63 (La parte periódica detrás de la coma) __ 1000·x = 563’63 (Restando ambas expresiones) __ __ 1000·x - 10·x = 563,63 - 5,63 = 558 (Restando ambas expresiones) x = 558 / 990 = 279 / 495 (Fracción equivalente e irreducible) __ Se puede comprobar que: 279 / 495 = 0,563 • En la práctica lo que se hace para obtener la fracción equivalente es tomar el número como un entero, le restamos la parte no periódica y se divide por tantos 9’s como el número de cifras periódicas y tantos 0’s como las no periódicas.
  • 15. Estructura de computadores Tema 2: Sistemas de representación numérica 15 2 Irracionales Tienen infinitas cifras decimales que no se repiten. Los tratamos como racionales, pero tenemos que considerar que trabajamos con errores, es decir, los resultados serán aproximados. El proceso es similar a los racionales no periódicos, solo que en este caso, necesitamos conocer el número de cifras decimales con las que nos vamos a quedar. Supongamos el número PI = 3,141592653 ... (infinitas cifras decimales) Vamos a considerar que el número PI = 3,1416 (redondeado a 4 cifras) Al hacer esto estamos cometiendo un error E1 ≤ 10-4 Al convertirlo al sistema binario cometemos otro error E2, tal que: E2 ≤ E1 Para determinar el número de cifras fraccionarias binarias necesarias para que se cumpla la desigualdad anterior hacemos lo siguiente: Sabemos que: E1 ≤ 10-4 Del mismo modo: E2 ≤ 2-n , donde n = número de cifras fraccionarias. Debe complirse: E2 ≤ E1 Sustituyendo: 2-n ≤ 10-4 . Tomamos logaritmos: Log10 2-n ≤ Log10-4 ⇒ -n·Log10 2 ≤ -4·Log10 10 ⇒ -n·Log10 2 ≤ -4 ⇒ -n ≤ (-4 / Log10 2) ⇒ n > (4 / Log10 2) ⇒ n > 13,28 Por tanto, necesitaremos al menos 14 cifras decimales en la parte fraccionaria para no cometer más error al convertir a binario. 0,1416 x 2 = 0,2832 0,1248 x 2 = 0,2496 0,2832 x 2 = 0,5664 0,2496 x 2 = 0,4992 0,5664 x 2 = 1,1328 0,4992 x 2 = 0,9984 0,1328 x 2 = 0,2656 0,9984 x 2 = 1,9968 0,2656 x 2 = 0,5312 0,9968 x 2 = 1,9936 0,5312 x 2 = 1,0624 0,9936 x 2 = 1,9872 0,0624 x 2 = 0,1248 0,9872 x 2 = 1,9744 Por tanto, el resultado será: 3,141610 = 11,001001000011112 (con un error E ≤ 10-4 ).
  • 16. Estructura de computadores Tema 2: Sistemas de representación numérica 16 2.2 Aritmética binaria La aritmética binaria es básica en las computadoras digitales Las operaciones aritméticas que vamos a ver son las mismas que para el sistema decimal: • suma • resta • multiplicación • división, para la base binaria Suma La tabla de adición siguiente nos muestra las 4 reglas básicas para sumar dígitos binarios: Valor 1 Valor 2 Suma Acarreo 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1 En el último caso tenemos un acarreo, que se sumará en la cifra siguiente. Entonces tendremos que sumar 3 bits, los dos de las dos cifras binarias que estamos sumando y el bit de acarreo. Si ambos son 1, al sumarle el acarreo, obtendremos 1 y volveremos a tener un acarreo. Ejemplo: Sumar los valores binarios 110011101 y 10110111. 1 1 0 0 1 1 1 0 1 + 1 0 1 1 0 1 1 1 --------------------------- 1 0 0 1 0 1 0 1 0 0
  • 17. Estructura de computadores Tema 2: Sistemas de representación numérica 17 Resta La sustracción binaria utiliza las siguientes reglas: Valor 1 Valor 2 Resta Acarreo 0 0 0 0 0 1 1 -1 1 0 1 0 1 1 0 0 En el segundo caso, lo que haremos será prestar un 1 de la siguiente columna, o la primera que no sea 0, sustituyendo todos los 0 por 1 desde esa columna hasta la columna actual (todo esto es en el minuendo). Ejemplo: Efectuar la diferencia 11101 – 1011. modificaciones en el minuendo: 0 minuendo: 1 1 1 0 1 29 substraendo: - 1 0 1 1 - 11 ------------------ ------- 1 0 0 1 0 18 Ejemplo: Efectuar la diferencia 11000 – 10011. modificaciones en el minuendo: 0 1 1 minuendo: 1 1 0 0 0 24 substraendo: - 1 0 0 1 1 - 19 ------------------- ---------- 0 0 1 0 1 5 En el caso de que tengamos cifras decimales, lo primero que debemos hacer es alinear verticalmente las comas binarias antes de efectuar la resta y rellenar con ceros a la derecha de los números para ajustar las partes fraccionarias a un mismo número de dígitos. Ejemplo: Efectuar la diferencia 1101,101 – 11,10111. modificaciones en el minuendo: 0 1 0 0 1 0 1 minuendo: 1 1 0 1 , 1 0 1 0 0 substraendo: - 1 1 , 1 0 1 1 1 ----------------------------- 1 0 0 1 , 1 1 1 0 1
  • 18. Estructura de computadores Tema 2: Sistemas de representación numérica 18 También podría hacerse como hacemos en el sistema decimal, sumando los acarreos negativos a la siguiente columna del sustraendo, es decir, en vez de realizar modificaciones en el minuendo, realizaremos modificaciones en el sustraendo. Cuando sumemos un acarreo, si en la siguiente columna tengamos un 1, se produce un nuevo acarreo y seguimos sumando dicho acarreo a la siguiente columna, hasta llegar a un bit 0. minuendo: 1 1 0 1 , 1 0 1 0 0 substraendo: - 1 1 , 1 0 1 1 1 modificaciones en el sustraendo: 1 0 0 0 1 0 0 ----------------------------- 1 0 0 1 , 1 1 1 0 1
  • 19. Estructura de computadores Tema 2: Sistemas de representación numérica 19 Multiplicación La multiplicación de 2 bits sigue las siguientes 4 reglas: Valor 1 Valor 2 Multiplicación 0 0 0 0 1 0 1 0 0 1 1 1 La multiplicación de números binarios se realiza de la misma forma que con números decimales. Se realizan los productos parciales, desplazando cada producto parcial una posición a la izquierda, y luego se suman dichos productos. Es aun más sencilla que con números decimales, ya que en binario tan sólo tenemos dos dígitos: 0 y 1. Cuando multiplicamos por 0 obtenemos 0, y cuando multiplicamos por 1 obtenemos el mismo número. Ejemplo: Calcular el producto 1100 x 1011. 1 1 0 0 12 x 1 0 1 1 x 11 --------------- -------- 1 1 0 0 132 1 1 0 0 0 0 0 0 + 1 1 0 0 ---------------------- 1 0 0 0 0 1 0 0 En el caso de que tengamos cifras decimales, la multiplicación se realiza exactamente igual, y al final, el número de posiciones decimales en el número resultante del producto es la suma del número de cifras decimales de los números que se están multiplicando. Ejemplo: Calcular el producto binario 11,01 x 101,1. 1 1 , 0 1 3,25 x 1 0 1 , 1 x 5,5 -------------- ------------- 1 1 0 1 1 6 2 5 1 1 0 1 1 6 2 5 0 0 0 0 ------------- 1 1 0 1 1 7,8 7 5 --------------------- 1 0 0 0 1,1 1 1
  • 20. Estructura de computadores Tema 2: Sistemas de representación numérica 20 División El algoritmo utilizado por la división binaria se reduce a sustracciones repetidas del divisor. Las reglas utilizadas son las siguientes: Valor 1 Valor 2 División 0 0 No definido 0 1 0 1 0 Imposible 1 1 1 Ejemplo: Efectuar la división 1 1 1 0 1 1 1 / 1 0 0 1 0 1 1 1 0 1 1 1 |_1 0 0 1_ 1 1 9 |__9__ - 1 0 0 1 1 1 0 1 - 9 1 3 ------------ ------ 0 1 0 1 1 2 9 - 1 0 0 1 - 2 7 ------------ ------- 0 0 1 0 1 1 2 - 1 0 0 1 ------------ 0 0 1 0 En el caso de fracciones binarias se trata de la misma forma que la división de fracciones decimales, es decir, se convierte el divisor en un entero desplazando la coma binaria a la derecha; el dividendo se desplaza el mismo número de posiciones. Ejemplo: Realizar la división 111,00001 / 1,01 1 1 1 0 0 , 0 0 1 |__1 0 1___ 7,03125 / 1,250 = 5,625 - 1 0 1 1 0 1 1 0 1 --------- 0 1 1 0 1 0 0 0 0 1 0 0 0 - 1 0 1 - 1 0 1 ----------- -------------- 0 0 1 1 0 0 1 1 1 1 0 - 1 0 1 - 1 0 1 ---------- ------------ 0 0 1 0 1 0 0 1 - 1 0 1 ------------ 0 0 0
  • 21. Estructura de computadores Tema 2: Sistemas de representación numérica 21 El resultado final será el cociente pero cogiendo tantas cifras decimales como tenga el dividendo, después de haber desplazado la coma. En este caso son 3. Por tanto, el resultado es: 101,101. NOTA: Los computadores utilizan una forma de representación de los números negativos llamada “complemento”, que nos facilita la realización de las operaciones de resta, ya que utiliza circuitos sumadores. La veremos en el siguiente apartado.
  • 22. Estructura de computadores Tema 2: Sistemas de representación numérica 22 2.3 Representación de la información en las computadoras En las computadoras, la información se procesa por conmutación y almacenamiento de señales eléctricas. Se utiliza el sistema binario por la facilidad y estabilidad que tiene representar dos estados lógicos diferenciados. Dependiendo de las familias lógicas utilizadas, se utiliza un valor de tensión para representar el “0” lógico y otro valor para el “1” lógico. No se trata de un valor exacto, sino de un margen. • Familia TTL: “0” = 0,2 v / “1” = 3,3 v • Familia CMOS: “0” = 0..3 v / “1” = 7..10 v • Familia ECL (lóg.neg.): “0” = -0,75 v / “1” = -1,5 v Los dígitos binarios se suelen transmitir y recibir como una sucesión de impulsos. Existen dos técnicas para distinguir entre los dos estados lógicos: • Con retorno a cero (RZ): un impulso positivo representa un “1” y un impulso negativo representa un “0”. • Sin retorno a cero (NRZ): el “0” se representa por ausencia de impulso, y el “1” se representa por un impulso. Lógicamente, los circuitos receptores deben mantenerse sincronizados con la señal. 1 0 11 1011
  • 23. Estructura de computadores Tema 2: Sistemas de representación numérica 23 Números con signo Los sistemas digitales deben ser capaces de manejar números positivos y negativos. Un número binario con signo queda determinado por su magnitud (valor) y su signo (positivo/negativo). El símbolo “-“ del sistema decimal no se puede representar en binario. Debido a esto, existen 3 formatos de representación de números con signo: • Signo-magnitud: • Complemento a la base • Complemento a la base menos uno En todos ellos, el signo del número viene representado por un bit adicional, el “Bit de signo”, que se coloca en el extremo izquierdo del número binario con signo. Se utiliza el siguiente convenio: “0”: signo positivo “1”: signo negativo Método signo-magnitud Se trata de reservar el bit del extremo izquierdo (MSB) como bit de signo; los restantes representan el valor numérico del número en formato binario (magnitud). n bits Bs Magnitud 1 bit (n-1) bits Por ejemplo, para n=8: +1110 = 0 000 1011 - 1110 = 1 000 1011 En un registro de n bits, los números que pueden representarse serán 0 .. 2n -1. En total 2n números. Al utilizar el primer bit como bit de signo, no se reduce la cantidad de números que se pueden representar (2n ), pero si el valor mínimo y máximo, pues en vez de tener n bits para la magnitud ahora tendremos n-1 bits. Por tanto, el rango de valores que podremos representar en signo-magnitud es: -(2n-1 -1) .. 0 .. +(2n-1 -1) Esta representación presenta ciertos inconvenientes: • Pues para cualquier operación aritmética debemos comprobar primero el signo, para después sumar o restar en función del mismo. • El diseño de circuitos lógicos que realicen operaciones aritméticas con números binarios en signo-magnitud no es fácil. • Tenemos dos representaciones para el número 0: +010 = 0 000 0000 -010 = 1 000 0000
  • 24. Estructura de computadores Tema 2: Sistemas de representación numérica 24 Método del complemento La utilización de números complementados es un concepto especialmente útil para simplificar la resta, pues permite realizarla utilizando circuitos sumadores. Los números positivos en este sistema se representan de la misma forma que los números positivos en formato signo-magnitud, simplemente se añade un 0 como bit de signo a la magnitud del número. El número 0 se identifica como positivo y tiene por tanto un bit de signo 0 y una magnitud de todos ceros. Los números negativos son el complemento del correspondiente número positivo. Existen dos variantes en la forma de complemento: el complemento a la base y el complemento a la base menos uno. NOTA: Cuando hay decimales, se quita la coma, se hace el complemento correspondiente y de nuevo se coloca la coma. Complemento a la base El complemento a la base de un número ‘a’ de n cifras es el valor: Cb = bn – |a| con b = base del sistema n = número de dígitos incluido el signo |a| = valor absoluto del número Para el sistema binario recibe el nombre de complemento a 2 o complemento verdadero: b=2 => C2 = 2n – |a| Complemento a la base menos 1 El complemento a la base menos 1 de un número ‘a’ es el valor: Cb-1 = bn – 1 – |a| b = base del sistema n = número de dígitos incluido el signo |a| = valor absoluto del número Para el sistema binario recibe el nombre de complemento a 1 o complemento restringido: b=2 => C1 = 2n – 1 – |a|
  • 25. Estructura de computadores Tema 2: Sistemas de representación numérica 25 Ejemplo: considerando la base decimal (b=10), obtener los complementos a la base (C10) y a la base menos uno (C9): a = 2310 Tenemos 2 dígitos (n = 2) C10: -2310 = 102 – |a| = 100 – 23 = 77C10 C9 : -2310 = 102 – 1 – |a| = 100 – 1 – 23 = 76C9 a = 125810 Tenemos 4 dígitos (n = 4) C10: -125810 = 104 – |a| = 10000 – 1258 = 8742C10 C9 : -125810 = 104 – 1 – |a| = 10000 – 1 – 1258 = 8741C9 Ejemplo: considerando la base binaria (b=2) y 8 dígitos (n=8), obtener el correspondiente C1 y C2 de los siguientes valores: a = 1010 = 0000 10102 C2: -1010 = 28 – |a| = 1 0000 0000 – 0000 1010 = 1111 0110C2 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 - 0 0 0 0 1 0 1 0 -------------------------- 1 1 1 1 0 1 1 0 C1: -1010 = 28 – 1 – |a| = 1 0000 0000 – 1 – 0000 1010 = = 1111 1111 – 0000 1010 = = 1111 0101C1 1 1 1 1 1 1 1 1 - 0 0 0 0 1 0 1 0 ----------------------- 1 1 1 1 0 1 0 1 En la práctica, y SOLO para el sistema binario (b=2): • El complemento a 1 se obtiene directamente sin más que cambiar en el número todos los 0’s por 1’s y viceversa. • El complemento a 2 se obtiene sumando 1 al complemento a 1. Aplicando esta regla en el ejemplo anterior obtenemos los mismos resultados: a = 1010 = 0000 10102 C1 = 1111 0101 C2 = 1111 0101 + 1 = 1111 0110 Podemos comprobar que los números negativos siempre tienen el bit de signo (MSB) a 1, y los positivos a 0.
  • 26. Estructura de computadores Tema 2: Sistemas de representación numérica 26 Operaciones aritméticas de números con signo Suma Cuando se suman dos números binarios A y B (A+B) pueden producirse cuatro casos: • A y B son positivos ⇒ A+B ≥ 0 • A y B son negativos ⇒ A+B < 0 • A es positivo y B negativo, con A > |B| ⇒ A+B ≥ 0 • A es positivo y B negativo, con |B| > A ⇒ A+B < 0 En cualquier caso, el procedimiento de la suma es muy sencillo: sumar los dos números y descartar el bit de acarreo final (si lo hay). Ejemplos: Consideremos números con signo de 8 bits (n=8). • A y B son positivos (A=7, B=4) 710 = 0000 0111 410 = 0000 0100 0 0 0 0 0 1 1 1 7 + 0 0 0 0 0 1 0 0 + 4 ----------------------- ------ 0 0 0 0 1 0 1 1 11 • A y B son negativos (A=-5, B=-9) 510 = 0000 0101 C2 = 1111 1010 + 1 = 1111 1011 910 = 0000 1001 C2 = 1111 0110 + 1 = 1111 0111 1 1 1 1 1 0 1 1 -5 + 1 1 1 1 0 1 1 1 + -9 ------------------------ ------- 1 1 1 1 1 0 0 1 0 -14 En este caso tenemos acarreo, que descartamos. Como la suma es negativa, el resultado está en C2.
  • 27. Estructura de computadores Tema 2: Sistemas de representación numérica 27 Para comprobar el resultado: C2 = bn – |a| => |a| = bn – C2. |a| = 28 – C2 = 1 0000 0000 – 1111 0010 Mod. minuendo: 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 - 1 1 1 1 0 0 1 0 ------------------------ 0 0 0 0 1 1 1 0 ==> |a| = 14 ==> a = -14 • A es positivo y B negativo, con A > |B| (A=15, B=-6) 1510 = 0000 1111 610 = 0000 0110 C2 = 1111 1001 + 1 = 1111 1010 0 0 0 0 1 1 1 1 15 + 1 1 1 1 1 0 1 0 + -6 ----------------------- ------- 1 0 0 0 0 1 0 0 1 9 Como siempre, el bit de acarreo se desprecia. • A es positivo y B negativo, con |B| > A (A=16, B=-24) 1610 = 0001 0000 2410 = 0001 1000 C2 = 1110 0111 + 1 = 1110 1000 0 0 0 1 0 0 0 0 16 + 1 1 1 0 1 0 0 0 + -24 ----------------------- -------- 1 1 1 1 1 0 0 0 -8 Cuando se suman dos números y el número de bits requerido para representar la suma excede al número de bits de los dos números, se produce un desbordamiento (overflow), que se indica mediante un bit de signo incorrecto (p.e. negativo cuando A y B son positivos).
  • 28. Estructura de computadores Tema 2: Sistemas de representación numérica 28 Resta El mecanismo es cambiar el signo al sustraendo y sumar al minuendo: a – b = a + (-b) La forma de cambiar el signo al sustraendo es mediante la complementación (C1 ó C2). Complemento a 1 (C1) Utilizando la forma de C1 se puede convertir la operación de resta de dos números binarios en una operación de suma. La forma de operar consiste en calcular el C1 del sustraendo y sumarlo al minuendo. Tenemos dos posibilidades • Si se produce acarreo, éste se suma al bit menos significativo de la suma (acarreo circular), para corregir el error que se produce. • Si no hay acarreo: el resultado es negativo y la solución se obtiene complementando a 1 el resultado de la suma. Ejemplo: Calcular la diferencia 11001 – 10110, utilizando C1. Resta ordinaria: Utilizando C1: 0 1 1 1 1 1 0 0 1 1 1 0 0 1 - 1 0 1 1 0 + 0 1 0 0 1 ----------------- ---------------- 0 0 0 1 1 1 0 0 0 1 0 Acarreo + 1 ---------------- 0 0 0 1 1 El C1 tiene la ventaja de que es sencillo de diseñar un circuito, pues tan solo necesita un inversor para cada bit, que se colocarán en paralelo y serán los bits de entrada de un circuito sumador. Pero el C1 tiene dos inconvenientes: • Hay dos formas de expresar el cero (+0 y -0): +0 = 00 .. 00 -0 = 11 .. 11 • La resta de dos números no es válida cuando son iguales (el resultado es –0 (cero negativo). Con el C2 se eliminan estos problemas.
  • 29. Estructura de computadores Tema 2: Sistemas de representación numérica 29 Complemento a 2 (C2) Del mismo modo que en C1, calculamos el C2 del substraendo y lo sumamos al minuendo. También tenemos dos posibilidades: • Si se produce acarreo: éste se desprecia (al contrario que con C1). • Si no hay acarreo: el resultado es negativo y la solución se obtiene complementando a 2 el resultado de la suma. Ejemplo: Calcular la diferencia binaria 1012 – 110112. Resta ordinaria: Utilizando C1: Utilizando C2: 0 1 1 0 1 1 0 0 1 0 1 0 0 1 0 1 - 0 0 1 0 1 + 0 0 1 0 0 + 0 0 1 0 1 ---------------- ---------------- ---------------- 1 0 1 1 0 0 0 1 0 0 1 0 0 1 0 1 0 (Cambiamos el (Como no hay (Como no hay signo al final) acarreo => C1) acarreo => C2) Res: -10110 Res: -10110 Res: -10110 Resta ordinaria: como el sustraendo es menor que el minuendo, hacemos la resta poniendo el mayor como sustraendo, pero luego debemos poner el resultado como negativo. Utilizando C1 y C2: como no hay acarreo, hacemos el C1/C2, y por tanto, el resultado es negativo.
  • 30. Estructura de computadores Tema 2: Sistemas de representación numérica 30 Si consideramos la base decimal, la forma de operar sería la misma, teniendo que obtener el C9 o C10. Ejemplo: Calcular la diferencia 30010 – 298,6410 = 1,3610, utilizando C9 y C10: a = 298,6410 a’ = 2986410 (sin coma decimal) Utilizando C10: C10: 105 – |a’| = 100000 – 29864 = 70136 300 C10 = 701,36 + 701,36 --------------- 1001,36 à Bit de acarreo se desprecia: 1,36 C10: 103 – |a| = 1000 – |a| = 1000 – 298,64 = 701,36 300 + 701,36 --------------- 1001,36 à Bit de acarreo se desprecia: 1,36 Utilizando C9: C9: 105 – 1 – |a’| = 100000 – 1 – |a| = 99999 – 29864 = 70135 300 C9 = 701,35 + 701,35 --------------- 1001,35 à Bit de acarreo se suma al resultado + 1 --------------- 1,36 C9: 103 – 1 – |a| = 1000 – 1 – |a| = 999 – 298,64 = 700,36 300 + 700,36 --------------- 1000,36 à Bit de acarreo se suma al resultado + 1 --------------- 0,37 RECUERDA: Para calcular el complemento (cualquiera), cuando hay decimales, se quita la coma, se hace el complemento correspondiente y de nuevo se coloca la coma. ¡ MAL HECHO !
  • 31. Estructura de computadores Tema 2: Sistemas de representación numérica 31 Multiplicación y División En ambos casos realizaremos la operación sin tener en cuenta el signo de los dos números binarios, y posteriormente le aplicaremos el signo, teniendo en cuenta: • Si los dos son del mismo signo: resultado positivo. • Si los dos son de diferente signo: resultado negativo.