Download los sistemas de representación numérica

Document related concepts

Decimal codificado en binario wikipedia , lookup

Sistema octal wikipedia , lookup

Bit wikipedia , lookup

Sistema binario wikipedia , lookup

Código binario wikipedia , lookup

Transcript
Programación
Instituto Tecnológico de Celaya
LOS SISTEMAS DE REPRESENTACIÓN NUMÉRICA
Es común escuchar que las computadoras utilizan el sistema binario para
representar cantidades e instrucciones. En esta sección se describen las ideas
principales en este sentido. Los sistemas de representación numérica más
usados son el sistema binario, el sistema octal, el sistema hexadecimal y, por
supuesto, el sistema decimal.
Sistema decimal
En cuanto al problema de representar cantidades numéricas, el sistema decimal
es el sistema tradicional. Recordemos que en este sistema, una cantidad
cualquiera, por ejemplo 1798, en realidad se lee como:
1 x 103 + 7 x 102 + 9 x 101 + 8 x 100
Observe
la
diferencia
entre
==
los
1 x 1000 + 7 x 100 + 9 x 10 + 8 x 1
diversos
conceptos
involucrados:
La
representación de la cantidad en el sistema decimal (1798) y las "cifras" que
componen su representación en este "sistema de numeración" (en este caso
cuatro cifras: 1, 7, 9 y 8 colocadas en un cierto orden). En este sistema, el
valor de las cifras viene complementado por su posición en el conjunto (se dice
que el sistema es posicional), de forma que el valor total de una expresión
viene representado por el producto de su valor-base (0 a 9) multiplicado por la
potencia de 10 que corresponda según su posición. Al final se suman los
resultados parciales. Resulta así que, en el sistema decimal, la cantidad más
alta que se puede representar mediante una cantidad de cuatro cifras (como
ejemplo), nnnn, es como máximo:
9 x 103 + 9 x 102 + 9 x 101 + 9 x 100 == 9999
Es fácil verificar que un número decimal de n dígitos puede representar como
máximo a 10n números (en el caso del ejemplo, para 4 dígitos, 104 = 10000).
Ejemplo:1534
Ingeniería Química
Programación
Instituto Tecnológico de Celaya
Valor posicional 103 102 101 100
4 en 100
4
3 en 101
3
5 en 102
1 en 103
5
1
4 x 100 4
3 x 101 30
5 x 102 500
1 x 103 1000
Sistema binario
El sistema binario puede representar también cualquier cantidad basándose en
cifras que solo pueden tener dos valores, 0 y 1. Es importante resaltar que las
características físicas de los dispositivos electrónicos (como las computadoras)
hacen que sea fácil representar con ellos a cantidades en el sistema binario.
Para lograr esto se hace corresponder los dos posibles valores de la variable
binaria con los dos estados físicos de un circuito o dispositivo. Por ejemplo, con
los estados de circuito abierto (1) o cerrado (0); magnetizado (1) no
magnetizado (0); con luz (1), sin luz (0); etc. Esta es la razón por la cual las
computadoras utilizan el sistema binario. En cambio, el sistema decimal no es
muy adecuado para los dispositivos electrónicos, puesto que aquí, al ser un
sistema de base 10, cada cifra pueden tener diez valores distintos (0 al 9) y
sería complicada asignar cada valor a un estado físico de algún dispositivo
electrónico.
El sistema binario es exactamente análogo al decimal, con la diferencia de la
base de las potencias y de los posibles valores para cada cifra (0 ó 1). En el
sistema binario la nueva base es 2 (en vez de 10 como en aquel caso). Por
ejemplo, la cantidad binaria 11100000110 se lee:
1x210 + 1x29 + 1x28 + 0x27 + 0x26 + 0x25 + 0x24 + 0x23 + 1x22 + 1x21 + 0x20
Se puede probar que el número anterior resulta igualmente en el número "mil
setecientos noventa y ocho".
Ingeniería Química
La capacidad de representación en el sistema
Programación
Instituto Tecnológico de Celaya
binario es, sin embargo, menor que en el decimal. Así, una cantidad binaria de
4 dígitos puede representar como máximo al número:
1 x 23 + 1 x 22 + 1 x 21 + 1 x 20 == 15
En el caso de la numeración binaria, también es fácil verificar que un número de
n dígitos puede representar como máximo a 2n números (en el caso del
ejemplo, para 4 dígitos, 24 = 16).
Ejemplo: el número binario 1011 es igual al número decimal 11
Valor posicional 23 22 21 20
1 en 20
1 1 x 20 1
1 en 21
1
0 en 22
1 en 23
Valor decimal
0
1
1 x 21 2
0 x 22 0
1 x 23 8
Otros sistemas de representación numérica
Además del binario (sistema "natural" del ordenador), en la literatura
informática y en los programas se utilizan otras formas de numeración (sobre
todo para representar valores constantes).
La más común de ellas es el
sistema hexadecimal.
El sistema hexadecimal, como los anteriores, también es posicional. En este
caso el valor de la posición viene dado por potencias de 16 (160, 161, 162,…).
Como sólo poseemos 10 caracteres para representar los posibles dígitos, se
añaden las letras A, B, C, D, E y F.
Por tanto en base 16 disponemos de los siguientes caracteres 0, 1, 2, 3, 4, 5, 6,
7, 8, 9, A = 10, B = 11, C = 12, D = 13, E = 14, y F = 15.
Ingeniería Química
Programación
Instituto Tecnológico de Celaya
Como ejemplo, el número A52F corresponde al número 42287 en base decimal.
Valor posicional 163 162 161 160
F en 160
F
2 en 161
2
5 en 162
F x 160 15
2 x 161 32
5 x 162 1280
5
A en 163
Valor decimal
A x 163 40960
A
Conversión de Números en el Sistema Decimal a los Sistemas
Binario y Hexadecimal
Al Sistema Binario
Si lo que queremos es convertir un número decimal a binario, dividiremos
sucesivamente el valor decimal por 2 hasta llegar a 1. Los restos de las
divisiones nos indicarán el valor binario. El siguiente ejemplo corresponde a la
conversión del número 52 en base decimal al sistema binario
División Cociente Resto
52 / 2
26
0
26 / 2
13
0
13 / 2
6
1
6/2
3
0
3/2
1
1
1
1
110100
Ingeniería Química
Programación
Instituto Tecnológico de Celaya
Sistema Hexadecimal
Para realizar la conversión al sistema decimal se sigue un método similar al
anterior, sólo que ahora se realiza divisiones entre 16. Véase el ejemplo de la
Tabla para el número 33210 = 14C 16
División Cociente Resto
332 / 16 20
12 = C
20 / 16
4
1
1
1
Almacenamiento interno
Una magnitud que solo puede tener dos valores se denomina bit (abreviatura
de "Binary digit"). Un bit es la menor cantidad de información que puede
concebirse en una computadora, y su abreviatura es b, por ejemplo: 10 Kb son
10000 bits.
Resulta así que un interruptor que puede estar encendido o
apagado es (puede ser) un almacenamiento de 1 bit de información (basta con
hacer corresponder "encendido" con el valor 1 y "apagado" con el valor 0).
Tradicionalmente el almacenamiento interno de los ordenadores se realiza en
grupos de 8 (o múltiplos de 8) cifras binarias (bits); estos conjuntos (octetos)
son la menor cantidad de información que trata el ordenador con entidad propia
y reciben el nombre de bytes (suele abreviarse con B). Por ejemplo, 16 Kb y
16 KB. Se refieren a 16000 bits y 128000 bits respectivamente.
Podemos usar un símil para entenderlo: Aunque nuestro alfabeto tiene 26
caracteres no se utilizan aislados, para que tengan significado se utilizan en
grupos (palabras), los ordenadores utilizan también palabras, solo que estas
son siempre de la misma longitud (8, 16, 32 o 64 bits según el modelo de
procesador).
Según lo anterior, un octeto (una "palabra" de 8 bits), 1 Byte, puede almacenar
un número tan grande como 28 = 256, lo que deriva en que si, por ejemplo,
Ingeniería Química
Programación
Instituto Tecnológico de Celaya
reservamos una palabra de 8 bits para "describir" (contener) una variable,
sabemos de antemano que dicha variable no va a poder adoptar nunca mas de
256 estados distintos. Esto unido al hecho de que la forma de representación
interna utiliza el sistema binario y los elementos y circuitos físicos son
igualmente binarios (pueden adoptar solo dos estados) hacen que las potencias
de dos: 8, 16, 32, 64 etc. son "números mágicos" en el mundo de las
computadoras.
Ingeniería Química