Pec 1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 9

Estudios de Informática Multimedia y Telecomunicaciones

75.562 · Fundamentos de Computadores · 2022-23

PEC1 - Primera prueba de evaluación continua

Apellidos: PALACIOS AGUADO


Nombre: ÁNGEL

EJERCICIO Nº1
Dada la secuencia de dígitos A = 4137, realizad los cambios de base siguientes:
a) Asumiendo que A es un número octal, representadlo en binario.

Para resolver este apartado, utilizaremos la base 10 como base intermedia, con el fin
de, posteriormente, pasar a la base 2 (binaria), tal y como nos pide el enunciado.
Para ello, aplicaremos el Teorema Fundamental de la Numeración (TFN),
representando el número 4137(8) de la siguiente manera:
4137(8) = 4 ∙ 83 + 1 ∙ 82 + 3 ∙ 81 + 7 ∙ 80 = 2143(10)
Es decir, de lo anterior deducimos que: 4137(8) = 2143(10)
A continuación, aplicaremos el método de la división entera para pasar el número
2143(10) a base 2, realizando divisiones por 2 de manera sucesiva hasta obtener un
cociente igual a 0.
2143 : 2 = 2 ∙ 1071 + 1
1071 : 2 = 2 ∙ 535 + 1
535 : 2 = 2 ∙ 267 + 1
267 : 2 = 2 ∙ 133 + 1 Tomando los valores obtenidos en los restos de
133 : 2 = 2 ∙ 66 + 1 cada división en sentido inverso, obtenemos los
66 : 2 = 2 ∙ 33 + 0 dígitos: 100001011111.
33 : 2 = 2 ∙ 16 + 1 Por lo que, finalmente, llegamos a la conclusión
16 : 2 = 2 ∙ 8 + 0 de que el número 4137(8) = 100001011111(2)
8:2=2∙4+0
4:2=2∙2+0
2:2=2∙1+0
1:2=2∙0+1

1 de 9
Estudios de Informática Multimedia y Telecomunicaciones

b) Asumiendo que A es un número decimal, representadlo en hexadecimal.

En este caso, consideraremos el número 4137 en base decimal. Para pasarlo a base
hexadecimal, aplicaremos de nuevo el método de la división entera, esta vez por el
número 16 hasta obtener un cociente igual a 0. Posteriormente agruparemos los restos
obtenidos en orden inverso utilizando las letras A, B, C, D, E y F para representar los
valores numéricos 10, 11, 12, 13, 14 y 15, respectivamente.

Tomando los valores obtenidos en los restos de


4137 : 16 = 16 ∙ 258 + 9
cada división en sentido inverso, obtenemos los
258 : 16 = 16 ∙ 16 + 2
dígitos: 1, 0, 2 y 9.
16 : 16 = 16 ∙ 1 + 0
Por lo que, finalmente, llegamos a la conclusión
1 : 16 = 16 ∙ 0 + 1
de que el número 4137(10) = 1029(16)

c) Asumiendo que A es un número hexadecimal, representadlo en decimal.

Considerando el número 4137 en base hexadecimal, aplicamos de nuevo el método


TFN con fin de convertirlo a base decimal de la forma siguiente:
4137(16) = 4 ∙ 163 + 1 ∙ 162 + 3 ∙ 161 + 7 ∙ 160 = 16695(10)
4137(16) = 16695(10)

EJERCICIO Nº2
a) Indicad el valor en decimal del número entero representado en Signo y
Magnitud y en binario 11101110(SM2

El sistema de Signo y Magnitud (SM) es un sistema de representación numérica utilizado


para números enteros que utiliza el primer bit para indicar el signo del número, y los bits
restantes para representar su valor absoluto.

En el caso del número 11101110 en SM2, el primer bit (el más significativo) indica el
signo del número, siendo 1 para indicar que es negativo y 0 para indicar que es positivo.
Por lo tanto, en este caso el número es negativo.

Para obtener el valor absoluto del número, se deben ignorar el primer bit y convertir el
número restante a su valor decimal correspondiente.

2 de 9
Estudios de Informática Multimedia y Telecomunicaciones

Por lo tanto, el número 1101110 en binario, sin tener en cuenta el bit de signo, podemos
obtenerlo en base decimal aplicando el método TFN, de la siguiente manera:

1101110(2) = 1 ∙ 26 + 1 ∙ 25 + 0 ∙ 24 + 1 ∙ 23 + 1 ∙ 22 + 1 ∙ 21 + 0 ∙ 20 = 64 + 32 + 0 + 8 + 4
+ 2 + 0 = 110(10)

Por lo tanto, el valor absoluto del número en SM2 es 110. Como el primer bit indica que
el número es negativo, el valor final del número en decimal se obtiene multiplicando el
valor absoluto por -1, por lo tanto:

11101110(SM2. = -110(10)

b) Dados los números enteros binarios A = 11101110(Ca2 y B = 01110111(Ca2


codificados en complemento a dos, encontrad su representación en decimal.

Dado que los números se encuentran en base binaria en complemento a 2, el primer


paso será averiguar el signo del número, para lo cual, debemos fijarnos en la primera
cifra significativa o, lo que es lo mismo, en el dígito situado a la izquierda.
El número A, por lo tanto, será un número negativo. Para obtener dicho número en base
decimal, aplicaremos el método TFN, teniendo en cuenta esta consideración de la
forma siguiente:
11101110(Ca2 = -1 ∙ 27 + 1 ∙ 26 + 1 ∙ 25 + 0 ∙ 24 + 1 ∙ 23 + 1 ∙ 22 + 1 ∙ 21 + 0 ∙ 20 = - 18

A = 11101110(Ca2 = -18(10)

De la misma manera, podríamos haber obtenido el cambio, realizando inicialmente un


cambio de signo hallando el complemento bit a bit de la codificación en Ca2 y
posteriormente sumando 1 al bit menos significativo de la codificación. De la forma
siguiente:
11101110 Número A
1 Acarreo
00010001 Complemento bit a bit del número A
+1 Sumamos un bit a la cifra menos significativa

00010010 Número A cambiado de signo, aplicando el método TFN,


obtendremos: 1 ∙ 24 + 0 ∙ 23 + 0 ∙ 22 + 1 ∙ 21 + 0 ∙ 20 = 18

3 de 9
Estudios de Informática Multimedia y Telecomunicaciones

El número B, en cambio, se trata de un número positivo, ya que la primera cifra


significativa es un 0. Por lo tanto, aplicamos directamente el método TFN obteniendo el
número en base decimal de la forma siguiente:
01110111(Ca2 = 1 ∙ 26 + 1 ∙ 25 + 1 ∙ 24 + 0 ∙ 23 + 1 ∙ 22 + 1 ∙ 21 + 1 ∙ 20 = 119

B = 01110111 (Ca2 = 119(10)

c) Encontrad la representación del número 11,20(10 en un formato de codificación


binario de signo y magnitud en coma fija y 8 bits, con 4 bits para la parte entera
y 3 bits para la parte fraccionaria, y en el cual el método de aproximación que
se aplica es el redondeo. En caso de que se produzca error de representación,
indicad su valor en decimal.

Para encontrar la representación del número 11,20 en un formato de codificación binario


de signo y magnitud en coma fija y 8 bits, con 4 bits para la parte entera y 3 bits para la
parte fraccionaria, y en el cual se aplica el método de aproximación por redondeo,
seguiremos el siguiente procedimiento:

1. Codificamos en binario la parte entera (11) en 4 bits aplicando el método de la


división entera, de manera que:
11 : 2 = 2 ∙ 5 + 1 Mediante los dígitos obtenidos de los restos de las
5:2=2∙2+1 divisiones en sentido inverso obtenemos los primeros
2:2=2∙1+0 4 bits de forma que:
1:2=2∙0+1 1011(2) = 11(10)

2. Convertimos la parte fraccionaria (0,20) a binario realizando multiplicaciones


sucesivas por la nueva base 2, de manera que:

Obtenemos los siguientes 4 dígitos: 0011, no


0,20 ∙ 2 = 0,40 = 0 + 0,4 continuamos realizando los productos ya que
0,40 ∙ 2 = 0,80 = 0 + 0,8 las respuestas se repiten de forma periódica,
0,80 ∙ 2 = 1,60 = 1 + 0,6 por lo tanto, el resultado será una
0,60 ∙ 2 = 1,20 = 1 + 0,2 aproximación del número decimal.
0,20 ∙ 2 = 0,40 = 0 + 0,4 Tomaremos un bit más para aplicar el
redondeo

4 de 9
Estudios de Informática Multimedia y Telecomunicaciones

La parte fraccionaria representada en 4 bits correspondería al siguiente número:


0011, sin embargo, y al sobrepasar los tres bits disponibles, aplicaremos una
aproximación por redondeo, sumando la mitad de la precisión y truncando a 3
bits fraccionarios, obteniendo lo siguiente:

1011.0011(2) + 0.0001(2) = 1011.0010(2)

11,20(10 ≈ 1011.001(2)

Al no tratarse de una representación exacta, obtenemos el número en decimal,


para poder compararlo con el valor inicial, de forma que:
1011.001(2) = 23 + 21 + 20 + 2-3 = 11,125(2)

EJERCICIO Nº3
Dados los números binarios siguientes:
A = 0011100111
B = 1010111101
Realizad las operaciones pedidas según el formato indicado en cada apartado.
Mostrad los resultados únicamente en binario (no hay que hacer ninguna
conversión a decimal) usando 10 bits, e indicad y justificad en cada caso si se
produce desbordamiento.

a) A + B considerando que los números están codificados en signo y


magnitud.
Al tratarse de números en signo y magnitud, debemos tener en cuenta el signo, siendo
este caso, A positivo y B negativo, ya que la primera cifra significativa corresponde a un
0 y un 1 respectivamente.
El procedimiento consistirá en restar la magnitud pequeña de la grande y aplicar al
resultado el signo de la magnitud mayor. En nuestro caso, la magnitud pequeña es el
número B. Por lo tanto:
011100111 Número A
111 Acarreo
- 010111101 Número B
000101010 Resultado de A + B
Al tratarse de suma de números de distinto signo NO puede producirse
desbordamiento.

5 de 9
Estudios de Informática Multimedia y Telecomunicaciones

Por lo tanto, usando 10 bits y teniendo en cuenta que el signo de la solución (añadimos
el bit del signo) coincidirá con el signo de A, es decir, positivo, el resultado es el
siguiente:
A + B = 0000101010(SM2)

b) A - B considerando que los números están codificados en signo y


magnitud.
Teniendo en cuenta que A es positivo y B es negativo, realizaremos la suma de ambas
magnitudes (sin signo), de manera que:
11111111 Acarreo
011100111 Número A
+ 010111101 Número B
110100100 Resultado de A - B
No se produce desbordamiento ya que no hemos obtenido ningún acarreo en la salida
y, por lo tanto, podemos representar el número. Podemos comprobarlo igualmente,
estudiando el rango de representación, el cual lo obtenemos de la siguiente manera:
[ - (210-1 -1), 210-1 -1] = [-511, 511]
A: 0011100111(SM2) = +231(10) Si realizamos la operación +231 – (- 189) = 420, lo cual
B: 1010111101(SM2) = -189(10) se encuentra dentro del rango indicado anteriormente.

Por lo tanto, usando 10 bits y teniendo en cuenta que el signo de la solución (añadimos
el bit del signo, 0) será positivo, el resultado es el siguiente:

A + B = 0110100100(SM2)

c) A + B considerando que los números están codificados en complemento a 2.

Considerando los números codificados en complemento a 2, tendremos igualmente un


número positivo (B) y un número negativo (A). Sumar ambos elementos, siendo estos
de distinto signo, NO podrá producirse desbordamiento, ya que el resultado obtenido
será un número más pequeño en valor absoluto. En caso de producirse un acarreo en
la última etapa lo despreciaremos.

6 de 9
Estudios de Informática Multimedia y Telecomunicaciones

11111111 Acarreo
0011100111 Número A
+1010111101 Número B
1110100100 Resultado de A + B

A + B = 1110100100(Ca2)

d) A - B considerando que los números están codificados en complemento a 2.

Para realizar la operación indicada, seguiremos el siguiente procedimiento:


1. Aplicamos un cambio de signo al sustraendo, en nuestro caso, el número B, para
ello:
a. Realizamos el complemento bit a bit del número obteniendo 0101000010
b. Sumamos un bit al dígito menos significativo:

0101000010
+1
0101000011

c. Realizamos la suma de A y el número obtenido en el paso anterior:

111 111 Acarreo


0011100111 Número A
+0101000011 Número B cambiado de signo
1000101010 Resultado de A - B

En este caso, no tenemos acarreo en la última etapa, sin embargo, sumar dos dígitos
del mismo signo (0 + 0) nos ha producido un resultado de signo contrario (1), esto
significa que, SI tenemos desbordamiento, por lo tanto, el resultado obtenido no es
válido.

7 de 9
Estudios de Informática Multimedia y Telecomunicaciones

Si lo analizamos mejor, debemos tener en cuenta que el rango en Ca2 y 10 bits, es el


siguiente: [-210-1, +210-1 -1] = [-512, 511]. El resultado de la suma de los valores A y B
está fuera del rango:
A: 0011100111(ca2) = +231(10) Si realizamos la operación +231 – (- 323) = 554, lo cual
B: 1010111101(Ca2) = -323(10) se encuentra fuera del rango indicado anteriormente.

EJERCICIO Nº4
a) Representad el número 18,26(10 en el formato de coma flotante con 12 bits
siguiente:

Donde:
• El bit de signo S es el de mayor peso (posición 11) y vale 0 para cantidades
positivas y 1 para las negativas.
• El exponente se representa en exceso a 8, con 4 bits de la posición 10 a la 7.
• La mantisa está normalizada en la forma 1,X. Se representa con bit implícito
y con 7 bits de la posición 6 a 0.
• El método de aproximación que se aplica es truncamiento.

El procedimiento a seguir será el siguiente:


1. Codificamos el número 18,26(10) en base 2, para ello, primero convertimos la
parte entera mediante el método de divisiones enteras:
18 : 2 = 2 ∙ 9 + 0
9:2=2∙4+1 Por lo tanto, 18(10) = 10010(2)
4:2=2∙2+0
2:2=2∙1+0
1:2=2∙0+1
Convertimos la parte fraccionaria realizando multiplicaciones sucesivas por la
nueva base 2:
0,26 ∙ 2 = 0 + 0,52 Tomando 6 bits y aplicando truncamiento, obtenemos
0,52 ∙ 2 = 1 + 0,04 que 0,26(10) = 0,010000(2) No seguimos para ajustarnos
0,04 ∙ 2 = 0 + 0,08 al número de bits indicado en el enunciado.
0,08 ∙ 2 = 0 + 0,16
0,16 ∙ 2 = 0 + 0,32
0,32 ∙ 2 = 0 + 0,64
0,64 ∙ 2 = 1 + 0,28

8 de 9
Estudios de Informática Multimedia y Telecomunicaciones

Por lo tanto, 18,26(10) = 10010,010000…(2)


2. Normalizamos la expresión obtenida de la forma ±R ∙ 2e :
+18,26(10) ≈ +1,001001000 ∙ 24
Signo: Teniendo en cuenta el signo positivo, el bit correspondiente será un 0
Exponente: El exponente es 4. Codificamos en exceso a M = 2q-1 = 24-1, siendo
q = 4 bits. Por lo tanto, M = 8. Es decir, debemos representar 4(10) + 8(10) = 12(10)

Aplicando multiplicaciones sucesivas por 2, obtenemos:

12 : 2 = 2 ∙ 6 + 0

6:2=2∙3+0
Por lo tanto, 12(10) = 1100(2) = e (en exceso a 8)
3:2=2∙1+1

1:0=2∙0+1

Mantisa: Tal y como hemos visto, R = 1,001001000, como se nos pide bit
implícito (1,X), representaremos solo lo que hay a la derecha de la coma, y como
solo disponemos de 7 bits, la mantisa será: 0010010

3. Juntamos cada una de las representaciones según se nos indica:

011000010010

Signo
Exponente Mantisa

b) En caso de que se produzca error de representación, indicad su valor en


decimal.
Al representar el valor 18,26 en binario, su parte fraccionaria no ha resultado ser exacta,
para lo cual aplicamos truncamiento. Por ello, existe un error de representación.
Convertimos el número en coma flotante indicado en el apartado anterior, de la forma
siguiente:
• Signo: s=0. Signo positivo.
• Exponente: 1100(2); e = 1100(2) – 8(10) = 23 + 22 – 8 = 4
• Mantisa: Como está normalizada con bit implícito, ésta será: 1,0010010
Aplicamos, por lo tanto, la fórmula ±R ∙ 2e, de forma que:
+1,0010010 ∙ 24 = (20 + 2-3 + 2-6) ∙ 24 = 18,25

9 de 9

También podría gustarte