Sistema de Numeracion
Sistema de Numeracion
Sistema de Numeracion
INFORMATICA I
Autor: Jorge Di Marco
Siendo b la base del sistema de numeración y ai un número perteneciente al sistema y que, por
tanto, cumple con la siguiente condición: 0 ≤ ai < b
En nuestra práctica habitual, representamos los distintos números enteros o reales (en realidad
racionales, pues sólo consideramos una cantidad finita de cifras) mediante el sistema de
numeración decimal o de base 10.
Este sistema emplea diez cifras distintas o dígitos: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a los que pone en
correspondencia con el cero y los primeros nueve números naturales.
De acuerdo con todo esto, cualquier otro número puede representarse mediante una determinada
cadena de dígitos, donde la contribución de cada uno depende no sólo de su propio valor, sino de
la posición que ocupa en la cadena, de manera que el dígito está multiplicado por una potencia de
la base (10 en este caso).
donde: donde:
i es el valor entero q es el x es el valor real s en el
número de dígitos signo (+1 o –1)
r b es la base (entero mayor que 1) p en el
wk es un número no negativo menor que r número de dígitos de la mantisa
(entero mayor que 1)
Otros Sistemas
De acuerdo a lo expuesto en las ecuaciones anteriores puede entonces definirse sistemas de
numeración distintos del decimal, cuya base sea un número natural cualquiera >1.
Sistema Binario
Como ya hemos expuesto, este sistema utiliza solamente dos símbolos distintos que se
representan gráficamente por 0 y 1 y reciben el nombre de bit. La utilización casi exclusiva de
este sistema de numeración en los equipos de cálculo y control automático es debida a la
seguridad y rapidez de respuesta de los elementos físicos que poseen dos estados diferenciados y
a la sencillez de las operaciones aritméticas en este sistema (para representar una misma
cantidad) que en los sistemas cuya base es mayor de dos.
Sistema Hexadecimal
El sistema hexadecimal es el de base dieciséis, es decir para la representación de las cantidades
utiliza dieciséis símbolos diferentes que son los dígitos del 0 al 9 y las letras del alfabeto de la A
a la F. El interés de este sistema, es debido a que 16 es una potencia de 2 (2 4=16) y por lo tanto
resulta muy sencilla la conversión de los números del sistema binario al hexadecimal y viceversa,
permitiendo una representación compacta de cantidades binarias. Tabla 1 - Equivalencia en los
distintos Sistemas
Sistema Sistema Sistema Sistema Sistema Sistema
Decimal Binario Hexadecimal Decimal Binario Hexadecimal
0 0 0 00 0 8 1 0 00 8
1 0 0 01 1 9 1 0 01 9
2 0 0 10 2 10 1 0 10 A
3 0 0 11 3 11 1 0 11 B
4 0 1 00 4 12 1 1 00 C
5 0 1 01 5 13 1 1 01 D
6 0 1 10 6 14 1 1 10 E
7 0 1 11 7 15 1 1 11 F
Número original.
0 0 1 0 0 1 1 1. 1 0 1 0 1 0 0 0
2
524 2
Más
significativo 0 262 2
0 131 2
1 65 2
1 32 2
0 16 2
0 8 2
0 4 2
0 2 2
0 1 2
1 0
Entonces: 52410 = 10000011002
Menos
significativo
Parte Fraccionaria: Se multiplica la parte fraccionaria por la base a la que se desea convertir. La
parte entera del resultado, que siempre es menor que la base, será el primer dígito fraccionario de
la nueva representación. Se multiplica ahora la parte fraccionaria del resultado por la base y así
sucesivamente.
Ejemplo 1: Representar en Hexadecimal el número 7.6562510
Luego, 710 = 716 (que es la parte entera del número que estamos
convirtiendo), entonces 7.6562510 = 7.A8 16
Ejemplo 2: Representar en Binario el número 13.2510
0.5
Menos
x2
significativo
Luego, 1310 = 11012 (que es la parte entera del número que estamos
convirtiendo), entonces 13.2510 = 1101.0116
Observación: Existen racionales cuya representación decimal tiene una cantidad finita de
cifras, pero que en otro sistema pueden resultar periódicos. Veamos el caso de convertir a
binario el número 0.110
0.1 Más
0.2 0 significativo
0.4 0
0.8 0
1.6 1
1.2 1
0.4 0
0.8 0
1.6 1
1.2 1 Menos
....0 .4 0 significativo
.... ....
Entonces:
0.1 1 0 = 0.0001100110011001..... 2 = 0.1999.... 1 6
1 9 9 9
Si se debe almacenar dígitos de estas nuevas representaciones en una
cantidad finita de casilleros, necesariamente ocurrirán errores de
truncamiento.
Operaciones Aritméticas
Las operaciones aritméticas entre números representados en una base cualquiera siguen las reglas
similares a las de la aritmética decimal.
La suma binaria toma el valor uno cuando uno solo de los sumandos tiene dicho valor. Cuando
ambos sumandos tienen el valor uno, la suma es cero y se produce un acarreo (me llevo 1).
0 1 0 1
+0 +0 +1 +1
0 1 1 10
acarreo
Decimal Binario
22 10110
+ 19 + 10011
41 101001
Estándar Unicode
La especificación Unicode define un esquema de codificación único para prácticamente todos los
caracteres usados con más frecuencia en todo el mundo. Todos los equipos convierten de forma
coherente los patrones de bits de los datos Unicode en caracteres con la especificación única de
Unicode. Esto asegura que el mismo patrón de bits se convierte siempre al mismo carácter en
todos los equipos. Los datos se pueden transferir libremente desde un equipo a otro, sin
preocuparse de que el sistema que los reciba pueda convertir los patrones de bits de forma
correcta.
Un problema con los tipos de datos que usan un byte (código ASCII) para codificar cada carácter
es que el tipo de datos sólo puede representar 256 caracteres distintos. Esto supone que tenga que
haber varias especificaciones de codificación (o páginas de códigos) para distintos alfabetos,
como, por ejemplo, los europeos, que son relativamente pequeños. Tampoco se puede tratar
sistemas tales como el alfabeto Kanji japonés o el Hangul coreano, que tienen miles de
caracteres.
La especificación Unicode resuelve este problema al utilizar 2 bytes para codificar cada carácter.
Hay suficientes patrones distintos (65.536) en 2 bytes para establecer una única especificación
que abarque la mayor parte de los idiomas comerciales comunes. Dado que todos los sistemas
Unicode usan de forma coherente los mismos patrones de bits para representar todos los
caracteres, se resuelve el problema que plantea el hecho de que los caracteres se pudieran
convertir de forma incorrecta al pasarlos de un sistema a otro.
Cantidad
Cantidad de Bits de Valor Mínimo Valor Máximo de cifras
la Palabra representadas
8 0 255 256
16 0 65.535 65.536
32 0 4.294.967.295 4.294.967.296
n 2n-1 2n
Si el contenido de este bit es 0,se considera que el número es positivo y sus cifras
binarias corresponden a los restantes bits.
n 2(n-1) 2(n-1)-1 2n
Para encontrar el número representado habrá que resolver el siguiente polinomio:
N = an .bn + an−1.bn−1 + ..... + ai .bi + ..... + a0.b0
Según el ejemplo, la respuesta es 65985.
Cuando el bit de signo es 1, se conviene que el número es negativo, y en este caso,
para facilitar la operatoria, se lo almacena con la notación de complemento a 2. Esta
notación resulta de colocar un 1 donde la representación binaria del valor absoluto
hay un 0 y viceversa, sumando luego 1 al resultado.
Ejemplo 1: qué número entero está representado en la siguiente palabra de 16 bits?
1000001010000001
Bit de signo
Ejemplos de resumen
a) Qué número real N, está representado en la siguiente palabra de 32 bits? bit
de signo
característica mantisa
64 1 9 9 9 9 9
2.- Normalizo
3.243F3E016 = =.3243F316 x 1610 1
2 4 3 F 3
Apéndice B
Tabla de Código ASCII Multilingual
Apéndice B
A título ilustrativo, se muestra una tabla con tipos de datos, tamaño que ocupan al ser
almacenados y el intervalo de representación. Los mismos corresponden al lenguaje de
programación Visual Basic 5.0.
Nota Las matrices de cualquier tipo de datos requieren 20 bytes de memoria más cuatro bytes para
cada dimensión de matriz, más el número de bytes que ocupan los propios datos. Puede calcular la
memoria que ocupan los datos multiplicando el número de elementos de datos por el tamaño de cada
elemento. Por ejemplo, los datos de una matriz unidimensional que consten de cuatro elementos de
datos tipo Integer de dos bytes cada uno, ocupan ocho bytes. Los ocho bytes que requieren los datos
más los 24 bytes necesarios para la matriz suman un requisito total de memoria de 32 bytes para dicha
matriz.
Un tipo Variant que contiene una matiz requiere 12 bytes más que la matriz por sí sola.
Bibliografía
Apunte Sistemas de Numeración – Representación Interna, Ing. Fernando Guspí. 1987.
Sistemas Electrónicos Digitales, Enrique Mandado
La PC por dentro. Arquitectura y funcionamiento de computadores. M. C. Ginzburg
DIGITAL Fotran. Languaje Reference Manual. DIGITAL
Micorsoft Visual Basic 5.0
Microsoft SQL Server 7.0