Representación de Datos - Capítulo 1 PDF
Document Details
Uploaded by pebarzola
Tags
Summary
Este documento presenta una introducción a la representación de datos en diferentes sistemas numéricos como el binario, hexadecimal y BCD. Se explican los conceptos básicos y se dan ejemplos.
Full Transcript
Data Representation Capítulo 1 Tabla de Contenidos Binario y Prefijos Hexadecimal Binary Coded ASCII & Decimal (BCD) UNICODE 2 Binarios y Prefijos 3 Cómo seres humanos, estamos acostumbrados a utilizar el sistema numérico en base...
Data Representation Capítulo 1 Tabla de Contenidos Binario y Prefijos Hexadecimal Binary Coded ASCII & Decimal (BCD) UNICODE 2 Binarios y Prefijos 3 Cómo seres humanos, estamos acostumbrados a utilizar el sistema numérico en base 10, que es el que todos conocemos. Se le llama base 10 ya que podemos representar cualquier número con solamente 10 dígitos (0..9). Además del dígito, necesitamos saber su posición ya que no es lo mismo tener el número 0001, que el número 1000, más allá de que sus dígitos sean los mismos. 4 En la computación, se utiliza un sistema en base 2, también llamado binario, que unicamente tiene 2 digitos para utilizar, el 0 y el 1. Con estos dos números podemos representar cualquier número que nos propongamos, teniendo en cuenta también que siguen un sistema de posiciones con peso. 5 De está forma podemos pasar cualquier número de binario a denario de la siguiente forma. Ej. 01101110 - Vamos a multiplicar cada uno de sus digitos por el peso que le corresponde a la posición en la que estan y a sumar todos sus resultados. 0 x 128 + 1 x 64 + 1 x 32 + 0 x 16 + 1 x 8 + 1 x 4 + 1 x 2 + 0 x 1 0 + 64 + 32 + 0 + 8 + 4 + 2 + 0 = 110 6 Hasta ahora solo hablamos de números binarios positivos, pero que sucede cuando queremos representar números negativos? Hay dos soluciones para poder hacerlo y esas son: - One’s Complement - Two’s Complement 7 One’s Complement En One’s Complement, cada dígito en el número binario se gira (Cada 1 se convierte en 0 y cada 0 se convierte en 1). De está forma, el número 01011010 (valor 90) Se convierte en 10100101 (-90) Pero cómo -90? Si eso es 165. En el método de one’s complement el dígito que está más a la izquierda (bit más significativo) indica si el número es positivo o negativo. 0 si es positivo y 1 si es negativo. Su posición pasa a valer -127. 8 One’s Complement Entonces la cuenta quedaría cómo: 10100101 1 x (-127) + 0 x 64 + 1 x 32 + 0 x 16 + 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1 -127 + 0 + 32 + 0 + 0 + 4 + 0 + 1 = -90 9 Two’s Complement El Two’s Complement es exactamente igual que el One’s Complement unicamente que al final le sumo 1. Por lo que el número 10100101 que vimos antes, valdria: - 10100101 -> 165 (Binario Normal) - 10100101 -> -90 (One’s Complement) - 10100101 -> -91 (Two’s Complement) 10 Two’s Complement También podríamos pensar en sus pesos cómo los siguientes: - 11 Prefijos Binarios Así cómo en el sistema en base 10 tenemos prefijos que denotan magnitudes, por ejemplo 1 KiloGramo representa 1000 gramos. 1 KiloMetro representa 1000 Metros. En el sistema binario tenemos una serie de prefijos que denotan magnitudes en base 2. Cómo introducción un dígito de un número binario es llamado bit, es la unidad más pequeña del sistema. Un conjunto de 8 bits conforman un byte que es la unidad con la que trabajaremos en los prefijos. 12 Prefijos Binarios A continuación les dejo 2 tablas con la comparación entre magnitudes en el sistema en base 10 y las magnitudes en el sistema en base 2. Base 10 Base 2 13 Hexadecimal 14 El hexadecimal es un sistema numerico en base 16. Así cómo en el sistema en base 10 teniamos 10 digitos (0..9), en el de base 2 teniamos 2 digitos (0 y 1). En el sisitema hexadecimal tenemos 16 digitos posibles (0.. F). En el cual, ademas de tomar todos los números del 0 al 9, tomamos las letras de la A a la F que también van a representar valores. Por lo que un número en hexadecimal se veria de la siguiente forma: 2AF (Número 687 en decimal) 15 En esta tabla tenemos las equivalencias entre los sistemas numéricos que estuvimos viendo. Adicionalmente el sistema hexadecimal tiene una tabla de pesos para convertir números que veremos a continuación. 16 Por lo que de manera muy similar al binario, vamos a transformar el número 2AF de hexadecimal a decimal. 2 x 256 + A x 16 + F x 1 (Usando valores sacados de la tabla anterior) 2 x 256 + 10 x 16 + 15 x 1 = 687 17 Binary Coded Decimal 18 Utiliza un sistema de 4 bits para representar cada uno de los digitos del sistema decimal. Por lo que el número 316 seria: 0011 0001 0110 Esto tiene un uso muy especifico para cuando necesito representar digitos individuales más que un número en su completitud (Relojes digitales, etc.) 19 ASCII & UNICODE 20 Las computadoras únicamente pueden comprender el sistema binario, ya que puede representar el 1 cómo “Pasa electricidad” y el 0 cómo “No pasa electricidad”. Debido a esto, los programadores tuvieron que ir adaptando las distintas cosas que querían representar en una computadora a estos sistemas. Ya vimos cómo representar distintos tipos de números, ahora vamos a ver cómo representar letras y símbolos. 21 ASCII El American Standard Code for Information Interchange o ASCII es una tabla que relaciona cada uno de los distintos símbolos del teclado con números, así luego pueden ser comprendidos por la computadora. Darle valores numéricos a los símbolos permite hacer operaciones matemáticas entre ellos, por lo que yo le puedo preguntar a la computadora si la letra ‘a’ es más grande que la letra ‘z’. Los que organizaron la tabla tuvieron esto en mente para facilitar el orden alfabético de las cosas. 22 ASCII 23 UNICODE Cómo podran ver en la tabla, solo hay 127 símbolos representados, pero que pasa si yo quiero representar la letra ñ, o si quiero representar la letra Č. Debido a las limitaciones que impone el sistema ASCII se decidieron por crear un nuevo estándar llamado UNICODE. Los primeros 127 símbolos son los mismos que el de ASCII así se aseguraban compatibilidad entre ellos. 24 UNICODE Agregan varios nuevos símbolos, representados por sus coordenadas en Hexadecimal. Para ver la lista completa pueden entrar en: https://symbl.cc/en/unicode/table/ 25