• No se han encontrado resultados

M5_SistemasRepresentacionEnteros.pdf

N/A
N/A
Protected

Academic year: 2020

Share "M5_SistemasRepresentacionEnteros.pdf"

Copied!
26
0
0

Texto completo

(1)

Representación de

Números Enteros

Prof. Dr. Martín Vázquez

basado en Apunte de Cátedra: Introducción a la Arquitectura de Sistemas, UNCPBA Prof. Hugo Curti

Introducción

Una cosa es la cantidad a representar y otra es la simbología usada para representarla.

La mente humana utiliza el sistema posicional decimal (base diez) para representar cantidades o números.

Se cree que porque tenemos diez dedos

(2)

Sistemas posicionales de

representación

Sirve para representar números reales. Posee:

tantos símbolos como indique su base para representar cifras. para base diez. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.

para base dos. 0, 1. para base cuatro. 0, 1, 2, 3. signo.

coma raíz (o coma decimal). Separa la parte fraccionaria de la parte entera.

Una cifra tiene diferente valor de acuerdo a su posición Sea Nla cantidad representada

Donde

nes la cantidad de cifras a la izquierda de la coma raíz (parte entera)

des la cantidad de cifras a la derecha de la coma raíz (parte fraccionaria)

Sistemas posicionales de

representación: Sistema Decimal

A la

coma raíz

se la llama

coma decimal

.

La

parte fraccionaria

se denomina

parte decimal

y a

los componentes

decimales

.

La cifra de peso 0 es la

unidad

, la de peso uno es la

decena

, peso dos es la

centena

,…

(3)

Sistemas posicionales de

representación: Sistema Binario

La cifra binaria se denomina bit(binary digit).

También se usa para medir espacio ocupado

Una celda de memoria de un bitpuede almacenar dos estados

Cuatro bits agrupados se denomina cuartetoo nibble.

Una celda de memoria de un cuarteto almacena 16 (24) estados. El bytees la unidad binaria más utilizada.

Una celda de un byte almacena 256 (28) estados.

Sistema Binario

Conversión de binario a decimal aplicando la ecuación

(4)

Sistema Binario

Conversión de decimal a binario mediante la aplicación

de divisiones/multiplicaciones sucesivas

Para parte entera se leen los restos de las divisiones en sentido inverso Para la parte fraccionaria se toman las cifras enteras de los resultados de las sucesivas multiplicaciones

Sistema Binario: Operaciones

aritméticas

Para la suma/resta en binario se usa el mismo método que en decimal.

Existe concepto de acarreo (carry) en la suma y arrastre (borrow) en la resta.

(5)

Representación de números

naturales

Una celda de memoria puede utilizarse para almacenar la representación binaria de un número.

Los sistemas binarios poseen una cantidad de cifras variable, mientras que la celda de memoria una cantidad fija.

Si la cantidad de cifras del número natural a representar es mayor al tamaño de la celda se produce overflow(rebalse) o desbordamiento.

Ejemplo:a =1110 y b = 1000, la representación de dos número naturales, 14 y 8, en celdas de 4 bits. Si se desea representar el resultado, r= a+ b = 10110, en una celda de 4 bits. NO SE PUEDE. La operación de suma produce

overflow.

Sean el tamaño de la celda de memoria, ésta puede representar 2nvalores

naturales, en rango [0, 2n-1]

Representación de números

enteros

Una máquina digital se rige por dos símbolos, 0 y 1. No

existe manera natural de representar el signo o la coma

raíz.

Dos estrategias para considerar el signo

Agregar información a la representación.

(6)

Signo y valor absoluto

Se representa el signo agregando un

bit

a la

representación.

Normalmente este

bit

vale 0 para representar un número

positivo y vale 1 para representar un negativo.

Se utiliza la dupla SVA(

b

,

d

)

b

es la base de la representación y

d

es cantidad de

cifras que soporta.

Algunos ejemplos

Signo y valor absoluto

El rango que se puede representar es [-bd+1, bd-1].

Existen 2

bd

representaciones.

El cero tiene doble representación.

Si se desea almacenar una representación en SVA en una celda de memoria se usa la base 2 y se debe considerar el bitde signo. Si nes el tamaño de la celda de memoria, se puede almacenar 2n

representaciones de números enteros en el rango R es [-2n-1+1, 2n-1-1].

(7)

Signo y valor absoluto

Operaciones aritméticas en SVA

Se pueden usar los mismos circuitos utilizados para

binarios puros (naturales).

Aplicar conversión considerando el signo de los

operandos

En suma/resta, se utiliza el signo de los operandos para

decidir la operación

En multiplicación y división, se usa la regla de los signos

para determinar el signo del resultado.

Complemento a la base menos

uno o complemento a uno

Divide el espacio de representación entre los

números positivos y negativos.

(8)

Complemento a uno

Distribución del espacio de representación en complemento

a uno.

Complemento a uno

Para identificar el sistema en complemento a uno, se

utiliza C1(

b

,

d

)

bes la base de la representación y des la cantidad de cifras que soporta.

(9)

Complemento a uno

El rango que se puede representar es

Existen

bd

representaciones.

El cero tiene doble representación.

Si se desea almacenar una representación en C1 en una celda de memoria se usa la base 2.

Si nes el tamaño de la celda de memoria, puedo almacenar 2n

representaciones de números enteros en el rango R es [-2n-1+1, 2n-1-1].

Ejemplo: Una celda de un byte, puede representar un C1(b, d) con b= 2 y d

= 8 y R = [-127, 127].

Complemento a uno

Operaciones aritméticas en C1

Se pueden aplicar directamente sobre las

representaciones.

Se debe aplicar corrección para obtener la representación

correcta del resultado.

Sea

r

1

la representación C1 de

e

1

,

r

2

la representación de

(10)

Complemento a uno

Correcciones en suma en C1

Ejemplo 1.

Sistema C1(2, 4),

e

1

=4 y

e

2

=2, entonces

e

1+2

=6.

r

1

=0100 y

r

2

=0010

Complemento a uno

Correcciones en suma en C1

Ejemplo 1.

Sistema C1(2, 4),

e

1

=4 y

e

2

=2, entonces

e

1+2

=6.

r

1

=0100 y

r

2

=0010

(11)

Complemento a uno

Correcciones en suma en C1

Ejemplo 1.

Sistema C1(2, 4),

e

1

=4 y

e

2

=2, entonces

e

1+2

=6.

r

1

=0100 y

r

2

=0010

Operación: 0100 + 0010 = 0110

Como

r

1+2

= 0110,

NO es necesario corrección

Complemento a uno

Correcciones en suma en C1

Ejemplo 2.

(12)

Complemento a uno

Correcciones en suma en C1

Ejemplo 2.

Sistema C1(2, 4),

e

1

=4 y

e

2

=5, entonces

e

1+2

=9.

r

1

=0100 y

r

2

=0101

Operación: 0100 + 0101 = 1001

Complemento a uno

Correcciones en suma en C1

Ejemplo 2.

Sistema C1(2, 4),

e

1

=4 y

e

2

=5, entonces

e

1+2

=9.

r

1

=0100 y

r

2

=0101

Operación: 0100 + 0101 = 1001

r

1+2

= 1001,

Existe

overflow

o rebalse.

(13)

Complemento a uno

Correcciones en suma en C1

Ejemplo 3.

Sistema C1(2, 4),

e

1

=4 y

e

2

=-6, entonces

e

1+2

=-2.

r

1

=0100 y

r

2

=1001

Complemento a uno

Correcciones en suma en C1

Ejemplo 3.

(14)

Complemento a uno

Correcciones en suma en C1

Ejemplo 4.

Sistema C1(2, 4),

e

1

=4 y

e

2

=-2, entonces

e

1+2

=2.

r

1

=0100 y

r

2

=1101

Complemento a uno

Correcciones en suma en C1

Ejemplo 4.

Sistema C1(2, 4),

e

1

=4 y

e

2

=-2, entonces

e

1+2

=2.

r

1

=0100 y

r

2

=1101

Operación: 0100 + 1101 =

1

0001

Como

r

1+2

= 0001 es la representación en C1 de 1

(15)

Complemento a uno

Correcciones en suma en C1

Ejemplo 5.

Sistema C1(2, 4),

e

1

=-4 y

e

2

=-2, entonces

e

1+2

=-6.

r

1

=1011 y

r

2

=1101

Complemento a uno

Correcciones en suma en C1

Ejemplo 5.

(16)

Complemento a uno

Correcciones en suma en C1

Ejemplo 6.

Sistema C1(2, 4),

e

1

=-4 y

e

2

=-5, entonces

e

1+2

=-9.

r

1

=1011 y

r

2

=1010

Operación: 1011 + 1010 =

1

0101

Existe

overflow

o rebalse.

No se puede representar el -9 en C1(2, 4)

No se puede solucionar mediante corrección

Comparaciones (1)

C1 vs. SVA

En C1 (base 2) se cambia signo invirtiendo bita bitla

representación. En SVA invirtiendo solo el bitmás significativo. La lógica extra involucrada en la suma/resta en SVA es superior. Para C1 es simple, se suma el acarreo.

(17)

Complemento a la base

Similar a C1. Divide el espacio de representación

entre los números positivos y negativos.

Para calcular el complemento a la base

r

cb

, a partir del

entero

e

se utiliza

Complemento a la base

(18)

Complemento a la base

Para identificar el sistema en complemento a la base, se

utiliza CB(

b

,

d

)

bes la base de la representación y des la cantidad de cifras que soporta.

Algunos ejemplos

Complemento a la base

El rango que se puede representar es

Existen

bd

representaciones.

El cero NO tiene doble representación.

Si se desea almacenar una representación en CB en una celda de memoria se usa la base 2.

Si nes el tamaño de la celda de memoria, puedo almacenar 2n

representaciones de números enteros en el rango R es [-2n-1, 2n-1-1].

Ejemplo: Una celda de un byte, puede representar un CB(b, d) con b= 2 y

(19)

Complemento a la base

Operaciones aritméticas en CB

Se pueden aplicar directamente sobre las

representaciones.

En suma/resta y multiplicación.

Si no existe overflow, se obtiene la representación del resultado

No se realizan correcciones sobre el resultado obtenido.

Complemento a la base dos

Ejemplo 1.

(20)

Complemento a la base dos

Ejemplo 2.

Sistema C2(2, 4),

e

1

=-7 y

e

2

=1, entonces

e

1+2

=-6.

r

1

=1001 y

r

2

=0001

Operación: 1001 + 0001 = 1010

Como

r

1+2

= 1010,

NO es necesario corrección

Complemento a la base dos

Ejemplo 3.

Sistema C2(2, 4),

e

1

=-5 y

e

2

=-1, entonces

e

1+2

=-6.

r

1

=1011 y

r

2

=1111

Operación: 1011 + 1111 =

1

1010

(21)

Complemento a la base dos

Ejemplo 4.

Sistema C2(2, 4),

e

1

=-5 y

e

2

=-4, entonces

e

1+2

=-9.

r

1

=1011 y

r

2

=1100

Operación: 1011 + 1100 =

1

0111

Existe

overflow

o rebalse.

No se puede representar el -9 en C2(2, 4)

No se puede solucionar

Complemento a la base dos

Ejemplo 5.

(22)

Comparaciones (2)

C1 vs. C2

En C2 la inversión de signo es más costosa que en C1. Se

debe invertir la representación

bit

a

bit

y luego sumar uno.

El sistema CB no requiere correcciones en las operaciones

de suma/resta y multiplicación.

Causa principal de por la cuál sea el sistema mas usado en representación de números enteros

Cero desplazado

Como ocurre con C1 y CB, divide el espacio de representación entre los números positivos y negativos.

La principal diferencia es que la representación de los números negativos están primero y la de los positivos después

Para calcular el complemento a la base rcd, a partir del entero ese

utiliza

fse denomina fronteray es el valor que representa el cero. Los valores inferiores a frepresentan enteros negativos, y los valores superiores enteros positivos.

(23)

Cero desplazado

Distribución del espacio de representación en sistema de

cero desplazado con frontera equilibrada.

Cero desplazado

Para identificar el sistema en cero desplazado, se utiliza

CD(

b

,

d

) con frontera

f

bes la base de la representación y des la cantidad de cifras que soporta.

(24)

Cero desplazado

El rango que se puede representar es [-f, bd-f - 1]

Existen

bd

representaciones.

El cero NO tiene doble representación.

Si se desea almacenar una representación en CD en una celda de memoria se usa la base 2.

Si nes el tamaño de la celda de memoria, puedo almacenar 2n

representaciones de números enteros en el rango R es [-f, 2n-f-1].

Ejemplo. Una celda de un byte, puede representar un CD(b, d) con b= 2 y

d= 8 y R = [-128, 127].

Cero desplazado

Operaciones aritméticas en CD

Se pueden aplicar directamente sobre las

representaciones.

Se debe aplicar corrección para obtener la representación

correcta del resultado.

Sea

r

1

la representación CD de

e

1

,

r

2

la representación de

(25)

Cero desplazado

Correcciones en suma en CD

Ejemplo 1.

Sistema CD(2, 4),

e

1

=4 y

e

2

=2, entonces

e

1+2

=6.

r

1

=1100 y

r

2

=1010

Operación: 1100 + 1010 =

1

0110

Como

r

1+2

= 0110 es la representación en CD de -2

Se debe corregir mediante resta de frontera, 10110 - 1000

Cero desplazado

Correcciones en suma en CD

Ejemplo 2.

(26)

Comparaciones (3)

El sistema de CD ofrece la posibilidad de no dividir simétricamente el espacio de representación.

Ejemplo. Un sistema CD(10 ,2) con frontera10 (o también llamado exceso 10) posee un rango [-10, 89]

Tanto las representaciones como los enteros representados se encuentran en el mismo orden lógico.

Comparar dos representaciones en CD es lo mismo que comparar los dos enteros representados.

En los otros sistemas SVA, C1 y C2, se requiere lógica adicional para comparar.

Es el sistema mas usado para representar valores cuya aplicación requiere mayormente comparaciones

Referencias

Documento similar

Y por el presente edicto que se publicará por DOS VECES de diez en diez días en el Periódico Oficial del Estado y en uno de los de mayor circulación en esta ciudad, se convoca a los

Alejandro propuso tomar una hoja grande de papel o las hojas del centro de su cuaderno para elaborar un tablero en el que pueda representar diferentes cantidades.. Luego, pegará

a. Transcurridos diez días, se podrán proseguir las actuaciones si el informe es preceptivo, en todo caso. Transcurridos diez días se podrán proseguir las actuaciones,

• “La colaboración entre el Special Astrophysical Observatory (Zelenchukskiy region) y el Observatorio da Universidad de Santiago de Compostela en interferometría

Números racionales: El conjunto formado por todos los números enteros y todos los números fraccionarios. Número decimal exacto: es aquel que tiene finitas cifras decimales. Número

Si quiere mantener relaciones sexuales después de haber tomado Levonorgestrel Exeltis , y no está tomando la píldora anticonceptiva, debe utilizar preservativos o un diafragma

Consulte a su médico o farmacéutico antes de empezar a usar Spiolto Respimat - si tiene asma (no debe utilizar Spiolto Respimat para el tratamiento del asma) - si tiene problemas

de la base octava de la convocatoria, contra la relación de personas que han superado el ejercicio podrán presentarse alegaciones, ante el Tribunal, en el plazo de diez días