SistemasDeNumeracion

22
Universidad Tecnológica Nacional –Instituto Nacional Superior del Profesorado Técnico Automatización y Robótica Computación Profesor: Lic. Delmiro Gil Jefes de Trabajo Práctico: Prof. María del Carmen Martínez Lic. Gustavo Lovallo 1 Unidad Temática 2 : Sistemas de Numeración y Aritmética Binaria. Introducción. Los sistemas de numeración y su evolución histórica. Sistemas de numeración decimal, binario, octal y hexadecimal. Pasajes entre sistemas de números enteros y positivos. Convenio de signo y magnitud. Convenio de complemento a uno. Convenio de complemento a dos. Operaciones de adición y de sustracción utilizando el convenio de complemento a dos. Introducción y evolución histórica: Si hablamos de un sistema en forma genérica se puede definir como: Conjunto de elementos interrelacionados y regidos por normas propias, de modo tal que pueden ser vistos y analizados como una totalidad. El sistema se organiza para producir determinados efectos, o para cumplir una o varias funciones. Si nos referimos particularmente a un sistema de numeración podemos definirlo de la siguiente manera: Un sistema de numeración es el conjunto de símbolos y reglas que se utilizan para la representación de datos numéricos o cantidades. [1] La evolución histórica se produjo desde el sistema egipcio : "sistema de numeración jeroglífico",, pasando por el babilónico: ”sistema de numeración posicional sexagesimal”, por los sistemas: romano, maya, chino, indio, árabe, español, italiano al actual “sistema decimal”. El concepto de número surge de la necesidad de contar objetos con la ayuda de elementos disponibles por ejemplo: dedos, de ahí la numeración decimal, o piedras de este elemento surge el término cálculo que deriva de la palabra latina calculus, que significa piedra. Los sistemas de numeración se caracterizan por la cantidad de símbolos distintos que se utilizan para la representación de los números, teniendo en cuenta la evolución de los sistemas pasamos de sistemas “unitarios”, un único símbolo, sistema egipcio: |-||-||| ,al sistema “decimal”, diez símbolos: 0-1-2-3-4-5-6-7-8-9. A los sistemas de numeración se los clasifica en posicionales o ponderados y no posicionales. Es posicional cuando el valor relativo que representa cada cifra de una determinada cantidad depende de su valor absoluto y de la posición relativa que ocupa dicha cifra en el número. En un sistema no posicional el valor depende únicamente del valor y no de su posición, por ejemplo el egipcio. En los sistemas posicionales a la cantidad de símbolos distintos que se utilizan o al rango de valores posibles que pueden adoptar sus dígitos, se le llama base del sistema, por ejemplo sistema de numeración en base 10 o decimal, en base 2 o sistema binario, en base 8 o sistema octal y sistema en base 16 o hexadecimal.

Transcript of SistemasDeNumeracion

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

1

Unidad Temática 2 : Sistemas de Numeración y Aritmética Binaria.

Introducción. Los sistemas de numeración y su evolución histórica. Sistemas de numeración

decimal, binario, octal y hexadecimal. Pasajes entre sistemas de números enteros y positivos.

Convenio de signo y magnitud. Convenio de complemento a uno. Convenio de complemento a dos.

Operaciones de adición y de sustracción utilizando el convenio de complemento a dos.

Introducción y evolución histórica:

Si hablamos de un sistema en forma genérica se puede definir como:

Conjunto de elementos interrelacionados y regidos por normas propias, de modo tal que pueden ser vistos y analizados como una totalidad. El sistema se organiza para producir determinados efectos, o para cumplir una o varias funciones. Si nos referimos particularmente a un sistema de numeración podemos definirlo de la siguiente

manera:

Un sistema de numeración es el conjunto de símbolos y reglas que se utilizan para la representación

de datos numéricos o cantidades. [1] La evolución histórica se produjo desde el sistema egipcio : "sistema de numeración jeroglífico",,

pasando por el babilónico: ”sistema de numeración posicional sexagesimal”, por los sistemas:

romano, maya, chino, indio, árabe, español, italiano al actual “sistema decimal”. El concepto de

número surge de la necesidad de contar objetos con la ayuda de elementos disponibles por

ejemplo: dedos, de ahí la numeración decimal, o piedras de este elemento surge el término cálculo

que deriva de la palabra latina calculus, que significa piedra.

Los sistemas de numeración se caracterizan por la cantidad de símbolos distintos que se utilizan

para la representación de los números, teniendo en cuenta la evolución de los sistemas pasamos de

sistemas “unitarios”, un único símbolo, sistema egipcio: |-||-||| ,al sistema “decimal”, diez

símbolos: 0-1-2-3-4-5-6-7-8-9.

A los sistemas de numeración se los clasifica en posicionales o ponderados y no posicionales. Es posicional cuando el valor relativo que representa cada cifra de una determinada cantidad

depende de su valor absoluto y de la posición relativa que ocupa dicha cifra en el número. En un

sistema no posicional el valor depende únicamente del valor y no de su posición, por ejemplo el

egipcio.

En los sistemas posicionales a la cantidad de símbolos distintos que se utilizan o al rango de valores

posibles que pueden adoptar sus dígitos, se le llama base del sistema, por ejemplo sistema de

numeración en base 10 o decimal, en base 2 o sistema binario, en base 8 o sistema octal y sistema

en base 16 o hexadecimal.

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

2

Sistemas de Numeración

Sistema Decimal o de base 10

El sistema decimal es un sistema ponderado, esto significa que cada dígito tiene un peso en función

del lugar que ocupa.

Dado un número en una base b se puede expresar en base 10 utilizando la siguiente representación

polinómica:

di valor del dígito que ocupa la posición i

i posición respecto a la coma

n dígitos a la izquierda de la coma

m dígitos a la derecha de la coma

Dicha representación polinómica corresponde al denominado Teorema Fundamental de la Numeración.

Dada la siguiente expresión decimal (que por convención se omite el subíndice indicador de la base)

su expresión, teniendo en cuenta el peso de cada dígito, es:

631,25 en este caso n = 3, m = 2 y b = 10

valor del dígito peso asignado a su posición

2 1 0 1 25 10 2 10 1 10 3 10 6 10 631 25,valorDecimal − −= × + × + × + × + × =

Se multiplica cada dígito por el peso asignado a su posición y luego sumar los valores para obtener

el número convertido.

PARA CONVERTIR UN NÚMERO EXPRESADO EN CUALQUIER BASE A DECIMAL SE

APLICA EL TEOREMA FUNDAMENTAL DE LA NUMERACIÓN (TFN)

1.

nivalordecimal d b

ii m

−= ∑

=−

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

3

Sistema binario o de base 2

Dos símbolos para la representación numérica: 0, 1

21011

Base 2

Sistema numérico utilizado en computación, a cada dígito binario se lo denomina bit, denominación

que surge de la contracción de los términos binary digit, utilizado en el código binario o lenguaje de máquina. En los circuitos electrónicos de las computadoras sólo se puede detectar valores de tensión alto y

bajo que de acuerdo a la lógica utilizada se traduce en valor 1 y valor 0, lógica positiva o activo alto o viceversa al mayor valor de tensión se le asigna el valor 0 y al menor valor de tensión 1 y se

denomina lógica negativa o activo bajo.

En los sistemas de numeración posicionales se define al bit a la izquierda de la expresión numérica,

con el mayor peso asociado, como bit más significativo (MSB, most significant bit), y el bit a la

derecha de la expresión numérica, con el menor peso , como bit menos significativo (LSB, least

significant bit).

Múltiplos del bit:

Cantidad de bits Unidad Abreviatura Binario

4 bits 1 nibble - 0100 = 22

8 bits 1 byte B 0000 1000 = 23

1024 bits 1 Kilobyte KB 2

10

1024 KB 1 Megabyte MB 2

20

1024 MB 1 Gigabyte GB 2

30

1024 GB 1 Terabyte TB 2

40

1024 TB 1 Petabyte PB 2

50

1024 PB 1 Exabyte EB 2

60

1024 EB 1 Zettabyte ZB 2

70

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

4

1024 ZB 1 Yottabyte YB 2

80

No confundir KB con Kb que representa al kilobit, unidad muy utilizada en velocidad de transmisión

de datos, kbs kilobit/segundo.

Dadas las siguientes expresiones binarias su expresión polinómica, teniendo en cuenta peso de

cada dígito, es:

Conversión de un decimal entero a binario

Expresemos el número 631 en base 2 utilizando la expresión polinómica:

631 = 93210

2 21.....212121211001110111 ×++×+×+×+×=

Si ahora dividimos por 2 obtenemos un resto 1 , obteniendo así el primer coeficiente binario. Si

repetimos el proceso en forma iterativa hasta obtener un cociente 0, obtendremos todos los

coeficientes para expresar el número decimal en base 2, a este método se le llama el método de los restos.

Por lo tanto para convertir un número decimal a binario se realizan sucesivas divisiones por 2 hasta

obtener un cociente 0, se toman los restos en el orden indicado:

631 2

1 315 2

1 157 2

1 78 2

LSB 0 39 2

1 19 2

1 9 2

1 4 2

0 2 2

0 1 2

1 0

MSB

Peso del dígito

29

28

27

26

25

24

23

22

21

20

0 1 2 3 4 5 6 7

210101110 = 0 × 2 + 1 × 2 + 1 × 2 + 1 × 2 + 0 × 2 + 1 × 2 + 0 × 2 + 1 × 2 = 174

-3 -2 -1 0 1 2 3

21101,011 = 1 × 2 + 1 × 2 + 0 × 2 + 1 × 2 + 0 × 2 + 1 × 2 + 1 × 2 = 13,375

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

5

PARA CONVERTIR UN NÚMERO DECIMAL ENTERO A BINARIO SE DIVIDE

SUCESIVAMENTE POR 2 HASTA OBTENER UN COCIENTE 0 Y SE TOMAN LOS

RESTOS, SIENDO EL ÚLTIMO EL BIT MÁS SIGNIFICATIVO.

Conversión de decimal fraccionario a binario

Se opera la parte entera y la parte fraccionaria por separado, posteriormente se combinan para

obtener el resultado. La parte entera se convierte utilizando el método de los restos, la parte

fraccionaria se convierte utilizando el método de las multiplicaciones, que consiste en repetir la

secuencia siguiente sucesivamente hasta que la parte fraccionaria se haga 0, o en su defecto hasta

alcanzar la precisión requerida:

Multiplicar la fracción por 2

Se toma la parte entera

Ejemplo en el que la parte fraccionaria se hace cero: 631,25 convertirlo a binario.

La parte entera 631 la calculamos en el apartado anterior arrojando el resultado:

6 3 1 = 1 0 0 1 1 1 0 1 1 12

Tabla de conversión utilizando 8 bits para la

representación en binario

Decimal Binario

0 00000000

1 00000001

2 00000010

3 00000011

4 00000100

5 00000101

6 00000110

7 00000111

8 00001000

9 00001001

10 00001010

6 3 1 = 1 0 0 1 1 1 0 1 1 12

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

6

La parte fraccionaria:

Combinamos los resultados de ambas partes:

Ejemplo en que la parte fraccionaria NO se hace cero: 0,64037 convertirlo a binario

0,64037 x 2 = 1,28074

0,28074 x 2 = 0,56148

0,56148 x 2 = 1,12296

0,12296 x 2 = 0,24592

0,24592 x 2 = 0,49184

0,49184 x 2 = 0,98368

0,98368 x 2 = 1,96736

0,96736 x 2 = 1,93472

0,93472 x 2 = 1,86944

0,86944 x 2 = 1,73888

0,64037 = 0,1010001111

En el método de las multiplicaciones no se obtiene una fracción cero pero se llega a 10

dígitos binarios, con un error ɛ <= 2-n

, siendo n la cantidad de dígitos fraccionarios, y considerando

un ɛ <= 10-3

igualando y aplicando logaritmos :

10-3

= 2-n

→ log 10-3

= log 2-n

→ -3 log 10 = -n log 2 →n = 3/log2 ≈10 unidades binarias.

PARA CONVERTIR UN NÚMERO DECIMAL FRACCIONARIO A BINARIO SE SEPARA LA PARTE ENTERA

DE LA FRACCIÓN SE CONVIERTEN POR SEPARADO Y POSTERIORMENTE SE COMBINAN LOS

RESULTADOS.LA PARTE ENTERA SE CONVIERTE UTILIZANDO EL MÉTODO DE LOS RESTOS Y LA FRACCIÓN

SE CONVIERTE UTILIZANDO EL MÉTODO DE LAS MULTIPLICACIONES.

0,25 x 2 = 0,50 → MSB

0,50 x 2 = 1,00 → LSB

0,25 = 0,012

6 3 1, 2 5 = 1 0 0 1 1 1 0 1 1 1, 0 12

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

7

Método práctico de conversión de decimal a binario

valor decimal

Valor binario Bit Número

16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

216

215

214

213

212

211

210

29 2

8 2

7 2

6 2

5 2

4 2

3 2

2 2

1 2

0

65536 32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1

Convertir 631: considerando el peso del dígito se cumple que 29

< 631 < 210

el MSB es el

bit 9:

Bit Número (Posición)

Resta representar 631 – 512 = 119 se cumple que 26

< 119 < 27 habrá un 1 en el bit 6:

Resta representar 119 – 64 = 55 se cumple que 25< 55 < 2

6 habrá un 1 en el bit 5:

Resta representar 55 - 32 = 23 se cumple que 24< 23 < 2

5 habrá un 1 en el bit 4:

Resta representar 23 – 16 = 7 que implica un 1, en los bits 0, 1, 2

Compare este resultado con el obtenido con el método de los restos.

Representación binaria vs representación decimal

En tanto que la mayoría de las computadoras usan el sistema de numeración binario para la

representación interna y cálculo aritmético, algunas calculadoras y máquinas de oficina utilizan

como representación interna el sistema de numeración decimal, con lo que no tienen los

problemas de representación mencionados. La causa principal de la representación decimal en

computadoras comerciales no es tanto el problema de precisión de números fraccionarios sino el

hecho de poder evitar los procesos de conversión decimal-binario en las unidades de E/S, procesos

que históricamente requirieron una cantidad de tiempo importante.[2]

9 8 7 6 5 4 3 2 1 0

1 ? ? ? ? ? ? ? ? ?

1 0 0 1 ? ? ? ? ? ?

1 0 0 1 1 ? ? ? ? ?

1 0 0 1 1 1 ? ? ? ?

1 0 0 1 1 1 0 1 1 1

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

8

Sistema Octal o de base 8

Ocho símbolos para la representación numérica: 0, 1, 2, 3, 4, 5, 6, 7

Es un sistema posicional con la ventaja vs. el sistema binario de la menor cantidad de dígitos para la

representación de un número, se utilizó en sistemas de salida de computadoras. Cuenta además de

la fácil conversión a binario dado que 8 se puede expresar como potencia de 2, 8 = 23

.

Conversión de octal a binario

La conversión se realiza en forma directa dígito a dígito, cada dígito octal es reemplazado por tres dígitos binarios según la tabla siguiente:

Octal Binario

0 000

1 001

2 010

3 011

4 100

5 101

6 110

7 111

276,5348 =

Los ceros a la izquierda y derecha del número no son significativos:

276,5348 =

2 7 6, 5 3 4

010 111 110, 101 011 100

1 0 1 1 1 1 1 0, 1 0 1 0 1 1 12

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

9

Conversión binario a octal

Para realizar correctamente esta conversión el número de dígitos a la izquierda y derecha de la

COMA decimal deberá ser múltiplo de tres de no ser así se deberá agregar ceros a la derecha o a

la izquierda DEL NÚMERO

2 7 6, 5 3 4

Sistema hexadecimal o de base 16

Sistema posicional con dieciséis símbolos para representar un número:

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

Valor en Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

Valor en Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F

La base 16 se puede expresar como 2

4 entonces se requieren cuatro dígitos para convertir cada

dígito hexadecimal en binario

Conversión de hexadecimal a binario

B616 =

B616 = 101101102

1 0 1 1 1 1 1 0, 1 0 1 0 1 1 12

0 1 0 |1 1 1 |1 1 0, 1 0 1| 0 1 1| 1 0 0

B 6

1011 0110

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

10

Decimal Hexadecimal 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

10 A 1010

11 B 1011

12 C 1100

13 D 1101

14 E 1110

15 F 1111

Conversión de binario a hexadecimal

1 0 1 1 0 1 0 1 0 0 0, 0 0 1 1 1 0 0 1 1 12

0 1 0 1 1 0 1 0 1 0 0 0, 0 0 1 1 1 0 0 1 1 1 0 0

5 A 8, 3 9 C

10110101000,0012 = 5A8,39C16

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

11

PARA CONVERTIR UN NÚMERO OCTAL A BINARIO SE REEMPLAZA CADA DÍGITO OCTAL POR SU

VALOR EN BINARIO REPRESENTADO CON TRES DÍGITOS.

PARA CONVERTIR UN NÚMERO BINARIO A OCTAL SE AGRUPAN LOS DÍGITOS BINARIOS EN GRUPOS DE TRES

COMENZANDO DESDE LA COMA A LA IZQUIERDA Y A LA DERECHA, AGREGANDO, DE SER NECESARIO, CEROS A

LA IZQUIERDA DE LA PARTE ENTERA O A LA DERECHA DE LA PARTE FRACCIONARIA Y POSTERIORMENTE SE

CONVIERTE AL VALOR CORRESPONDIENTE EN BASE OCHO.

PARA LA CONVERSIÓN DE Y A HEXADECIMAL SE REEMPLAZAN O AGRUPAN CUATRO DÍGITOS.

Aritmética Binaria

Veremos la suma y la multiplicación en binario ya que son las operaciones que a nivel de la

computadora se realizan en forma directa

La suma binaria se realiza en forma similar a la forma de sumar en el sistema decimal. Dos números

binarios A y B se suman de derecha a izquierda, desde el bit de menor peso (LSB) al de mayor peso

(MSB) generando un bit de suma y un bit de acarreo en cada posición binaria. Las combinaciones

de los dos valores posibles de cada dígito son 22 = 4 a saber:

Suma Binaria

Organizadas en una tabla:

Acarreo

+ 0

+ 1

+ 1

+ 0

1 0 1 0

1 1 10 0

+ 0 1

0 0 1

1 1 10

Acarreo 1 1 1

Sumando A

+

Sumando B

1 0 1 1 1 0 0 1 (185)

1 1 0 1 0 1

+

(53)

Suma 1 1 1 0 1 1 1 0 (238)

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

12

Multiplicación Binaria

Suma y multiplicación en octal

+ 1 2 3 4 5 6 7

1 2 3 4 5 6 7 10

2 3 4 5 6 7 10 11

3 4 5 6 7 10 11 12

4 5 6 7 10 11 12 13

5 6 7 10 11 12 13 14

6 7 10 11 12 13 14 15

7 10 11 12 13 14 15 16

25

* 19

475

1 1 0 0 1

* 1 0 0 1 1

Acarreo 1 1 1 0 0 1

1 1 0 0 1

1 1 0 0 1 0 0

1 1 1 0 1 1 0 1 1

* 0 1

0 0 0

1 0 1

* 2 3 4 5 6 7 10

2 4 6 10 12 14 16 20

3 6 11 14 17 22 25 30

4 10 14 20 24 30 34 40

5 12 17 24 31 36 43 50

6 14 22 30 36 44 52 60

7 16 25 34 43 52 61 70

10 20 30 40 50 60 70 100

7 3 5 48

+

1 1 2 38

1 0 4 7 78

Acarreo 1 1

1 0 6 08

+

1 7 7 68

3 0 5 6

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

13

Suma y multiplicación en hexadecimal

+ 1 2 3 4 5 6 7 8 9 A B C D E F

1 2 3 4 5 6 7 8 9 A B C D E F 10

2 3 4 5 6 7 8 9 A B C D E F 10 11

3 4 5 6 7 8 9 A B C D E F 10 11 12

4 5 6 7 8 9 A B C D E F 10 11 12 13

5 6 7 8 9 A B C D E F 10 11 12 13 14

6 7 8 9 A B C D E F 10 11 12 13 14 15

7

8 C O M P L E T A R

9

A

B

C

D

E

F

Acarreo

Acarreo 1

F 1 E 516

+

A B C 116

1 9 D A 6

* 2 3 4 5 6 7 8 9 A B C D E F

2 4 6 8 A C E 10 12 14 16 18 1A 1C 1E

3 C O M P L E T A R

4

5

6

7

8

9

A

B

C

D

E

F

1

0 0 1 816

*

2 016

3 0 0

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

14

Representación de la información Toda información se almacena en la computadora en forma binaria, sin importar si es un número:

entero, real, o un carácter: letra, símbolo o imágenes, etc.

En cada caso se almacenará en un formato distinto aún para el mismo tipo de dato.

Representación de enteros o de punto fijo

En la representación de punto fijo todos los números a representar tienen la misma cantidad de

dígitos y la coma en el mismo lugar ( a la derecha del LSB).

Hay cinco formas de representar números de punto fijo en una computadora:

• Binario puro sin signo (BP)

• Módulo y signo (MS)

• Complemento a 1 (C-1)

• Complemento a 2 (C-2)

• Exceso a 2N-1

Binario Puro

Se utiliza generalmente para representar valores positivos que puedan representarse en 1 Byte.

Al conjunto de valores que se puede representar con un determinado número de bits, n , se lo

conoce como rango de la representación, se puede expresar en forma genérica:

0 <= X <= 2N - 1

Para 8 bits (1 Byte) el rango es 0 <= x <= 27

= 255 Representar 128 en BP:

Para 16 bits (2 Bytes) el rango es 0 <= x <= 216

-1 = 65535

Para 32 bits (4Bytes) el rango es 0 <= x <= 232

-1 = 4.294.967.295

Módulo y Signo

En este método se utiliza el primer bit a la izquierda como signo, asignando al bit el valor 0 si se

representa un número positivo o 1 si se representa un número negativo.

1 0 0 0 0 0 0 0

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

15

Ejemplo representar en MS : 127

Bit número

127 Signo

Módulo

-127

Para MS el rango de representación para N dígitos es:

-2N-1

+ 1 <= X <= 2N-1

- 1

Para 1 Byte es: -127 <= x <= 127

Para 2 Bytes es: -32767 <= x <= 32767

Para 4 Bytes es: -2.147.483.647<= x <= 2.147.483.647

Este método tiene la ventaja de poseer un rango simétrico pero la desventaja de poseer doble

representación para el 0:

0 0 0 0 0 0 0 0

y

1 0 0 0 0 0 0 0

Complemento a 1 (C-1)

Existen dos tipos de complemento. El complemento a la base y el complemento a la base - 1. Es

decir, para los números binarios existen los complementos a 2 y a 1. En base octal serían

complemento a 8 y a 7.

Para representar un número positivo es igual que en MS, pero los números negativos, se obtienen

complementando (reemplazando cada 1 por 0 y viceversa ) al positivo.

Para C-1 el rango de representación para N dígitos es:

7 6 5 4 3 2 1 0

0 1 1 1 1 1 1 1

7 6 5 4 3 2 1 0

1 1 1 1 1 1 1 1

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

16

-2N-1

+ 1 <= X <= 2N-1

- 1

127

-127

Este método presenta las mismas ventajas y desventajas que el MS

Complemento a 2 (C-2)

Para la representación de números positivos es igual que C-1 pero la representación de los números

negativos se obtiene en dos pasos:

• Se complementa a 1

• Al resultado se le suma 1

Ejemplo:

127

-127

Para C-2 el rango de representación para N dígitos es:

7 6 5 4 3 2 1 0

0 1 1 1 1 1 1 1

7 6 5 4 3 2 1 0

1 0 0 0 0 0 0 0

7 6 5 4 3 2 1 0

0 1 1 1 1 1 1 1

1 0 0 0 0 0 0 0

+ 1

1 0 0 0 0 0 0 1

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

17

-2N-1

<= X <= 2N-1

- 1

Para 1 Byte es: -128 <= x <= 127

Para 2 Bytes es: -32768 <= x <= 32767

Para 4 Bytes es: -2.147.483.648<= x <= 2.147.483.647

Este método tiene la ventaja de tener una única representación para el 0 y además se puede restar

de la siguiente manera:

A - B = A + BC-2

Dado que se puede demostrar: A – B = A + BC donde BC es el complemento a la base del

número B

Cuando se resta un número binario (B) de otro número binario (A), el procedimiento es como

sigue:

• Tómese el C-2 de B, incluye el bit del signo. Si B es un número positivo, este se

transforma en un número negativo en forma de complemento 2. Si B es un número

negativo, este se convertirá en uno positivo en forma binaria verdadera. En otras

palabras se altera el signo B.

• Después de formar el C-2 de B este se suma a A. A se conserva en su forma original. El

resultado de esta adición representa la diferencia que se pide. El bit del signo de esta

diferencia determina si es positivo o bien negativo, y si esta en forma binaria verdadera

o en forma de complemento 2.

OBSÉRVESE QUE PARA CALCULAR EL COMPLEMENTO A 2 DE UN NÚMERO BINARIO SÓLO

BASTA CON REVISAR TODOS LOS DÍGITOS DESDE EL MENOS SIGNIFICATIVO HACIA EL MÁS

SIGNIFICATIVO Y MIENTRAS SE CONSIGA UN CERO, DEJARLO IGUAL, AL CONSEGUIR EL PRIMER

NÚMERO 1, DEJARLO IGUAL PARA LUEGO COMPLEMENTAR EL RESTO DE ELLOS HASTA LLEGAR

AL MÁS SIGNIFICATIVO.

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

18

• Recuérdese que ambos números deben tener el mismo número de bits.

Ejemplo:

C-2 de +4

En C-2 el acarreo se ignora el resultado de la operación es 0 0 1 0 1 = +5

Ejercicio

Hacer la siguiente resta binaria utilizando la técnica del complemento a dos. Al terminar,

comprobar los resultados haciendo la resta en el sistema decimal:

Exceso a la base o exceso a 2n - 1

En la representación en exceso o desplazamiento los números se tratan como si no tuvieran signo,

todos los bits se utilizan para representar el valor del número más el exceso que viene dado por la

expresión: 2n – 1

o sea si n = 8 bits el Exceso = 128.

Para representar un número N en exceso utilizando n bits se obtiene de la siguiente expresión:

NEXCESO = N + 2n - 1

EXCESO

Para n = 16 bits el número 4302 en Exceso a 215

= 32.768 es:

(4302)Exc a 32.768 = 4302 + 32.768 = 37.070 = 1001000011001110Exc a 32768

Hay una sola representación desplazada para el 0, dado que la representación excedida constituye

una representación desplazada de la representación C-2.

En la representación en exceso 128 o sea utilizando 8 bits el número más negativo es :

(-128)10 =

0 1 0 0 1 +9

-

1 1 1 0 0 +4

1 0 0 1 0 1 +5

1 1 0 1 0 0 0 1 1 0 1

= +

C-2 0 0 1 1 1 0 0 0 0 1 1

1 1 0 1 0 0 0 1 1 0 1

-

1 0 0 0 1 1 1 1 0 1

0 0 0 0 0 0 0 02

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

19

y el más positivo (+127)10 =

Esta representación tiene la ventaja de que los valores de los números negativos tienen valores

numéricamente menores que los positivos lo que facilita las comparaciones entre ambos. Esto

cobra importancia en la representación de punto flotante, que veremos próximamente, dado que

se utiliza para representar los exponentes.

Desbordamiento (Overflow)

El desbordamiento se produce cuando el resultado de una operación entre números representados

en un determinado sistema no se puede representar en dicho sistema.

Veamos un ejemplo:

En MS

-21 en MS

149 no se puede representar en MS con 8 bits

Decimal codificado en binario o BCD Cada dígito del sistema decimal se representa con 4 bits, cada dígito BCD puede tomar uno de diez

valores de acuerdo con la siguiente tabla:

Decimal BCD

Peso del bit 8 4 2 1

0 0 0 0 0

1 0 0 0 1

2 0 0 1 0

3 0 0 1 1

4 0 1 0 0

5 0 1 0 1

6 0 1 1 0

7 0 1 1 1

8 1 0 0 0

9 1 0 0 1

1 1 1 1 1 1 1 12

0 0 1 1 0 1 0 0 5 2

+

9 7

1 4 9

0 1 1 0 0 0 0 1

1 0 0 1 0 1 0 1

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

20

Utilizando 4 bits las combinaciones posibles son 24 = 16 de las cuales solo se utilizan las 10

representadas en la tabla.

Este formato se emplea habitualmente en las calculadoras y en aplicaciones comerciales

Ejemplo representar 301 en BCD:

BCD ,C-9, C-10

Decimal

En este sistema decimal codificado en binario la representación en Complemento a la Base – 1 = C-9

los números positivos se codifican en BCD habitual, pero el dígito MSB adopta un valor menor que 5

si el número es positivo y 5 o más si el numero es negativo.

El número -301 en C-9 se obtiene restando cada dígito de nueve, por ejemplo el segundo dígito es :

9 en BCD

-

3 en BCD

Recordemos que la resta lo hacemos sumando al minuendo el C-2 del sustraendo:

9 en BCD

+ 3 en C-2

Resultando -301 en C-9:

C-9

El C-10 se obtiene sumando 1 al C-9 por lo que el 9698C-9 = 9699C-10

´

0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1

0 3 0 1

1 0 0 1

0 0 1 1

1 0 0 1

1 1 0 1

0 1 1 0

1 0 0 1 0 1 1 0 1 0 0 1 1 0 0 0

9 6 9 8

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

21

Representación de números reales o de punto flotante.

Los formatos de punto flotante se establecen de acuerdo a la norma IEEE 754-1985. (I triple e,The

Institute of Electrical and Electronic Engineers.)

Hay dos formatos:

• El formato de simple precisión requiere 32 bits.

• El formato de doble precisión requiere 64 bits.

Simple precisión SP:

32 bits para la representación

1 bit, el MSB, para el signo

0 positivo, 1 negativo

8 bits para el Exponente

representado en Exceso 127

23 bits para la mantisa

representado en binario

Doble precisión DP:

64 bits para la representación

1 bit, el MSB, para el signo

0 positivo, 1 negativo

11 bits para el Exponente

representado en Exceso 1023

52 bits para la mantisa

Representado en binario

Para trabajar con números normalizados se desplaza la coma a derecha o a izquierda, hasta ubicarla

a la derecha del dígito no nulo más significativo:

Sin normalizar Normalizado

1110112 1,11011 x 25

1101,011 1,101011 x 23

0,01001 1,001 x 2-2

Ejemplos SP:

(1)

(1) El número en cuestión en SP: 0100 0010 0101 42516

Valor Signo Exponente Mantisa

+1,101 x 25

0 1000 0100 101 0000 0000 0000 0000 0000

-1,01011x2-126

1 0000 0001 010 1100 0000 0000 0000 0000

Universidad Tecnológica Nacional –Instituto Naciona l Superior del Profesorado Técnico Automatización y Robótica

Computación Profesor: Lic. Delmiro Gil

Jefes de Trabajo Práctico: Prof. María del Carmen M artínez Lic. Gustavo Lovallo

22

Referencias bibliográficas:

[1] Introducción a la Informática Autores: Albarracín, E.Lancharro, M.López McGraw Hill Pág.46 .[2] Principios de arquitectura de computadoras: M.Murdocca, V.Heuring.Prentice Hall Pág 27