Sist Numericos - Alumnos
Sist Numericos - Alumnos
Sist Numericos - Alumnos
PRACTICA
(2008)
SISTEMAS NUMÉRICOS
INTRODUCCIÓN TEÓRICA:
Definimos Sistema de Numeración como al conjunto de reglas que permiten, con una cantidad
finita de símbolos, representar un número natural cualquiera.
Los números pueden representarse en diversos sistemas de numeración, que se diferencian por
su base. La BASE de un sistema numérico es el número de símbolos distintos que tiene el
sistema para la representación de las cantidades en el mismo. El mayor de los símbolos es
menor en una unidad a la base del sistema.. (Ejs.: base del sistema decimal: 10, símbolo mayor:
9; base del binario: 2, símbolo mayor: 1; base del octal: 8, símbolo mayor: 7; etc.). El menor de
los símbolos es siempre el “0”.
Los símbolos utilizados se denominan CARACTERES. Estos presentan dos tipos de valores:
Nr = an . r n + … + a1 . r 1 + a0 . r 0 + a-1 . r -1 + … + a-m . r -m
Vemos que:
donde: PESO es la base del sistema elevada a un exponente que indica la posición del
caracter dentro del número. Para la parte entera, el exponente es positivo y su valor
absoluto es uno menos que la verdadera posición del caracter dentro del número. Para
la parte fraccionaria, el exponente es negativo, y su valor absoluto indica la verdadera
posición del caracter.
1) SISTEMA DECIMAL:
a) SIMBOLOS: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
b) BASE: 10
N10 = 1 . 10 3 + 5 . 10 2 + 3 . 10 1 + 4 . 10 0 + 2 . 10 -1 + 7 . 10 -2
2) SISTEMA BINARIO:
a) SIMBOLOS: 0, 1
b) BASE: 2
N 2 = 1 . 2 3 + 0 . 2 2 + 0 . 2 1 + 1 . 2 0 + 1 . 2 -1 + 1 . 2 -2
3) SISTEMA OCTAL:
a) SIMBOLOS: 0, 1, 2, 3, 4, 5, 6, 7.
b) BASE: 8
N 8 = 4 . 8 2 + 3 . 8 1 + 2 . 8 0 + 7 . 8 -1 + 6 . 8 -2
4) SISTEMA HEXADECIMAL:
a) SIMBOLOS: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.
b) BASE: 16
N 16 = 2 . 16 3 + B . 16 2 + 4 . 16 1 + 1 . 16 0 + C . 16 -1 + 5 . 16 –2
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
17 10001 21 11
I) Para pasar un número entero del sistema decimal a otro sistema numérico, debe dividirse el
número por la base nueva sucesivamente, hasta que el cociente sea menor que la base. Luego se
ordenan los restos de izquierda a derecha, comenzando por el último, para poder obtener la
nueva expresión del número.
Ejemplo: 87 10 = N 8 87 /_8__
7/ 10 /_8__
87 10 = 127 8 2/ 1
II) Para pasar un número fraccionario decimal a otro sistema numérico, debe multiplicarse por
la base del nuevo sistema, tantas veces, como caracteres querramos tener después de la coma.
x 16__
10, 72 0,72
x 16
11, 52 0,52
x 16__
8, 32
Î N 16 = 0, AB8…16
III) En el caso que el número tenga parte entera y fraccionaria, debe trabajarse cada parte por
separado, y luego juntar los resultados.
1/ 12 /_8__ x 8__
4/ 1 0, 096
x 8____
0, 768
x8
6, 144
Î N 8 = 141, 006… 8
Ejemplos:
1) 101 2 = 1 . 2 2 + 0 . 2 1 + 1 . 2 0 = 4 + 0 + 1 = 5 10
2) 327 , 1 8 = 3. 8 2 + 2 . 8 1 + 7 . 8 0 + 1 . 8 –1 = 215,125 10
3) BA , 81 16 = B . 16 1 + A . 16 0 + 8 . 16 -1 + 1 . 16 -2 = 11 . 16 + 10 . 1 + 8 . 16 -1 + 1 . 16 -2 =
= 186 , 503… 10
V) Los sistemas numéricos cuya base es de la forma 2 n , ofrecen una simple conversión desde
el binario. Un ejemplo sería el sistema numérico octal (2 3 =8), y otro, el hexadecial ( 2 4 = 16).
Veamos primero, una forma de pasar números enteros del sistema numérico binario al decimal,
según el método enseñado, pero ordenándolos en una tabla:
---- 28 27 26 25 24 23 22 21 20
1 1 0 = 6 10
1 0 0 0 0 = 1610
1 1 0 0 1 0 = 5010
Ahora, utilicemos esta misma tabla, para pasar números enteros del sistema numérico decimal,
al binario, llenando los casilleros desde el que tiene mayor peso al menor, según los
necesitemos, comenzando con el que tiene el peso igual o menor al número que estamos
convirtiendo (o sea, pasando de un sistema numérico a otro):
---- 28 27 26 25 24 23 22 21 20
1 0 1 = 5 10
1 0 0 1 1 0 = 38 10
1 0 0 0 0 1 0 1 = 133 10
1 0 0 0 1 0 0 1 1 = 275 10
a) Para pasar del binario al sistema cuya base es potencia de “2”, o sea, “ 2 n ”
deben agruparse tantos bits como sea el exponente ”n”. La agrupación se hace
desde el bit de menor peso hacia el de mayor peso, para la parte entera, y desde
el de mayor peso hacia el de menor peso, en la parte fraccionaria. Luego se
escribe el caracter equivalente (según el nuevo sistema) de cada grupito.
Ejemplos:
Verificación: 0110102 = 1 . 24 + 1 . 23 + 0 + 1 . 21 + 0 = 16 + 8 + 0 + 2 + 0 = 26 10
26 /_8_
2/ 3 Î 32 8
En este ejercicio, vemos que el número tiene parte entera y parte fraccionaria, y
estamos usando la tabla que era para convertir números enteros! Veamos si el
resultado es válido:
2/ 8 0,75
2/ 0 x 8
II) Lo mismo sucede cuando queremos pasar del sistema numérico binario al
hexadecimal. Como la base 16 es 2 4 , agruparemos de a cuatro bits. Utilizaremos
las cuatro columnas de menor peso de la tabla, ya que al trabajar en binario con
cuatro bits, podremos escribir del “0” al “15” decimal que equivalen, del “0” al
“15” hexadecimal, teniendo en cuenta que a partir del “10” debemos trabajar con las
letras.
Ejemplos:
0/ 26 /_2_ x 2 x 2
1/ 6 /_2_
0/ 3 /_2_
1/ 1 ∴ 52,25 10 = 110100,01 2
1) 249 16 = N 2 , N 8
Se siguen las mismas reglas que en el sistema decimal. Se comienza la suma con la columna de
menor peso y se sigue con las siguientes columnas, hasta terminar con la de mayor peso. En el
caso de existir acarreos, se pasan ordenadamente a las columnas de mayor peso contiguas, y se
sigue sumando.
Ejemplos:
10011110 2
Ejercicios:
4) 1000000 2 + 24 8 + 71 16 = N 16 Rta.: C5 16
A) NÚMEROS SIN SIGNO: Una configuración binaria de “n” bits puede representarse como
suma de valores relativos, según lo vimos al comienzo del capítulo. Trabajando con esa
expresión, llegamos a que el alcance de la representación sin signo es: 0 ≤ N ≤ 2n-1
B) NÚMEROS CON SIGNO: Por convención, se reserva el bit más pesado para el signo: “0”,
si el número es positivo y “1”, si es negativo. Existen tres modos de representación:
I) SIGNO Y MODULO.
O sea, que tenemos 2 n configuraciones binarias, y dos de las cuales representan al cero.
- 13 10 = 10001101 2 - 0 10 = 10000000 2
En esta forma de representación, los números positivos son iguales que en el caso
anterior. Los negativos son codificados como complementos a la base menos uno.
- (2 n-1) + 1 ≤ N C1 ≤ (2n-1) - 1
Para escribir un número negativo debe escribirse el positivo, y ver cuánto le falta para
la base menos uno (en binario, cuánto le falta para “1”) a cada uno de los bits que
forman el número positivo. Tenemos, nuevamente, una doble representación del cero.
- 13 10 = 11110010 2 - 0 10 = 11111111 2
Ejemplo: 13 10 000011012
+ (-13)10 + 111100102
Los números positivos son iguales que en los dos casos anteriores. Los negativos son
codificados como complemento a la base.
Para obtener un número negativo, debe escribirse el número positivo y ver cuánto le
falta para llegar a la base. En esta representación no existe el cero “negativo”, debido
a esto, hay una configuración binaria adicional disponible que aumenta el alcance
negativo en una unidad, respecto al caso de Complemento a la base menos 1.
- 13 10 = 11110011 2
Existen dos formas sencillas para obtener el complemento a la base. Una consiste en
obtener el complemento a la base menos uno (invirtiendo todos los bits en el caso del
binario) y sumarle un uno, en la posición menos significativa. La segunda, es tomar el
número positivo y se va buscando desde el bit menos significativo al de mayor peso, un
“1”; se copian todos los bits tal cual son, incluyendo a este primer 1, y luego se
invierten los bits restantes.
Ejemplo: 13 10 00001101 2
+ (-13) 10 + 11110011 2
00 10 1 00000000 2 ( el noveno bit se pierde, y queda el 0)
Esta última ecuación será la que usaremos para realizar las restas, o sea, las transformaremos en
sumas.
4) Contar los caracteres del resultado. Si el mismo tiene uno más que los operandos,
indica que el resultado es positivo y ese caracter se desprecia en Complemento a la
base y se suma al resultado parcial en Complemento a la base menos uno, para
obtener el resultado final. Si el resultado tiene igual cantidad de caracteres que los
operandos, indica que el resultado es negativo y el resultado parcial debe
complementarse para obtener el resultado final, utilizando el mismo convenio con
que se realizó la operación.
1) 01101011 2 2) 10000001 2
+ 01001001 2 +11110000 2
10110100 2 1/01110001 2
1) Dados dos números decimales, representados en módulo, resolver su resta mediante una
suma y dar el resultado en símbolo y módulo:
I) 57 - 759 = N 10
298 1000
297 999
II) 21 10 - 16 10 = N 10
Rta.: 21 21
+ (-16) C a 102 + 84
O bien: 21 21
+ 16 C a (102 - 1) + 83
1 04
+ 1
2) Dados dos números binarios, representados en módulo, realizar su resta como una suma y
representar el resultado en símbolo y módulo: 110 - 10111 = x (2)
a) 00110 00110
- 10111 en C a 2 5 + 01001
b) 00110 00110
1) Dados los siguientes números en módulo y símbolo, resolver la resta como suma y expresar
el resultado en símbolo y módulo:
c) 31 8 - 50 8 = N 8 Rta.: - 17 8
f) 47 16 - 6E 16 = N 16 Rta.: - 27 16
l) A7 16 - 54 8 = N 8 , 16 Rta.: 173 8 = 7B 16
n) AF 16 - 3B 16 = N 16 Rta.: 74 16
a) 21 - 9 +2 – 12 = 2
Rta.: 21 = 00010101 9 = 00001001 - 9 = 11110111
2 = 00000010 12 = 00001100 - 12 = 11110100
I) 00010101 II) 00001100 III) 00001110
+11110111 + 00000010 +11110100
1/00001100 00001110 1/00000010
b) 17 - 44 + 11 = - 16
Rta.: 17 = 00010001 44 = 00101100 - 44 = 11010100
11 = 00001011
I) 00010001 II) 11100101
+ 11010100 + 00001011
11100101 11110000 ( = - 00010000 2 = -16 10 )
c) - 96 + 38 - 3 +21 = - 40
Rta.: 96 = 01100000 - 96 = 10100000 38 = 00100110
3 = 00000011 - 3 = 11111101 21 = 00010101
I) 10100000 II) 11000110 III) 11000011
+ 00100110 + 11111101 +00010101
11000110 1/11000011 11011000
( = - 00101000 2 = - 40 10 )
Como las computadoras disponen de un número fijo “n” para escribir el número binario, el
mismo se almacena de la siguiente manera:
n (M) n (E) =n
donde: “n (M) “ son los bits que conforman la mantisa y “n (E) ” son los del exponente.
Ejemplos:
• en el sistema binario:
a) 27,5 10 = 011011,1 2 = 0,0110111 x 2 (510) = .110111 x 2 (510)
= .110111 x 2 101 = 0,110111 x 2 101
b) 0,056 7 = 0,56 x 7 -1
• en el sistema binario:
a) .110101 x 2 1011 = .110101 x 2 (1110) = 11010100000 2
b) 0,22 x 7 4 = 2200 7
d) 36,7 8 R: 0,367 x 8 2
e) 0,000A8C 16 R: 0,A8C x 16 -3
2) Encontrar la representación en punto fijo de los siguientes números en punto flotante, sin
cambiar de base:
d) 0,321 x 4 -2 R: 0,00321 4
e) 0,43 x 5 3 R: 430 5
En el caso de usar palabras de 16 bits, podemos representar, en punto fijo, números entre
(-32768) y (+32767). Si se necesitase representar números más grandes,se usan palabras de 32
bits, o sea dos palabras de 16 bits. El primer caso se llama precisión simple y el segundo,
precisión doble.
En el caso de trabajar con punto flotante, en precisión simple, se usa una palabra para escribir
la mantisa y el exponente (n (M) y n (E)). En precisión doble, una palabra es para escribir la
mantisa y la otra, para el exponente (pueden existir modificaciones según el micro).
SISTEMAS DE CODIFICACIÓN:
Podemos considerar al sistema binario como un código, ya que con dos símbolos: 0 y 1,
representamos al sistema decimal. Existen códigos numéricos y códigos alfanuméricos.
SISTEMAS NUMERICOS Pag.16
Recopilación hecha por la Ing. Patricia Ruiz
I) CÓDIGOS NUMÉRICOS:
La correspondencia es la siguiente:
0 - 0000 5 - 0101
1 - 0001 6 - 0110
2 - 0010 7 - 0111
3 - 0011 8 - 1000
4 - 0100 9 - 1001
2do. método) Comenzando con el MSB del número binario, se compara cada par de bits
sucesivos:
• Si son iguales, se coloca un “0” en el número en Gray.
• Si son distintos, se coloca un “1” en la palabra en código Gray.
Nota: Esta acción es igual a sumar en “módulo 2” a cada par de bits. Esto significa,
sumar como una OR-EXCLUSIVA.
Ejemplo: 12 10 = 1 1 0 0 2 = 1 0 1 0 GRAY
Veremos dos métodos, que son los inversos a los recién explicados:
Por ejemplo:
ABCD
+ ABC/D
1 0 1 0 GRAY
2 1 ) El MSB de Gray es igual al MSB del binario, y todos los bits hacia la
derecha del binario siguen siendo iguales al número en Gray, hasta el primer
1, inclusive.
Repetir este último punto, para convertir todos los bits del número en código
Gray.
9) 01001001 BCD = N 8 R: 61 8
b) Código EBCDIC: (Extended Binary Coded Decimal Information Code). Este código
fue creado por IBM, y es, después del ASCII, el más utilizado. Utiliza 8 bits, y deja
varias de las 256 configuraciones, sin ningún significado.
El código puede ser de paridad par o de paridad impar. Se usa para detectar errores en
transmisión de datos.
Al número que se desea transmitir, se le adiciona un bit, llamado “bit de paridad”. Este número
binario que se agrega hará que el total de “1” en un número sea par o impar, según la paridad
elegida.
Cuando se recibe un número, se chequea la paridad (par o impar, según se haya elegido), y se
toma como correcto si pasa el test.
Ejercicios:
1) Decir “FALSO” o “VERDADERO” en las siguientes palabras en código BCD con paridad:
4) Colocar el bit necesario para obtener paridad par en las siguientes palabras:
a) 01110100 (R: 0)
b) 11100110 (R: 1)
c) 11111111 (R: 0)
5) Colocar el bit necesario para obtener paridad impar en las siguientes palabras:
a) 01101100 (R: 1)
b) 10001001 (R: 0)
c) 00001001 (R: 1)