Вы находитесь на странице: 1из 63

Informtica y Programacin

Escuela de Ingenieras Industriales y Civiles


Grado en Ingeniera Qumica
Curso 2010/2011

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Mdulo 1.
Fundamentos de
Computadores

Tema 1. Introduccin y conceptos bsicos


Tema 2. Representacin de la informacin
Tema 3. Hardware
Tema 4. Software. Paquetes software aplicados a
ingeniera

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

CONTENIDO

Recordemos nuevamente la definicin de ordenador:


Computadora, computador u ordenador es una mquina capaz de aceptar unos
datos de entrada, efectuar con ellos operaciones lgicas y aritmticas, y proporcionar
la informacin resultante a travs de un medio de salida; todo ello sin intervencin de
un operador humano y bajo el control de un programa de instrucciones previamente
almacenado en la propia computadora.

Recordemos tambin el concepto de dato


Los datos son conjuntos de smbolos utilizados para expresar o representar un valor
numrico, un hecho, un objeto o una idea; en la forma adecuada para ser objeto de
tratamiento.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Introduccin

Los ordenadores aparecieron en primer lugar como mquinas para realizar


clculos (del latn calculus, que significa contar con piedras), para dicha tarea los humanos
empleamos el sistema decimal que hace uso de diez smbolos.
Por qu el sistema decimal?
Contando con los diez dedos:

La tecnologa electrnica que utilizan los ordenadores slo permite


distinguir dos estados diferentes: encendido y apagado.

El sistema de numeracin de dos estados o valores se denomina


binario, y los dos dgitos que emplea son el 0 y el 1. Siendo el bit
(binari digit) la unidad de informacin ms elemental.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Introduccin

La informacin en los ordenadores se almacena y procesa haciendo uso de la


codificacin basada en el sistema de numeracin binario.
Tanto en la entrada como en la salida de datos, se efectan las
transformaciones de cdigo oportunas, codificacin y decodificacin
respectivamente, para que la informacin sea comprendida por el usuario.
Codificacin: transformacin de elementos de un conjunto en elementos de
otro conjunto siguiendo un mtodo determinado, de tal forma que
posteriormente se pueda efectuar el proceso inverso de decodificacin

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Introduccin

Los ordenadores realizan las operaciones con informacin representada en


forma digital, es decir que tienen valores discretos. Durante muchos aos, las
aplicaciones de la electrnica digital se limitaba a los sistemas informticos. Hoy
en da, la tecnologa digital tiene aplicacin en prcticamente todas las reas.
La informacin antes de ser procesada por un ordenador debe codificarse en
trminos comprensibles para la mquina, es decir, debe convertirse al formato
binario, para obtener su cdigo (un grupo de bits) correspondiente.
Los cdigos permiten representar:
- nmeros
- smbolos
- caracteres alfanumricos
- instrucciones
- cualquier otro tipo de informacin

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Introduccin

Por homogeneidad se utiliza un nmero fijo de bits para representar.


Un byte es el nmero de bits necesarios para almacenar un carcter, y en
general se asume que son 8 bits.
La cantidad de memoria de un ordenador o de un dispositivo de
almacenamiento se describe empleando mltiplos de 8.

1 Kilobyte (KB) = 210 Bytes = 1024 Bytes 103 bytes


1 Megabyte (MB) = 220 Bytes = 1024 Kilobytes 106 bytes
1 Gigabyte (GB) = 230 Bytes = 1024 Megabytes 109 bytes
1 Terabyte (TB) = 240 Bytes = 1024 Gigabytes 1012 bytes
1 Petabyte (PB) = 250 Bytes = 1024 Terabytes 1015 bytes
Exabyte, Zettabyte, Yottabyte

En el sistema mtrico decimal un Kilmetro se corresponde con 1000 metros, se


utiliza la potencia de 2 ms prxima a esa cantidad.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Introduccin

Todos estamos familiarizados con el sistema de numeracin decimal:

Lo utilizamos cotidianamente.
Es un sistema de representacin posicional, en concreto un sistema de
numeracin de base 10

Un sistema de numeracin en base b se caracteriza por:

Disponer de un alfabeto con b smbolos o cifras. En el sistema de base 10


disponemos de 10 smbolos o cifras: S10={0,1,2,3,4,5,6,7,8,9}
Todo nmero se expresa empleando un conjunto de dichas cifras donde el
valor de cada cifra depende:

De s misma, y

De la posicin que ocupa


Por ejemplo en el sistema de base 10 no representan el mismo nmero 986
que 869 an cuando los smbolos utilizados son los mismos.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin

Ocurre en el caso general que la interpretacin de una cifra, c, es


igual a una potencia de la base, b, en funcin de la posicin. Para 986
y 869 se observa que no son iguales
986 = 9 * 102 + 8 * 101 + 6 * 100
869 = 8 * 102 + 6 * 101 + 9 * 100

La regla se extiende para nmeros no enteros


986,21 = 9 * 102 + 8 * 101 + 6 * 100 + 2 * 10-1 + 1 * 10-2

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin

Un ordenador utiliza en sistema binario natural, binario o de base 2, que consta


de dos smbolos S2={0,1}
Ejemplo: Para codificar 4 smbolos, necesitamos 2 bits.
Smbolo a codificar

Cdigo binario

0
1
2
3

00
01
10
11

Cuntos bits son necesarios para codificar m smbolos?


n bits, de modo que 2n m; n>=log2 nmero de caracteres
para 4 smbolos necesitamos 22 2 bits
para 256 smbolos necesitamos 28 8 bits
para 257 smbolos necesitamos 29 9 bits
para 512 smbolos necesitamos 210 10 bits

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: binario

10

La conversin de binario a decimal es sencilla siguiendo la regla vista


anteriormente para el sistema decimal, es decir, multiplicamos la cifra por la
potencia de la base en funcin de la posicin de dicha cifra
01101)2 = 1 * 23 + 1 * 22 + 1 * 20 = 13)10
010101,011)2 = 1 * 24 + 1 * 22 + 1 * 20 + 1 * 2-2 + 1 * 2-3 =
21 + 1/22 + 1/23 = 21 + 0,25 + 0,125 = 21,375)10

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: binario

11

Para la conversin de decimal a binario debemos tratar por separado la parte


entera (mtodo de las divisiones) y la parte fraccionaria (mtodo de las
multiplicaciones)
El equivalente binario a la parte entera se obtiene dividiendo por 2 y
tomando los sucesivos restos y el ltimo cociente. El ltimo cociente se
corresponde al bit ms significativo (MSB), y el primer resto al menos
significativo (LSB)

13

13)10 = 1101)2

116

58

29

14

116)10 = 1110100)2

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: binario

12

La parte fraccionaria del nmero binario se obtiene multiplicando por dos


sucesivamente, si no resulta nulo, la parte fraccionaria del nmero decimal.
El nmero binario se forma con las partes enteras que se van obteniendo.
Puede dar lugar a un nmero largo o incluso infinito de cifras binarias, por lo
que si el nmero de bits para la parte fraccionaria estuviera limitado podra
existir error de truncamiento.

0,1875)10
0,1875
x2

0,375
x2

0,75
x2

0,5
x2

0,3750

0,750

1,50

1,0

0,1875)10 = 0,0011)2

De esta forma para un nmero con parte entera (supongamos 116 de la transparencia
anterior) y fraccionaria
116,1875)10 = 1110100,0011)2

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: binario

13

Ejercicios

Binario a decimal

11001

01110

100111

0,10010

101101,11

110101001

10101,001
Decimal a binario

869

34,1875

7463

142,34

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: binario

14

El ordenador hace adems uso de


otros dos cdigos, empleados como
intermedios

Hexadecimal, cdigo de base 16


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

Octal, cdigo de base 8


S8={0,1,2,3,4,5,6,7}

Decimal

Binario

Hexadecimal

Octal

10

11

100

101

110

111

1000

10

1001

11

10

1010

12

11

1011

13

12

1100

14

13

1101

15

14

1110

16

15

1111

17

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: octal, hexadecimal

15

Para la conversin de octal (Base octal S8={0,1,2,3,4,5,6,7}) a decimal puede


emplearse una tcnica anloga a los nmeros en base diez (mtodos divisiones
y multiplicaciones).
Conversin de octal a decimal
Nmero: 432)8
Valor: 4 * 82 + 3 * 81 + 2 * 80 = 282)10
Conversin de decimal a octal, mtodos de las divisiones, (y nos quedamos con los
restos) y multiplicaciones (nos quedamos con la parte entera) con divisor y
multiplicador 8
Nmero: 234,1285)10
Valor: 352,10162540)8

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: octal

16

Sin embargo es ms sencillo aplicar un esquema


aprovechando que la base es potencia de 2, b=8=23

Conversin de binario a octal: Cada


corresponde con un grupo de tres cifras
inversa cada grupo de tres cifras binarias
con un cifra octal. Podemos agrupar
transformar mediante tabla de conversin.

cifra octal se
binarias, y a la
se corresponde
de 3 en 3 y

10100101,1101)2
010 100 101 , 110 100)2
2 4 5 , 6 4)8

Conversin de octal a binario, utilizar tabla de conversin


para cada cifra de forma similar
Nmero: 3245,765)8
Valor: 011010100101,111110101)2

Binario

Octal

000

001

010

011

100

101

110

111

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: octal

17

Para las conversiones entre hexadecimal (Base


hexadecimal S16={0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}):

Conversin de hexadecimal a decimal, sumar los pesos


(2n) de las posiciones en las que hay un 1.
Nmero: 857A)16
Valor:

8*163 +

5*162 +

7*161 +

A*160

= 34170)10

Conversin de decimal a hexadecimal, mtodos de las


divisiones y multiplicaciones con divisor y multiplicador 16
Nmero: 234)10

Valor: EA)16

Decimal

Hexadecimal

10

11

12

13

14

15

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: hexadecimal

18

Para las conversiones del sistema hexadecimal


(S16={0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}) a binario

Binario

Hexadecimal

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

1010

10100101,1101)2

1011

1100

1010 0101 , 1101)2

1101

1110

A 5 , D)16

1111

De nuevo es ms sencillo aplicar un esquema


aprovechando que la base es potencia de 2,
b=16=24
Cada cifra hexadecimal se corresponde con un
grupo de cuatro cifras binarias, y a la inversa
cada grupo de cuatro cifras binarias se
corresponde con un cifra hexadecimal.
Podemos emplear la tabla en ambos sentidos.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: hexadecimal

19

Observando la tabla, puedes buscar reglas de


formacin que te eviten depender de memorizar:

Decimal

Octal

000

001

010

La inmediatamente a su izquierda, la segunda,


alterna de dos en dos.

011

100

La tercera de cuatro en cuatro (22)

101

110

111

La columna ms a la derecha alterna ceros y


unos.

La cuarta (para el cdigo hexadecimal) de ocho


en ocho (23)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: octal, hexadecimal

20

Para convertir entre octal y hexadecimal:

Conversin de hexadecimal a octal, se convierte cada cifra del nmero a binario


y luego se transforma a octal agrupando las cifras de 3 en 3 mediante tabla de
conversin
Nmero: AF,16C16) en binario 1010 1111,0001 0110 1100)2
Agrupamos de 3 en 3: 010 101 111,000 101 101 100
Valor: 257,0554)8

Conversin de octal a hexadecimal, se utiliza tambin la transformacin


intermedia en base 2.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: octal, hexadecimal

Nmero: 257,0554)8 en binario 010 101 111,000 101 101 100)2


Agrupamos de 4 en 4: 1010 1111,0001 0110 1100
Valor: AF,16C)16

21

Ejercicios

Octal a binario
2067
14267

Hexadecimal a binario
2D5E

Octal a decimal
3261

Hexadecimal a decimal
A912,C

Binario a octal y hexadecimal


11001
110101001
Convierte a las otras bases
1010110101)2 y 10101,11001)2
376,765)10
5AC3)16 y F743)16
0523)8 y 6455)8

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: octal, hexadecimal

22

Operaciones aritmticas en cdigo binario. Las tablas de sumar y restar son:


a

a+b

0 y me llevo 1

a-b

1 y debo 1

110101
+101001
1011110

110101
-101001
001100

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

23

Cuando la suma de dos dgitos excede los smbolos numricos disponibles en la


notacin, se lleva un 1 (acarreo) a la posicin de dgito inmediatamente
superior.
1

1 1

1010
+101

101010
+001001

00111001 = 57
+00100011 = 53

1111

110011

01011100 = 92

11 1

11 1

1111
+111

10111000 = 184)10
+00111011 = 59)10

10110

11110011 = 243)10

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

24

Para realizar la resta se puede utilizar la tabla de la suma contando hacia atrs
(descontando). Cuando la resta de dos dgitos excede (por debajo) los smbolos
numricos disponibles en la notacin, se realiza un pedido o deuda de 1 a la
posicin de dgito inmediatamente superior.

110101
-101001
001100

1 11

1100011
-101001
0111010

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

25

Otra tcnica eficiente para realizar sustracciones consiste en sumar al minuendo


el complemento a 1 del sustraendo.
El complemento a 1 de un nmero N, es el nmero que resulta de restar cada
una de las cifras de N a la base menos uno del sistema de numeracin que se
est utilizando. Es equivalente a intercambiar unos y ceros, as el complemento
a 1 de 1011 es 0100.
Podemos restar dos nmeros sumando al minuendo el complemento a 1 del
sustraendo.
Si hubiera una cifra que se arrastra del resultado se descarta y se sumara al
resultado as obtenido.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

26

Veamos un ejemplo:

1. Si la cantidad de dgitos del sustraendo es menor


que la del minuendo, se completa el sustraendo
con ceros a la izquierda de la parte entera, y a la
derecha de la parte decimal (encolumnar por la
coma)
2. Se halla el complemento del sustraendo,
restando este valor del mximo valor binario con
la misma longitud del minuendo, cambiar 0 por 1
y 1 por 0.
3. Se suma el minuendo al complemento del
sustraendo

4. Se elimina el 1, acarreo, de la izquierda y se suma


con el dgito ms a la derecha del resultado, sin
importar la coma decimal.

100011.101
-10101.000

minuendo
sustraendo

111111.111
-010101.000
101010.111

complemento

100011.101
+101010.111
1)001110.100
001110.100
+
1
001110.101

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

27
resultado

Las comprobaciones pueden realizarse


convirtiendo a decimal las cifras del minuendo
y del sustraendo y realizando la resta.

Otro modo de controlar el resultado es sumar


el resultado al sustraendo, debiendo obtenerse
el minuendo

100011.101
-10101.000
1110.101

1110.101
+10101.000
100011.101

= 35.625)10
= 21)10
= 14.625)10

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

28

Las tablas de multiplicar y dividir en binario

axb

a/b

indeterminado

infinito

110101
x
10
000000
110101
1101010

110101
- 101

1010,1

00110

101
00110

101

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

0101
0001

29

Operaciones aritmticas en cdigo octal: Tabla de sumar.

+
0
1
2
3
4
5
6
7

0 1
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 10
1

+
1

2
2
3
4
5
6
7
10
11

3
3
4
5
6
7
10
11
12

4
4
5
6
7
10
11
12
13

5
5
6
7
10
11
12
13
14

6
6
7
10
11
12
13
14
15

4
7
3

1
5
7

6
2
0

3
0
3

7
7
10
11
12
13
14
15
16

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

30

Operaciones aritmticas en cdigo hexadecimal: Tabla de sumar.


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

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

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

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

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

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

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

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

8
8
9
A
B
C
D
E
F
10
11
12
13
14
15
16
17

9
9
A
B
C
D
E
F
10
11
12
13
14
15
16
17
18

A
A
B
C
D
E
F
10
11
12
13
14
15
16
17
18
19

11

B
B
C
D
E
F
10
11
12
13
14
15
16
17
18
19
1A

C
C
D
E
F
10
11
12
13
14
15
16
17
18
19
1A
1B

D
D
E
F
10
11
12
13
14
15
16
17
18
19
1A
1B
1C

E
E
F
10
11
12
13
14
15
16
17
18
19
1A
1B
1C
1D

F
F
10
11
12
13
14
15
16
17
18
19
1A
1B
1C
1D
1E

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

1 11

6AE
+1FA

9654 = 38484
+4528 = 17704

8F97.F00
+D44C.F9E

8A8

DB7C = 56188

163E4.E9E

31

Suma en cdigo octal y hexadecimal.

Una manera sencilla de realizar la suma en octal y hexadecimal es usando el


mtodo del reloj. Consiste en ordenar todos los smbolos en un crculo, de
menor a mayor como en un reloj. Para realizar la suma se procede de la
siguiente manera:
1. Posicionarse en el lugar correspondiente al primer sumando.
2. Desplazarse en el sentido de las agujas del reloj, avanzando tantas posiciones
como lo indique el segundo sumando.
3. El resultado de la suma ser la ltima posicin a la que se llegue.
4. Cuando al sumar se supere el valor del ltimo dgito del sistema de numeracin,
se produce un acarreo y debe aadirse una unidad a la posicin inmediata
superior.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

32

Suma en cdigo hexadecimal.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

33

La resta en cdigo octal (en hexadecimal es anloga)


podemos aplicar la tcnica del complemento

6204,02
- 5173

Minuendo

Sustraendo

1. Si la cantidad de dgitos del sustraendo es menor que la


del minuendo, se completa el sustraendo con ceros a la
izquierda de la parte entera, y a la derecha de la parte
decimal (encolumnar por la coma)

2. Se halla el complemento del sustraendo, restando este


valor del mximo valor octal con la misma longitud del
minuendo
3. Se suma el minuendo al complemento del sustraendo
4. Se elimina el posible acarreo de la izquierda,
sumndose al dgito ms a la derecha, sin importar la
coma decimal.

7777,77
- 5173,00
2604,77

Complemento

6204,02
+ 2604,77
11011,01
+
1
1011,02

resultado

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

34

La resta hexadecimal sigue las mismas reglas que la resta decimal y binaria, con
la salvedad que un pedido de 1 en la notacin hexadecimal representa el
nmero decimal 16.
Usando el mtodo del reloj se procede de la siguiente manera:
1. Posicionarse en el smbolo correspondiente al minuendo
2. Desplazarse en el sentido contrario a las agujas del reloj la cantidad de veces
indicada por el sustraendo.
3. El resultado de la resta ser la ltima posicin a la que se llegue.
4. Cuando al restar se llega a un valor inferior a 0, se realiza un pedido y se debe
restar una unidad a la posicin inmediata superior.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

35

Sistemas de numeracin: aritmtica


Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Resta en cdigo hexadecimal.

36

Ejercicios

Operaciones aritmticas
1110101)2 + 1010010)2
1110101)2 - 1010010)2
1110101)2 * 101)2
1110101)2 / 10)2
456)8 + 22)8
98)16 + 7)16
76)8 32)8
22)10 + 1001)2 + 32)8 + FF)16
El complemento a 1 del nmero binario es: 0101 0111 1011. Cul es el
nmero expresado en hexadecimal?
Convierte los nmeros 239)10 y 37)10 a cdigo binario, octal y
hexadecimal. Posteriormente realiza la suma y la resta de los mismos en
cdigo binario.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Sistemas de numeracin: aritmtica

37

Conocidos los internos cdigos que emplea un ordenador, es interesante


describir el modo en que distintas entidades u objetos se codifican empleando
dichos cdigos. Las entidades que consideraremos brevemente sern:

Texto o Alfanumricos
ASCII
Unicode
Sonidos
Imgenes
Mapa de bits
Vectorial

Valores numricos
BCD
Coma fija
Decimal desempaquetado
Decimal empaquetado
Binario puro
Signo y mdulo
Complemento a uno
Complemento a dos
Coma flotante

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos

38

Los principales caracteres alfanumricos utilizados son:

Alfabticos: A, B, C, D, E,..., X ,Y, Z, a, b, c, d,..., x, y, z


Numricos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
Especiales: ) ( , * / ; : + = ! ? . " & > # < ] [ SP
De control: Por ejemplo el fin de lnea
Grficos:

Los cdigos de texto son la traduccin de estos caracteres a conjuntos de bits. El


nmero de bits necesario, n siendo un valor entero, depende del nmero de
caracteres distintos que se desea se puedan representar.
Con dos bits podemos representar 4 caracteres, con 8 256, etc.
n>=log2 nmero de caracteres

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: alfanumricos

39

El cdigo ms frecuente utiliza 7 bits y se conoce como ASCII (AmericanS


tandard Code for Information Interchange).
El cdigo ASCII surgi originalmente como estandarizacin en 7 bits de varias
codificaciones especiales y luego se extendi a una codificacin de 8 bits. Se usa
especialmente para la transmisin de datos y ha sido adoptado actualmente
por la gran mayora de los fabricantes de teclados. Utiliza nicamente 7 bits
para la representacin de los datos y estn almacenados justificados por la
derecha dentro de un campo estndar de 8 bits. El octavo bit se utiliza para la
paridad de los anteriores.
Unicode (16 bits): Moderno, desarrollado como estndar. Es una ampliacin del
cdigo ASCII de 8 bits para poder codificar distintos juegos de caracteres (latino,
griego, rabe, kanji, cirlico, etc)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: alfanumricos

40

Existen ampliaciones para incorporar caracteres de distintas lenguas.


Pero no son suficientes para considerar tambin caracteres no latinos, por ello
ha surgido Unicode que con 16 bits representa 65536 caracteres.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: alfanumricos

41

Valores numricos reales

Los valores numricos se transmiten a travs de las unidades E/S como


alfanumricos.
La representacin alfanumrica no es vlida para operar.
Antes de operar se transforman a su correspondiente valor en base 2
Hay muchas maneras de representar datos numricos en forma binaria.
Directamente el nmero en base 2, denominada representacin binaria
directa.
Otras codificaciones: BCD, coma fija, coma flotante

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

42

BCD: Codifica los nmeros decimales dgito a dgito. A


esta codificacin, que requiere 4 bits por cada dgito
decimal, se le llama codificacin BCD (Binary Coded
Decimal).

Se usa codificacin ponderada, en la cual, se le dan a


los bits, de izquierda a derecha, los pesos 8-4-2-1,
respectivamente. Como estos pesos son precisamente
los valores de posicin en el sistema binario, un dgito
decimal est codificado como su representacin
binaria, segn la tabla.
Ejemplo: El nmero 469)10
0100 0110 1001 BCD
4

111010101)2 Binaria directa


(3 bits menos)

Binario

BCD

0000

0001

0010

0011

0100

0101

0110

0111

1000

1001

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

43

Coma Fija: La computadora dispone de un nmero finito de bits (llamado


palabra) para la representacin interna de los datos, lo que hace que los
nmeros reales sufran un determinado truncamiento en su parte decimal. El
tamao de la palabra depende del ordenador que se utilice y se corresponde
con la cantidad de bits que es capaz de transferir en una operacin de E/S.
La representacin en coma fija recibe su nombre de la posicin en que se
supone situado el punto decimal, que es una posicin fija. Actualmente esta
representacin se utiliza slo para nmeros enteros suponiendo que la
coma decimal fija figura implcitamente a la derecha de los dgitos.
Existen tres formas de representar nmeros en coma fija.
Decimal desempaquetado,
decimal empaquetado, y
binario puro.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

44

Decimal desempaquetado: Un nmero se almacena con un byte para cada


cifra. Cada byte lleva en su cuarteto de la izquierda (denominado bits de zona)
cuatro unos (F en hexadecimal) y en el de la derecha (bits de dgitos) la cifra en
BCD. El cuarteto de la izquierda de la ltima cifra representa el signo,
conteniendo 1100 (C en hexadecimal) para el (+), y 1101 (D en hexadecimal)
para el (-).
Ejemplo: 1992)10 1111 0001 1111 1001 1111 1001 1100 0010
F1

F9

F9

C2

- 1992)10 1111 0001 1111 1001 1111 1001 1101 0010


F1

F9

F9

D2

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

45

Decimal empaquetado: En este sistema se representa cada dgito en un


cuarteto (sin bits de zona), salvo el primero por la derecha, que lleva el signo
con los mismos valores que antes, conteniendo 1100 (C en hexadecimal) para el
(+), y 1101 (D en hexadecimal) para el (-).
Ejemplo: 199210) 0000 0001 1001 1001 0010 1100
0 1
-199210)

9 9

2 C

0000 0001 1001 1001 0010 1101


0 1

9 9

2 D

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

46

Binario puro: El nmero se representa en una palabra, utilizando el bit de ms a


la izquierda para representar el signo (0 para el + y 1 para el -). Para los nmeros
positivos, el resto de los bits (N-1) representan el mdulo del nmero. El rango
de representacin, para N dgitos es de:

-2N-1 + 1 X 2N-1 1
Excepto en el Complemento a dos que es de:
-2N-1 X 2N-1 1
Los nmeros negativos varan en su representacin segn los 3 mtodos
siguientes

Mdulo y signo (MS)

Complemento a uno (C1)

Complemento a dos (C2)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

47

Mdulo y signo (MS): El resto de los (N-1) bits representan el mdulo del
nmero, tanto de los positivos como de los negativos.

Ejemplo: 10)10 0 0001010


+ mdulo

-10)10 1 0001010
- mdulo

Complemento a uno (C1): El negativo de un nmero se obtiene


complementando todos sus dgitos (cambiando ceros por unos y viceversa)
incluido el bit de signo.
Ejemplo: 10)10 0 0001010
+ mdulo

-10)10 1 1110101

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

- mdulo
48

Complemento a dos (C2): El negativo de un nmero se obtiene en dos pasos:


1. Se complementa el nmero positivo en todos sus bits incluido el bit de signo
(se realiza el C1 del nmero)
2. Al resultado obtenido en el paso anterior se le suma 1 (en binario)
despreciando el ltimo acarreo, si existe
Ejemplo: 10)10 0 0001010
+ mdulo

-10)10 1 1110101 C1
+

1
1 1110110

Su principal inconveniente es el rango de representacin asimtrico.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

49

Coma Flotante: Para representar dentro de los ordenadores nmeros muy


grandes o muy pequeos, se usa la notacin cientfica o exponencial
matemtica:
Nmero = mantisa Base exponente
En notacin cientfica estndar, los nmeros en base 10 se expresan en la forma
N = m B e = m 10 e
Ejemplos: -246,36 =-2,4636 B+2 = -2,4636 102
82000000000 = 8,2 B+10 = 8,2 1010
0,00003 = 3,0 B-5 = 3 10-5

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

50

En notacin exponencial, un nmero tiene infinitas representaciones, ya que


siempre es posible correr k lugares la coma a la izquierda (o derecha),
simultneamente se incrementa (o decrementa) el exponente en un valor k, sin
que cambie el valor del nmero representado.

13257.3285 = 13257.3285100 = 1.32573285104= 0.132573285105= 13257328510-4=


1325732850010-6=

Se toma como estndar la representacin denominada normalizada, que


consiste en que la mantisa no tiene parte entera y el primer dgito a la derecha
del punto decimal es significativo (distinto de cero), salvo en la representacin
del nmero 0.
728.3 = 7283 10-1 = 728.3 100 = 72.83 101 =
7.283 102 = 0.7283 103 notacin normalizada

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

51

Existen muchas formas de representacin en coma flotante, segn la longitud


de la palabra del ordenador, el nmero de dgitos reservados para la mantisa y
el exponente (MS, C1 C2), etc.
La representacin en coma flotante la determina el fabricante, siendo la
definicin ms utilizada la normalizacin IEEE 754
Esta representacin asume la base 2, B=2, siendo necesario almacenar slo el
signo (1 bit), la mantisa m (nm bits) y el exponente o E (ne bits)
N = m 2E

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

52

Estos bits se reparten en los disponibles para representar el nmero. La


precisin simple (hay doble) asume 32 bits, 1 bit de signo, 8 de exponente
(exponente desplazado 127) y el resto, 23 bits, de mantisa.

Para simple/doble precisin (ordenador con 32/64 bits = 4/8 bytes)


primeros 23/52 bits mantisa normalizada
Bits del 23 al 30/52 al 62 exponente desplazado
Bit 31/63 para el signo (0 positivo, 1 negativo)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

Base 2
El 0 se representa con todos los bits a 0

53

El bit de signo, s en la figura, es 0 para valores positivos y 1 para los negativos


El exponente, e en la figura, no tiene bit de signo, pero para permitir
exponentes positivos y negativos, se almacena desplazado (p.e. en precisin
simple, donde donde ne=8, se le suma siempre 2ne-1 -1 = 127) de tal forma
que no sea necesario un bit de signo. Para obtener el exponente real, E,
basta con restarle el valor de desplazamiento
e=S+E= 2ne-1 -1 + E => E = e (2ne-1 -1)

El exponente se ajusta de modo que slo exista una cifra no nula a la


izquierda de la coma, y que sea 1 (para representar el 0 todos los bits de e y
m son 0)
N = 1101.01 = 1.1010123

m 10101 e 11

Los nmeros con decimales suelen requerir redondeo al no ser


representables en general con un nmero finito de bits

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

54

Representa 67,25 con la normalizacin IEEE 754 en precisin simple

Transformemos primero a binario de forma separada la parte real y la fraccionaria


67

33

16

67,25)10 = 1000011,01)2

0,25
x2

0, 5
x2

0, 50

1, 0

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

55

Representa 67,25 con la normalizacin IEEE 754 en precisin simple (cont.)


Sabemos que el nmero binario es 1000011,01)2
Desplazamos la coma hasta tener slo una cifra a su izquierda
N = 1000011,01 = 1,00001101 26

La normalizacin IEEE 754 con precisin simple utiliza 32 bits, siendo 1


bit de signo, 8 de exponente y 23 de mantisa.
s=0
m = 00001101000000000000000
e = 2ne-1-1+E = 27-1+6 = 133 = 10000101

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

56

Ejercicios
La representacin de un nmero entero en el interior de un computador
en cdigo BCD es 1001 0111. Cul es su valor decimal?
Representar los nmeros reales en el formato IEEE 754
126,12)10
564,17)10

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos: valores numricos

57

Sonido

La seal analgica se capta por medio de un micrfono.


Tras ajustarla a un rango se digitaliza realizando un muestreo a determinada
frecuencia.
Por ejemplo a 20Hz tomara muestras o medidas 20 veces por segundo.
La frecuencia de muestreo es importante de cara a registrar correctamente ondas
sonoras de determinada frecuencia.
Cada muestra se corresponde a un nmero de bits, que caracterizan la precisin de
la digitalizacin, es decir, el rango de valores disponibles para representar el valor
medido en un instante.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos

58

Imgenes

Hay dos esquemas principales para la representacin de imgenes en un


ordenador:
Mapas de bits: Se considera la imagen dividida en una rejilla rectangular de
celdas que se conocen como pxeles (formatos jpeg, bmp, gif, etc.).
Vectoriales: se describe como una coleccin de objetos o primitivas tales como
lneas, polgonos y textos con sus respectivos atributos o detalles. (formato p.e.
CorelDraw)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos

59

Mapas de bits

Dividida en una rejilla rectangular de pxeles.


Cada pxel representa un valor discreto correspondiente a una seal analgica
registrada por el perifrico.
Se almacena en memoria de forma sucesiva empleando un nmero de bits para
representar el valor de cada pxel.
Su calidad depende de la resolucin (nmero de pxeles de la imagen) y del nmero
de bits por pxel.

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos

60

Mapas de bits

La digitalizacin de una seal analgica provoca prdida de informacin, sin


embargo consideramos un sistema digital como muy preciso por qu?. Digital
versus analgico (RGB o 24 bits, 6, 4 y 3 bits)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos

61

Vectorial

Descrita como una coleccin de objetos tales como lneas, polgonos y


textos con atributos o detalles (grosor, color, etc.) modelables por
medio de vectores y ecuaciones matemticas que determinan tanto su
forma como su posicin dentro de la imagen.
Para visualizar una imagen, un programa evala las ecuaciones y escala
los vectores generando la imagen concreta a ver.
Ocupan poco espacio
Slo adecuadas para dibujos geomtricos

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Representacin de datos

62

Fundamentos de Informtica y Programacin para Ingeniera. Ejercicios


Resueltos para C y Matlab. Modesto Castrilln et al, Paraninfo, 2011.
Captulo 3 de Introduccin a la informtica, A. Prieto Espinosa, A. Lloris Ruiz,
J.C. Torres Cantero, McGraw-Hill, Madrid (1989)
El codi digital (El cdigo digital - Digital code)

Grupo Docente IyP Departamento de Informtica y Sistemas - 2010/11

Bibliografa

63

Вам также может понравиться