Está en la página 1de 10

IES N° 6- SEDE PERICO

Capítulo 2 Sistemas Numéricos: La información y su representación.


1. Introducción
2. Representación numérica.
2.1. Sistemas de numeración.
2.1.1. Definición de sistema de numeración.
2.1.2. Sistema decimal.
2.1.3. Teorema fundamental de la numeración.
2.1.4. Sistema binario. Bit, byte y palabra. Suma binaria.
2.1.5. Sistema octal.
2.1.6. Sistema hexadecimal.
2.1.7. Conversiones entre sistemas.

2.2. Representación interna de números enteros. Coma fija.


2.2.1. Módulo y signo.
2.2.2. Complemento a 1.
2.2.3. Complemento a 2.
2.2.4. Exceso a 2n-1.

2.3. Representación interna de números reales. Coma flotante.

3. Representación alfanumérica.
3.1. Código ASCII.
3.2. Código EBCDIC.

1. Introducción.
Cualquier información que se desee manejarse con la computadora debe estar en sistema
binario, es decir debe representarse a base de ceros y unos, ya que los circuitos electrónicos que
forman una computadora sólo reconocen dos estados, a uno le asignan un 0 y a otro un 1. Dentro del
ordenador, en cualquier punto de un circuito se puede distinguir entre presencia de tensión o
ausencia de tensión. Si se asigna el 1 a la presencia de tensión y el 0 a la ausencia se dice que se está
utilizando lógica positiva. En caso contrario se trata de lógica negativa.

2. Representación numérica.
2.1. Sistemas de numeración.
2.1.1. Definición de sistema de numeración.
Un sistema de numeración es un conjunto de símbolos y reglas para combinar dichos
símbolos, que serán utilizados para representar datos numéricos, o sea cantidades.

Se denomina base de un sistema de numeración al número de símbolos que emplea. Se suele


utilizar la notación:

Número en base B  N (B)

Un sistema de numeración es posicional cuando el valor de cada dígito depende de la posición


que ocupe respecto a la coma decimal.

Ej. Un mismo dígito puede tener distintos valores:

51.3  El dígito 5 representa la cantidad 50 por su posición.


Pag. N° 1
IES N° 6- SEDE PERICO

510.3  El dígito 5 representa la cantidad 500 por su posición.

Un valor cualquiera se puede representar en un sistema posicional con base B de la forma


siguiente:

Dn...D1D0.D-1D-2...(B)

2.1.2. Sistema decimal.


El sistema decimal es el que utilizamos para contar desde hace muchos años. Es un sistema
posicional y de base 10, ya que utiliza 10 símbolos que son: 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9.
El rango de cantidades que se puede representar depende del número de dígitos utilizados,
concretamente será BNºdígitos, es decir:
- Con 1 dígito se pueden representar 10 cantidades (101 = 10), de la cantidad 0 a la cantidad 9.
- Con 2 dígitos se pueden representar 100 cantidades (102 = 100), de la cantidad 00 a la 99.
- Con 3 dígitos se pueden representar 1000 cantidades (103 = 1000), de la cantidad 000 a la 999. Y
así sucesivamente.

2.1.3. Teorema fundamental de la numeración.


Este teorema se utiliza para conocer qué cantidad en sistema decimal representa un número
expresado en otro sistema de numeración posicional. La fórmula que debe aplicarse es:

Número expresado en sistema con base B: Dn...D1D0.D-1D-2...(B)

Cantidad en decimal que representa ese número:

Dn*Bn + ... + D1*B1 + D0*B0 + D-1*B-1 + D-2*B-2...

Ej. El número 201.1(3 representa la cantidad 19.33:

201.1(3 = 2*32 + 0*31 + 1*30 + 1*3-1 = 19.33(10

2.1.4. Sistema binario. Bit, byte y palabra. Suma binaria.


El sistema binario es el que emplean internamente los circuitos de la computadora. Este
sistema tiene base 2, utilizando los símbolos 0 y 1. Cada dígito se llama bit (binary digit) y se definen
los siguientes grupos de bits:

- Byte: conjunto de 8 bits.


- Kilobyte (Kb): conjunto de 1024 bytes (1024 * 8 bits).
- Megabyte (Mb): conjunto de 1024 Kb (1024*1024*8 bits).
- Gigabyte (Gb): conjunto de 1024 Mb.
- Terabyte (Tb): conjunto de 1024 Gb.

Se define palabra como el número de bits para el que ha sido diseñada una computadora, por
ejemplo existen procesadores cuya palabra consta de 64 bits.

En lugar de 1000 para la cantidad kilo se utiliza 1024 por motivos de diseño electrónico de los
dispositivos, que almacenan la información en potencias de 2, siendo la potencia de 2 más cercana a
1000 la 1024 (210).
Pag. N° 2
IES N° 6- SEDE PERICO

En el sistema binario existen los siguientes rangos:


- Con 1 dígito se pueden representar 2 cantidades (21 = 2), que son la cantidad 0 y la cantidad 1.
- Con 2 dígitos se pueden representar 4 cantidades (22 = 4), que son:

Binario Decimal
00 0
01 1
10 2
11 3

- Con 3 dígitos se pueden representar 8 cantidades (23 = 8), que son:

Binario Decimal
000 0
001 1
010 2
011 3
100 4
101 5
110 6
111 7

La suma binaria es análoga a la decimal, teniendo en cuenta la tabla siguiente:

0+0=0
0+1=1
1+0=1
1 + 1 = 0 (con acarreo de 1)

Ej.
100101
+ 10111
111100

2.1.5. Sistema octal.


Este sistema es de base 8, utilizando los símbolos 0, 1, 2, 3, 4, 5, 6 y 7. Con un dígito se pueden
representar 8 cantidades (de 0 a 7), con 2 dígitos 64 cantidades (de 00 a 77, que en decimal son de 0
a 63) y así sucesivamente.

2.1.6. Sistema hexadecimal.


Este sistema es de base 16, utilizando los símbolos:

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

donde el valor de las letras es el siguiente:

A - 10 B - 11 C - 12 D - 13 E - 14 F - 15

Pag. N° 3
IES N° 6- SEDE PERICO

2.1.7. Conversiones entre sistemas.


Para convertir un número de cualquier sistema al sistema decimal se utilizará el teorema
fundamental de la numeración citado anteriormente.

Ej. A4.2(16) a decimal: A4.2(16 = 10*161 + 4*160 + 2*16-1 = 164.125(10

Ej. 1101(2) a decimal: 1101(2 = 1*23 + 1*22 + 0*21 + 1*20 = 13(10

Para convertir un número decimal a binario se puede utilizar el método de las divisiones
sucesivas hasta que el cociente sea 0, usando los restos en orden inverso.

Ej. 13(10) a binario:

13 / 2 = 6 / 2 = 3 / 2 = 1 / 2 = 0 (el cociente es 0)
Restos: 1 0 1 1

Cogiendo los restos en orden inverso queda: 13(10 = 1101(2)

Para pasar los decimales (dígitos a la derecha del punto decimal) del sistema decimal a binario
se utiliza el método de los productos sucesivos por 2, cogiendo las partes enteras en orden directo.
Se multiplicará por 2 sólo la parte decimal (quitando la parte entera) resultante del producto
anterior. Se realizan productos hasta que la parte decimal resulte 0 o hasta que se obtenga la
precisión deseada.

Ej. 0.333(10 a binario:

0.333 * 2 = 0.666 (la parte entera es 0, la parte decimal es .666)


0.666 * 2 = 1.332 (la parte entera es 1, la parte decimal es .332)
0.332 * 2 = 0.664 (la parte entera es 0, la parte decimal es .664)
0.664 * 2 = 1.328 (la parte entera es 1, la parte decimal es .328)
………………….
(se sigue multiplicando hasta que el error sea menor que el deseado)

Por tanto: 0.333(10 = 0.0101...(2)

Para pasar un número del sistema hexadecimal a binario, se escribe cada dígito con 4 bits,
según la tabla siguiente:
Hexadecimal Binario
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
Pag. N° 4
IES N° 6- SEDE PERICO

B 1011
C 1100
D 1101
E 1110
F 1111

Ej. A3.C(16) a binario  A3.C(16) = 1010 0110.1100(2)


Para pasar un número del sistema binario al hexadecimal, se usan grupos de 4 bits, desde el
punto decimal hacia los extremos, rellenando con ceros en los extremos si es necesario para
completar los 4 bits del último grupo. A cada grupo se aplicará la correspondencia según la tabla
anterior.

Ej. 101010 0110.110011(2) a hexadecimal:

101010 0110.110011
Después de rellenar con ceros: 00101010 0110.11001100
Resultando: 2 A 6 . C C(16

Para pasar un número del sistema octal a binario, se escribe cada dígito con 3 bits, según la
tabla siguiente:

Octal Binario
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111

Ej. 72.5(8) a binario:

72.5(8) = 111 010.101(2)

Para pasar un número del sistema binario a octal, se usan grupos de 3 bits, desde el punto
decimal hacia los extremos, rellenando con ceros en los extremos si es necesario para completar los 3
bits del último grupo. A cada grupo se aplicará la correspondencia según la tabla anterior.

Ej. 10110110.10101(2) a octal:


10110110.10101
Después de rellenar con ceros: 010110110.101010
Resultando: 2 6 6 . 5 2(8)

Para pasar un número del sistema decimal al sistema hexadecimal u octal, se realizará
convirtiendo previamente al sistema binario como paso intermedio, para posteriormente pasar del
binario al hexadecimal u octal según se ha explicado.

2.2. Representación interna de números enteros con signo. Coma fija.


Pag. N° 5
IES N° 6- SEDE PERICO

Dentro de la computadora, los valores numéricos o cantidades se representan con bits, en


sistema binario. En dicha representación debe concretarse el número de bits que se van a utilizar
para codificar cada cantidad, además existen distintos tipos de representación, como vamos a ver en
este apartado los tipos para números enteros (sin decimales). Se suelen llamar representación en
coma fija, por suponerse la coma decimal en una posición fija, a la derecha el número representado.

2.2.1. Módulo y signo.


El bit más a la izquierda representa el signo del número, donde 0 será positivo y 1 negativo. El
resto de bits representa el módulo del número.

Si se utilizan n bits para representar cada cantidad, el rango será el siguiente:

Desde: -2n-1 + 1
Hasta: +2n-1 - 1

Ej. Con n=8 bits:

Rango: de -127 a +127

La cantidad 10 se representa: 0 0001010


La cantidad -10 se representa: 1 0001010

Con este sistema existen 2 representaciones para la cantidad 0:

0 0000000 (+0)
1 0000000 (-0)

2.2.2. Complemento a 1.
Este tipo de representación coincide con la anterior para valores positivos. Para representar
valores negativos, se representará previamente el correspondiente valor positivo y a continuación se
invierten todos los bits. Por lo tanto los números positivos tendrán el bit más a la izquierda a 0 y los
negativos a 1. El rango coincide con el caso anterior, siendo con n bits de:

Desde: -2n-1 + 1
Hasta: +2n-1 - 1

Ej. Con n=8 bits:

Rango: de -127 a +127

La cantidad 10 se representa: 0 0001010


La cantidad -10 se representa: 1 1110101

Con este sistema existen también 2 representaciones para la cantidad 0:

0 0000000 (+0)
1 1111111 (-0)

2.2.3. Complemento a 2.
Pag. N° 6
IES N° 6- SEDE PERICO

Este tipo de representación coincide con las anteriores para valores positivos. Para
representar valores negativos, se representará previamente el correspondiente valor positivo, a
continuación se invierten todos los bits y finalmente se le suma 1 al bit más a la derecha. Por lo tanto
los números positivos tendrán el bit más a la izquierda a 0 y los negativos a 1. El rango en este caso
alcanza un número negativo más que en las representaciones anteriores, siendo con n bits de:

Desde: -2n-1
Hasta: +2n-1 - 1

Ej. Con n=8 bits:

Rango: de -128 a +127

La cantidad 10 se representa: 0 0001010


La cantidad -10 se representa: 1 1110101
+ 1
1 1110110

Con este sistema existe sólo 1 representación para la cantidad 0:

0 0000000 (+0)
1 1111111
+ 1
1 0 0000000 (-0)
El acarreo (1) se desprecia.

2.2.4. Exceso a 2n-1.


Este tipo de representación consiste en sumar el exceso (2n-1) al número que se desea
representar, pasándolo a continuación a binario con el número de bits que se vaya a utilizar. En este
caso los números positivos tendrán el bit más a la izquierda a 1 y los negativos a 0, por tanto es al
contrario que en los casos anteriores. El rango coincide con el visto en la representación en
complemento a 2, alcanzando un número negativo más que positivo, siendo con n bits de:

Desde: -2n-1
Hasta: +2n-1 - 1

Ej. Con n=8 bits, el exceso es de 27, o sea de 128, que es la cantidad que debe sumarse a cada número
a representar:

Rango: de -128 a +127

La cantidad 10 se representa: 10+128 = 138 = 1 0001010


La cantidad -10 se representa: -10+128 = 118 = 0 1110110

Con este sistema existe sólo 1 representación para la cantidad 0:

0 + 128 = 128 = 1 0000000 (+0)


-0 + 128 = 128 = 1 0000000 (-0)

Pag. N° 7
IES N° 6- SEDE PERICO

2.3. Representación interna de números reales. Coma flotante.


Las representaciones anteriores, de coma fija, se utilizan para codificar valores enteros.
Vamos a ver ahora la representación de valores con decimales, que se denomina en coma flotante.
Para representar en coma flotante debe conocerse primero la notación científica normalizada,
que consiste en representar una cantidad con la parte entera a 0, el primer dígito significativo
distinto de cero debe ser justo el que está a la derecha del punto decimal y debe multiplicase por la
potencia de 10 necesaria para que se corresponda con el valor original.

Ej. 835.4 = 0.835 * 103


El 0.835 se llama mantisa.
El 10 es la base.
El 3 es el exponente.
Para representar internamente en la computadora la base suele ser 2, por lo que la cantidad
deberá expresarse en notación científica con base 2, en lugar de base 10.
En coma flotante se suelen usar dos tipos de representaciones:

- Simple precisión, utiliza 32 bits repartidos de la siguiente manera:

SM Exponente Mantisa
bit 31 30 23 22 0

Donde la mantisa ocupa 24 bits, del 0 al 22 y el bit 31 que guarda el signo de la mantisa. El
exponente ocupa 8 bits, del 23 al 30 utilizando la técnica de Exceso 2n-1.

- Doble precisión, utiliza 64 bits repartidos de la siguiente manera:

SM Exponente Mantisa
bit 63 62 52 51 0

Donde la mantisa ocupa 53 bits, del 0 al 51 y el bit 63 que guarda el signo de la mantisa. El
exponente ocupa 11 bits, del 52 al 62.
El estándar IEEE 754
El objetivo es representar un número con un punto decimal en sistema binario (por ejemplo, 101.01,
que no se lee ciento uno punto cero uno, ya que es, de hecho, un número binario, 5,25 en sistema
decimal) mediante el formato 1.XXXXX... * 2n (en nuestro ejemplo, 1.0101*22). El estándar IEEE 754
define cómo codificar un número real. Este estándar ofrece una forma de codificar un número
utilizando 32 bits, y define tres componentes: el signo más/menos se representa por un bit (el bit de
mayor peso, aquel que se encuentra más a la izquierda); el exponente se codifica utilizando 8 bits
inmediatamente después del signo; la mantisa (los bits después del punto decimal) con los 23 bits
restantes utilizando la técnica del “1” oculto. Así, la codificación sigue la forma:

seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm

La s representa al bit del signo, cada e representa al exponente del bit y cada m representa a la
mantisa del bit.
Sin embargo, hay ciertas restricciones para los exponentes. El exponente 00000000 está prohibido. El
exponente 11111111 está prohibido. Sin embargo, a veces se utiliza para informar de errores. Esta
configuración numérica se denomina NaN (Not a number), que significa “no es un número”. Se le
debe sumar 127 (01111111) al exponente para convertir al decimal en un número real dentro del
Pag. N° 8
IES N° 6- SEDE PERICO

sistema binario. Por lo tanto, los exponentes pueden variar de -254 a 255.
A modo de ejemplo se codificará el valor 525,5. Este número es positivo, por lo que el primer bit será
0. Su representación en el sistema binario (base 2) es: 1000001101.1.
Al normalizarlo se obtiene: 1.0000011011*2^9. Sumándole 127 al exponente, que es 9, da 136 o, en
sistema binario (base 2): 10001000. La mantisa está compuesta por la parte decimal de 525,5 en base
2 normal, que es 0000011011. Como la mantisa debe tomar 23 bits, se deben agregar ceros para
completarla: 00000110110000000000000.

Por lo tanto, la representación binaria de 525,5 bajo el estándar IEEE 754 es:

0 1000 1000 00000110110000000000000


0100 0100 0000 0011 0110 0000 0000 0000 (44036000 en sistema hexadecimal)

A continuación otro ejemplo, esta vez utilizando un número real negativo. Se codificará el valor -
0,625. El bit s es 1, como 0,625 es negativo. 0,625 se escribe en sistema binario (base 2) de la
siguiente manera: 0.101. Se busca escribirlo en la forma 1.01 x 2-1. Consecuentemente, el exponente
vale 1111110 como 127 - 1 = 126 (o 1111110 en sistema binario). La mantisa es
01000000000000000000000 (solo se representan los dígitos después del punto decimal, ya que el
número entero es siempre equivalente a 1).
Por lo tanto, la representación binaria de 0,625 bajo el estándar IEEE 754 es:
1 1111 1110 01000000000000000000000
1111 1111 0010 0000 0000 0000 0000 0000 (FF 20 00 00 en sistema hexadecimal).
3. Representación alfanumérica.
Se llama información alfanumérica a aquella que no representa cantidades o valores
numéricos, por ejemplo un nombre, una dirección, etc., que pueden estar formados por las letras
mayúsculas, las minúsculas, las 9 cifras, los sígnos de puntuación, etc.
Para representar información alfanumérica se han creado códigos, que asignan a cada
carácter alfanumérico una combinación distinta de ceros y unos.

3.1. Código ASCII.


Este es el código alfanumérico más utilizado. Inicialmente se creó con 7 bits, pero después se
expandió hasta los 8 bits, llamándose ASCII extendido. Puede representar 256 caracteres distintos
(28=256). Las correspondencias son las siguientes:

Pag. N° 9
IES N° 6- SEDE PERICO

3.2. Código EBCDIC.


Otro código alfanumérico utilizado es el EBCDIC. Este también emplea 8 bits para codificar
cada carácter, por lo que puede representar hasta 256 caracteres distintos.

Pag. N° 10

También podría gustarte