Читать книгу Operaciones auxiliares con tecnologías de la información y la comunicación. IFCT0108 - José Manuel Cabello García - Страница 8
3. Sistemas de codificación
ОглавлениеLa comunicación es un proceso por el cual las personas intercambian información a través del lenguaje que se utiliza en cada país de origen. Si se extrapola esta afirmación al mundo de la informática, se podría pensar que esta comunicación se realiza como la de un país más con su propio idioma, algo peculiar, eso sí.
En lugar de palabras compuestas por las letras del alfabeto y números decimales, los ordenadores utilizan su propio lenguaje, que se compone por dos únicos valores, el 0 y el 1. Este lenguaje numérico es conocido como Sistema binario y es un sistema en base 2.
Sabía que...
Cualquier número mayor que 1 se puede utilizar como base de un sistema numérico.
Como ejemplos de sistemas numéricos más relevantes que se han utilizado a lo largo de la historia y que aún se utilizan para diversas causas, se tienen:
1 Sistema decimal: el más extendido y universal dentro del lenguaje humano, se basa en 10 números, concretamente 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9.
2 Sistema octal: utilizado también por los ordenadores gracias a ser su base 8 potencia de 2. Los símbolos utilizados por el sistema octal son 0, 1, 2, 3, 4, 5, 6 y 7.
3 Sistema hexadecimal: caso similar al anterior, al ser la base potencia de 2. En este caso, se requieren 16 símbolos para representar un número. Los numéricos son: 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9, y los no numéricos: A, B, C, D, E y F.
Si se codifica un número de un sistema numérico cualquiera en forma de vector, la forma de representarlo en el sistema decimal se determina por medio de la siguiente fórmula:
Esta fórmula es consecuencia directa del Teorema fundamental de la numeración, que se pasa a comprobar en la siguiente aplicación práctica, en la se convierten diferentes números de distintos sistemas numéricos al sistema decimal.
Aplicación práctica
Imagine que está trabajando en una empresa del sector informático como técnico de sistemas y un compañero del departamento de desarrollo de aplicaciones está codificando una aplicación informática para la cual necesita la conversión entre números de diferentes sistemas de numeración y, como usted sabe hacerlo, le pide ayuda para convertir los siguientes números, cada uno desde la base que se especifica a base decimal: 2D1(16), 1321(8) y 1011010001(2).
SOLUCIÓN
2D1(16) (D equivale a 13)
2 x 162 + 13 x 161 + 1 x 160 = 512 + 208 + 1 = 721(10) 1321(8)
1 x 83 + 3x82 + 2x81 + 2x80 = 512 +192 + 16 + 1 = 721(10) 1011010001(2)
1 x 29 + 0 x 28 + 1 x 27 + 1 x 26 + 0 x 25 + 1 x 24 + 0 x 23 + 0 x 22 + 0 x 21 + 1 x 20 = 512 + 0 + 128 + 64 + 0 + 16 + 0 + 0 + 0 + 1 = 721(10)
Se ha comprobado cómo convertir diferentes números de diferentes sistemas numéricos al sistema decimal. Para realizar el proceso inverso, se realizarán divisiones sucesivas del número decimal entre la base del sistema a transformar y se irán almacenando los restos de las divisiones para posteriormente formar el valor transformado.
Nota
Para realizar la conversión a otro sistema de numeración, se realizará el mismo proceso, sustituyendo como divisor la base del sistema en cuestión.
En la siguiente tabla, se muestran los primeros números decimales convertidos a los sistemas numéricos binario, hexadecimal y octal.
Decimal | Binario | Hexadecimal | Octal |
---|---|---|---|
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 | 0 1 2 3 4 5 6 7 8 9 A B C D E F | 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17 |
Aplicación práctica
Imagine que un compañero del departamento de desarrollo le pide el favor de que le explique el proceso de conversión de un número en base decimal a base octal, por ejemplo el 721. ¿Cómo se lo explicaría de un modo gráfico?
SOLUCIÓN
Conversión de base decimal o octal