Está en la página 1de 6

Sistemas de numeración.

Codificación

Báez Gonzalo, Carballo Kinas Hector Leonel, Olivieri Ricardo


UNaM Fac. de Cs Ex., Qcas. y Nat.
Carrera: Analista en Sistemas de Computación y Licenciatura en Sistemas de Información
Cátedra: Introducción a la Informática Año: 2020
Trabajo Práctico N°3
Titular: Lic. Claudio Biale
Jefe T.P.: Ing. Roberto A. Miño

Sistemas de numeración. Codificación


Suma
Para simular la operación de la UAL debemos primero representar los números decimales ya sea
como binarios naturales si son enteros sin signos o como complemento si son enteros con signo.
Si bien de esta operación se encargan las rutinas del programa en uso y según sea la definición del
tipo de datos, nosotros debemos hacerlo manualmente.
Para los enteros con signo primero representamos en complemento a dos a los operandos, sin
importar si es una suma o una resta. Sean positivos o negativos pasamos a binario, luego se
completan con ceros los lugares a la izquierda hasta cubrir la cantidad de dígitos usada. En caso de
valores positivos acá terminamos. Para valores negativos, después de haber cubierto todos los
lugares a la izquierda con ceros, invertimos todos los dígitos. Los unos a ceros y los ceros a uno y
sumamos uno. Así tenemos la representación en complemento a la base.
Por ejemplo, si tenemos que realizar la suma del siguiente par de números usando 8 bits: -29 y 38
-29 = - 1 1101 = - 0001 1101 ≡ 1110 0010 + 1 = 1110 0011
38 = 10 0110 = 0010 0110
Decimal Representación Suma S= 0
-29 1110 0011 1110 0011 C=1
+ 38 0010 0110 + 0010 0110 Z=0
9 1 00001001 V=0
El bit S es el signo, correspondiendo al valor del bit de mayor peso, C es el valor del acarreo, Z
vale 0 ya que el resultado no es cero, y valdrá 1 cuando el resultado sea cero. Finalmente el valor de
V es el de desbordamiento (overflow) que en caso de valer 1 indica resultado erróneo. Cuando los
dos sumandos son positivos y el resultado es negativo o los dos sumandos son negativos y el
resultado es positivo V vale 1 (desbordamiento). En todos los otros casos V es 0.

Si son enteros sin signo nos aseguraremos que entren en los n bits que disponemos y si llegaran a
sobrar bits a la izquierda se completa con ceros.
Por ejemplo, si tenemos que realizar la suma de los siguientes enteros sin signo con 8 bits:
Decimal Representación Suma S= 1
185 1011 1001 1011 1001 C=0
+ 38 0010 0110 + 0010 0110 Z=0
223 1101 1111 V=0
Si bien la UAL calcula los cuatro bits como se indicó anteriormente, con los binarios naturales solo
interesan C y Z

Ejercicio 1.
Realizar la suma de los siguientes pares de números enteros con signo, simulando la operación de
la UAL, indicando los valores de los flag SZVC. Formato de 8 bits
a) 59 y 48
1 1
0 0 1 1 1 0 1 1 C2 S= 0 C= 0 Z= 0 V= 0
+ 0 0 1 1 0 0 0 0 C2

0 1 1 0 1 0 1 1
UNaM Fac. de Cs Ex., Qcas. y Nat.
Carrera: Analista en Sistemas de Computación y Licenciatura en Sistemas de Información
b) 36 y -43
1
0 0 1 0 0 1 0 0 C2 S= 1 C= 0 Z= 0 V= 0
+ 1 1 0 1 0 1 0 1 C2

1 1 1 1 1 0 0 1

c) 69 y 75
1 1 1 1 1
0 1 0 0 0 1 0 1 C2 S= 1 C= 0 Z= 0 V= 1
+ 0 1 0 0 1 0 1 1 C2

1 0 0 1 0 0 0 0

d) 90 y -45
1 1 1 1
0 1 0 1 1 0 1 0 C2 S= 0 C= 1 Z= 0 V= 0
+ 1 1 0 1 0 0 1 1 C2

1 0 0 1 0 1 1 0 1

Ejercicio 2
Realizar la suma de los siguientes pares de números enteros sin signo, simulando la operación de
la UAL, indicando los valores de los flags SZVC. Formato de 8 bits

a) 203 y 48. dudo


a)
1 1 0 0 1 0 1 1 S= 1 C= 0 Z= 0 V= 0
+ 0 0 1 1 0 0 0 0
1 1 1 1 1 0 1 1

b) 180 y 90. dudo


1 1 1 1
1 0 1 1 0 1 0 0 S= 0 C= 1 Z= 0 V= 1
+ 0 1 0 1 1 0 1 0
1 0 0 0 0 1 1 1 0

c) 46 y 72. dudo mas o menos


S= 0 C= 0 Z= 0 V= 0
1
0 0 1 0 1 1 1 0
+ 0 1 0 0 1 0 0 0
0 1 1 1 0 1 1 0
UNaM Fac. de Cs Ex., Qcas. y Nat.
Carrera: Analista en Sistemas de Computación y Licenciatura en Sistemas de Información

Indique que par de números da un resultado erróneo


Resta
Para una resta, como dijimos es lo mismo. La única diferencia es que la representación del
sustraendo se invierte y se suma uno, tanto en entero sin signo como en enteros con signo. Veamos
con el mismo ejemplo
Realizar la resta del siguiente par de números enteros con signo usando 8 bits: -29 y 38
-29 = - 1 1101 = - 0001 1101≡1110 0010 + 1 = 1110 0011
38 = 10 0110 = 0010 0110
Decimal Representación Suma S= 1
-29 1110 0011 1110 0011 C=0
- 38 0010 0110 inversión + 1101 1001 Z=0
- 67 1 V=0
11011 1101
Todos los flags se obtienen de igual forma que en la suma, excepto C que se invierte. Es decir si
aparece acarreo (1 fuera del formato usado, en este caso un 1 en el noveno lugar con un formato
usado de ocho) C vale 0. Si por el contrario no hay acarreo, C vale 1.

Ejercicio 3.
Realizar las restas de los siguientes pares de números enteros con signo, simulando la operación
de la UAL, indicando los valores de los flag SZVC. Formato de 8 bits.
a) 76 y 55
1 1 1
0 1 0 0 1 1 0 0
+ 1 1 0 0 1 0 0 0 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 0 1 0 1 0 1

b) -37 y - 52
1 1 1 1 1 1
1 1 0 1 1 0 1 1
+ 0 0 1 1 0 0 1 1 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 0 0 1 1 1 1

c) -66 y 74.
1 1 1 1 1 1 1
1 0 1 1 1 1 1 0
+ 1 0 1 1 0 1 0 1 S= 0 C= 0 Z= 0 V= 1
1
1 0 1 1 1 0 1 0 0
UNaM Fac. de Cs Ex., Qcas. y Nat.
Carrera: Analista en Sistemas de Computación y Licenciatura en Sistemas de Información
d) 69 y 45
1 1 1 1 1
0 1 0 0 0 1 0 1
+ 1 1 0 1 0 0 1 0 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 0 1 1 0 0 0

e) -60 y 72
1 f) 1 1 1
1 1 0 0 0 1 0 0
+ 1 0 1 1 0 1 1 1 S= 0 C= 0 Z= 0 V= 1
1
1 0 1 1 1 1 1 0 0

Ejercicio 4.
Realizar las restas de los siguientes pares de números enteros sin signo, simulando la operación de
la UAL, indicando los valores de los flag SZVC. Formato de 8 bits.
a) 80 y 55
1 1
0 1 0 1 0 0 0 0
+ 1 1 0 0 1 0 0 0 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 0 1 1 0 0 1

b) 37 y 52
1 1 1 1
0 0 1 0 0 1 0 1
+ 1 1 0 0 1 0 1 1 S= 1 C= 1 Z= 0 V= 1
1
1 1 1 1 0 0 0 1

c) 76 y 40
1 1 1 1 1 1 1
0 1 0 0 1 1 0 0
+ 1 1 0 1 0 1 1 1 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 1 0 0 1 0 0
UNaM Fac. de Cs Ex., Qcas. y Nat.
Carrera: Analista en Sistemas de Computación y Licenciatura en Sistemas de Información
Indique que par de números da un resultado erróneo
El par de numero 37 y 52 da como resultado un numero erróneo

Ejercicio 5
Si tiene los siguientes pares de números naturales demuestre, usando los flags cual es mayor,
menor o igual entre ellos.
a) 71 y 55 = Si C= 0 entonces 71 >= 40
1 1 1 1 1 1
0 1 0 0 0 1 1 1
+ 1 1 0 0 1 0 0 0 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 0 1 0 0 0 0

b) 30 y 51 = Si C= 1 entonces 30 < 51
1 1 1
0 0 0 1 1 1 1 0
+ 1 1 0 0 1 1 0 0 S= 1 C= 1 Z= 0 V= 1
1
1 1 0 0 1 0 1 1

c) 76 y 40 = Si C= 0 entonces 76 >= 40,


1 1 1 1 1 1 1
0 1 0 0 1 1 0 0
+ 1 1 0 1 0 1 1 1 S= 0 C= 0 Z= 0 V= 0
1
1 0 0 1 0 0 1 0 0

d) 39 y 39= Si Z= 1 entonces 39 = 39
1 1 1 1 1 1 1 1
0 0 1 0 0 1 1 1
+ 1 1 0 1 1 0 0 0 S= 0 C= 0 Z= 1 V= 0
1
1 0 0 0 0 0 0 0 0

También podría gustarte