Tema 1 Sistemas Numéricos y Codificación
Tema 1 Sistemas Numéricos y Codificación
Tema 1 Sistemas Numéricos y Codificación
1. Conceptos previos.
La ejecución de un programa implica realizar unos tratamientos según un conjunto ordenado
de instrucciones sobre unos datos.
En éste tema, se explicará como se guarda físicamente la información, para lo que será
necesario seguir unos métodos para su representación y codificación.
Un sistema digital utiliza información representada por magnitudes físicas que se limitan a
tomar sólo unos determinados valores discretos conocidos como señales. En el sistema digital
estos valores discretos se representan por 0 y 1 y generalmente se conocen como bit ( Binary
digIT) que se define como la unidad mínima de información.
Normalmente los bits no se almacenan individualmente, sino que forman grupos denominados
“palabras” (no confundir con el sentido habitual), siendo la longitud de palabra con la que
trabaja un ordenador, la cantidad de bits que trata de forma conjunta.
2. Codificación:
Existen varios sistemas de numeración, los más comunes, como el decimal, son sistemas
posicionales, donde cada dígito tiene un peso concreto dependiendo de su posición.
( digito )
i
i * (base ) i n = nº de dígitos
i = posición de 0 a n
base = sistema de numeración
La suma de todos los términos del sumatorio da lugar al número en base 10. Cuando hay
parte decimal, se aplica la misma fórmula pero con potencia negativa.
Sistema binario.
Se corresponde naturalmente con el contenido de los registros del ordenador de modo que
independientemente de su significado, la información se puede representar por un conjunto de
dos valores. Esta información mínima representada con 1 o 0 es lo que conocemos como bit
(binary digit). A partir de esta unidad elemental se manejan otras unidades superiores:
Para convertir un número de binario a decimal usamos la fórmula general para calcular
cualquier número sabiendo que es un sistema posicional y sabiendo su base.
Ejemplo: 1011101(2 = 1 * 26 + 0 * 25 + 1 * 24 + 1 * 23 + 1 * 22 + 0 * 21 + 1 * 20 + = 93
Para convertir un número decimal a binario se divide sucesiva/ el número por dos. El último
cociente y los restos forman su representación en base dos.
Si el número en base diez tiene parte decimal se va multiplicando la parte decimal por
potencias de dos y las partes enteras resultantes forman el número binario. El proceso termina
cuando la parte decimal es nula.
Ejemplos:
Realizar la comprobación de que el número 93 en base diez es el número binario de
antes. 93/2/2/2.......= 1011101
Pasar 315(10 a base (2 = 100111011
Convertir 0.625(10 a base (2 = 0.101
Pasar 332´661(10 a base(2 = 101001100´101
El sistema binario escrito se denomina código binario natural. En general un ordenador utiliza
sistema más complicados que el binario dentro de estos el octal y el hexadecimal.
De octal a binario: se coge cada cifra en base 8 y se cambia por su correspondiente número
de bits.
Ejercicio: Pasar 4375(8 a base (2 = 100011111101(2
De decimal a octal: Igual que pasar de decimal a binario con la diferencia que en lugar de
dividir entre 2, se divide entre 8.
Ejemplo:
Pasar 372´395(10 a base (8 = 564´312
Hexadecimal o base 16
Dec Hex.l Consta de 16 símbolos cogiendo desde 0 hasta 9 y continuando con las letras
0 0 desde la A hasta la F así obtendríamos la siguiente tabla:
1 1
2 2 Conversión de binario a hexadecimal: se hace grupos de 4 bits y se procede como
… … en el octal.
9 9
10 A Ejemplo:
Pasar 100010111111010´1001101 (2 a hexadecimal(16 = 45FA´95
11 B
12 C
De hexadecimal a binario:
13 D
Se separan cada una de las cifras del hexadecimal y se pone su correspondiente
14 E
binario utilizando cuatro cifras.
15 F
16 10 Ejemplo
17 11 Pasar A34´E2 (16 a base (2 = 101000110100´11100010
18 12
19 13 De hexadecimal a decimal: aplicando la forma general de los sistemas de
… … numeración posionales.
25 19
26 1A B7F (16 = 2943 (10
… …
30 1E De decimal a hexadecimal:
31 1F Se hacen divisiones entre 16.
32 20
4573´79 (10 = 11DD´CA3.
Donde:
Unicode.
Unicode es un estándar de codificación de caracteres creado para facilitar el tratamiento
informático, así como la transmisión y la visualización de textos de múltiples lenguajes y
disciplinas técnicas. El término Unicode proviene de los tres objetivos perseguidos:
universalidad, uniformidad y unicidad.
Unicode asigna un nombre e identificador numérico único para cada carácter o símbolo, el
code point o punto de código, aparte de otras informaciones necesarias para su uso
correcto: direccionalidad, mayúsculas y otros atributos. Unicode trata los caracteres
alfabéticos, ideográficos y símbolos de forma equivalente, es decir, se pueden mezclar en
un mismo texto sin la introducción de marcas o caracteres de control.
Este estándar industrial proporciona el medio por el cual un texto en cualquier forma e
idioma puede ser codificado para el uso informático. Este estándar representa caracteres
como enteros, Unicode-16 utiliza 16 bits para cada carácter a diferencia del ASCII que
utiliza 7 bits por carácter. Esta diferencia hace que pueda representar más de 65 mil
caracteres únicos. Para idiomas como el inglés, español y otros idiomas europeos el ASCII
es suficiente. La necesidad de más caracteres surge por idiomas más complejos como el
japonés, el chino o el griego entre otros. Hay otros estándares como UTF8 y UTF32.