El documento describe los conceptos básicos sobre el almacenamiento y representación de datos en una computadora. Explica que los datos se almacenan como patrones de bits y que existen unidades como el bit, el byte y la palabra para medir el almacenamiento. También describe diferentes sistemas para representar números y texto, como los códigos ASCII, EBCDIC y Unicode, así como los sistemas binario, octal y hexadecimal. Finalmente, explica cómo se representan enteros usando formatos como signo y magnitud o complemento a uno.
1. Tema IV. Manejo
interno de datos
Objetivo: El alumno describirá cómo se
almacenan los datos en los diferentes medios
de un sistema de cómputo; asimismo
manipulará los datos para minimizar los
diferentes errores que pueden suscitarse en
su almacenamiento.
2. 4.1 Unidades de medida de
almacenamiento:
bit, byte y palabra
Tipos de Datos
En la actualidad los datos se presentan de diferentes
maneras, por ejemplo números, texto, imágenes, audio y
video.
3. Los datos dentro de una computadora
¿Cómo se manejan todos estos tipos de datos?
No es necesario tener varias computadoras para poder procesar
estos tipos de datos, ya que, por lo general son una mezcla de
tipos. La solución más eficaz es usar una representación uniforme
de los datos. Todo tipo de datos que entran del exterior a una
computadora se transforman en esta representación uniforme
cuando se almacenan en una computadora y se vuelven a
transformar en su representación original cuando salen de la
computadora. Este formato universal se llama patrón de bits.
4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
4. Una pregunta interesante es:
¿Cómo hacer que una sola
computadora pueda manipular
cualquiera de estos tipos diferentes?
Después de mucho tiempo, se
encontró que la mejor forma de
hacerlo es mediante una
representación uniforme de la
información: Agrupaciones o patrones
de bits
4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
5. Bit
Es la unidad mínima de
almacenamiento en las
computadoras
El término fue acuñado
originalmente por John Tukey
(Binary digIT)
Representa dos estados (binario):
0 = apagado
1 = encendido
4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
6. Byte
Es una agrupación de 8 bits,
generalmente utilizada para
representar “caracteres” (símbolos)
Por ejemplo:
‘A’ = 01000001 (65)
‘1’ = 00110001 (31)
4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
7. Palabra
En el contexto informático, una
palabra es una cadena finita de
bits que son manejados como un
conjunto por la máquina.
El tamaño o longitud de una
palabra hace referencia al número
de bits contenidos en ella, y esta
muy relacionado con la
arquitectura de la computadora
Las computadoras modernas
utilizan palabras de 32 y 64 bits.
4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
8. 4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
9. Patrón de Bits
¿Cómo sabe la computadora qué tipo de datos representa el
patrón de bits? No lo sabe. La memoria de la computadora
sólo almacena los datos como patrones de bits. Es
responsabilidad de los dispositivos de entrada/salida o de
los programas interpretar un patrón de bits como un
número, texto o algún otro tipo de datos. En otras
palabras, los datos se codifican cuando entran a la
computadora y se decodifican cuando se presentan al
usuario.
4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
11. 4.1 Unidades de medida de
almacenamiento: bit, byte y palabra
¿1024?
Para medir la cantidad de información
representada en binario se utilizan
múltiplos que a diferencia de otras
magnitudes físicas utilizan el factor
multiplicador 1024 en lugar de 1000,
debido a que es el múltiplo de 2 más
cercano a este último ( 210=1024)
12. Representación de texto
Para representar texto es necesario establecer un código que
asocie a cada caracter un valor binario.
Este código debe ser conocido por todos los participantes en
un intercambio de información:
ASCII
EBCDIC
UNICODE
4.2 Representación de datos tipo texto
13. Código ASCII
El American National Standards Institute (ANSI)
desarrolló el American Standard! Code! For
Information Interchange (ASCII).
Este código utiliza siete bits para cada símbolo.
Esto significa que se pueden representar
2^7=128 símbolos distintos.
El código ASCII-extendido utiliza 8 bits, es decir
2^8=256 símbolos.
4.2 Representación de datos tipo texto
14.
15.
16. Código EBCDIC
Extended Binary Coded Decimal Interchange Code (EBCDIC) es un código
binario que representa caracteres alfanuméricos, controles y signos de
puntuación. Cada carácter está compuesto por 8 bits, define un total de
256 caracteres.
Es un código estándar usado por computadoras mainframe IBM.
4.2 Representación de datos tipo texto
17. Código UNICODE
El principal problema de ambos códigos de
caracteres es su limitación a 256 símbolos,
pueden ser suficientes para el alfabeto latino
pero no para lenguajes ideográficos con varios
miles de símbolos.
Unicode es un estándar que proporciona un
código único para cada carácter
independientemente de la plataforma, el
software y el idioma.
El objetivo original fue utilizar un código de 16
bits para representar 2^16=65,536 caracteres.
4.2 Representación de datos tipo texto
18. Código UNICODE
En la actualidad soporta tres formatos
para representar millones de
caracteres
UTF-8 es utilizado por HTML, los
caracteres que forman parte de ASCII
tienen asignados los mismos valores
UTF-16
UTF-32
4.2 Representación de datos tipo texto
19. Sistemas numéricos
Los sistemas de numeración son conjuntos de símbolos usados para
representar cantidades, se clasifican como:
No posicionales: Estos son los más primitivos se usaban por ejemplo los
dedos de la mano para representar la cantidad cinco y después se
hablaba de cuántas manos se tenía, por ejemplo, el sistema maya o
azteca.
Semi-posicionales: El sistema de los números romanos no es
estrictamente posicional.
Posicionales: Se nombran haciendo referencia a la base, que representa
el número de dígitos diferentes para representar todos los números.
4.3 Representación numérica
20. 4.3 Representación numérica
Sistemas de numeración posicional
El sistema de numeración más utilizado en la actualidad es el
decimal que cuenta con los dígitos del 0 al 9 para nuestros cálculos
cotidianos.
Es un ejemplo de sistema de numeración posicional cuya base es 10.
Dada una cantidad, cada dígito tiene un valor específico de acuerdo
con la posición que ocupa ... millares, centenas, decenas, unidades
décimas, centésimas, milésimas, ...
21. Sistemas de numeración posicional
Las computadoras digitales no pueden utilizar el sistema decimal
como base para sus operaciones, en cambio utilizan las base
binaria que únicamente tiene 2 dígitos:
binario (2): 0 y 1
Otros sistemas muy utilizados por los computólogos son:
Octal (8): 0, 1, 2, 3, 4, 5, 6, 7
Hexadecimal (16): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
4.3 Representación numérica
22. Sistemas de numeración posicional
Para obtener el valor decimal de un número que se encuentra en
base b, se utiliza la siguiente regla matemática:
4.3 Representación numérica
Siendo b la base del sistema de numeración. Se cumplirá que b>1; ai es
un número perteneciente al sistema que cumple la siguiente condición:
0 ≤ ai <b.
...... 1
1
0
0
2
3
1
21
+⋅+⋅++⋅+⋅+⋅= −
−
−−
bababababaN nnn
24. Ejercicio:
Convertir a decimal los siguientes números representados en las bases
indicadas:
15B.2A[16]
1011010011.101[2]
4.3 Representación numérica
25. Sistemas de numeración posicional
Para convertir un número n que se encuentra en base 10 a una
base b diferente se realiza los siguiente:
4.3 Representación numérica
26. Sistemas de numeración posicional
Ejemplo: convertir 59 de base decimal a base binaria
4.3 Representación numérica
28. Ejercicio:
Convertir los siguientes números de base
decimal a las bases indicadas:
2758 = ?[16]
1425 = ?[8]
196 = ?[2]
4.3 Representación numérica
29. Sistemas de numeración posicional
Para convertir la parte fraccionaria de un número n que se
encuentra en base 10 a una base b diferente se realiza los
siguiente:
Se multiplica la parte fraccionaria por la base a la que se desea
convertir el número, se obtiene un número con parte entera y
fraccionaria.
La parte entera del número obtenido se agrega a la derecha del
punto decimal del número en la base destino.
Se repiten los dos pasos anteriores.
4.3 Representación numérica
31. Ejercicio:
Convertir los siguientes números de base decimal a las bases
indicadas:
0.5 = ?[2]
0.25 = ?[2]
0.75 = ?[2]
0.1 = ?[2]
4.3 Representación numérica
32. Considerando las tablas para el sistema binario, octal y hexadecimal que
permiten obtener el equivalente decimal de cantidades dadas en esas
bases:
La agrupación de cada tres dígitos binarios permite determinar un dígito
octal.
La agrupación de cada cuatro dígitos binarios permite determinar un
dígito hexadecimal.
4.3 Representación numérica
33. Relación binario - octal
Agrupando 3 bits binarios se obtiene su equivalente en un
dígito octal, de acuerdo a la siguiente tabla:
4.3 Representación numérica
34. Relación binario – hexadecimal
Agrupando 4 bits binarios se obtiene su equivalente en un dígito
hexadecimal, de acuerdo a la siguiente tabla:
4.3 Representación numérica
35. 4.3 Representación numérica
Sistemas de numeración posicional
Ejemplo: realizar las conversiones indicadas
Sistemas de numeración posicional
1010110101.1011011[2] = ? [8]
1010110101.1011011 [2] = ? [16]
36. Tarea_4.1: Describir las características principales de cada codificación UTF-8, UTF-16 y UTF-32
Tarea_4.2:
Convertir a decimal los siguientes número representados en las bases indicadas utilizando el algoritmo de Sistemas
de numeración posicional:
1) 1B5D.CA[16] 4) 25036471.154[7]
2) 14732.631[8] 5) 1100110011110.1001[10]
3) 41304121.1324[5] 6) 1001110110010.0011[2]
Tarea_4.3:
Convertir los siguientes números de base decimal a las bases indicadas por divisiones sucesivas:
1) 5947 = ?[19] 4) 256 = ?[2]
2) 1894 = ?[8] 5) 593 = ?[3]
3) 2471 = ?[7]
Tarea_4.4:
Convertir los siguientes números de base decimal a las bases indicadas:
1) 2.542 = ?[2] 4) 31.8464 = ?[2]
2) 4.802 = ?[4] 5) 16.1492 = ?[16]
3) 8.864 = ?[8]
Tarea_4.5:
Realizar las conversiones indicadas:
1001011011001.10011[2] = ?[16] , ?[8], ?[4]
B3E75.F5A[16] = ?[2], ?[4], ?[8]
TAREA
37. Representación de enteros
Los enteros son números íntegros (es decir, números sin una
fracción).
Por ejemplo, 134 es un entero, pero 134.23 no lo es. Como
otro ejemplo -134 es un entero, pero -134.567 no lo es.
Un entero puede ser positivo o negativo. Un entero negativo
varía del infinito negativo a 0; un entero positivo varía de 0 al
infinito positivo.
4.3 Representación numérica
39. Representación de enteros sin signo
También conocido como binario puro, sirve para representar
solamente 0 y enteros positivos
El intervalo de números que puede representar, depende del
número de bits disponibles
Si el número sobrepasa el intervalo, se genera un desbordamiento
4.3 Representación numérica
41. 4.3 Representación numérica
Representación de enteros en signo y magnitud
El almacenamiento de un entero en el formato de signo y magnitud
requiere 1 bit para representar el signo (0 para positivo, 1 para negativo)
Esto significa que en una asignación de ocho bits, sólo se pueden usar
siete bits para representar el valor absoluto del número (número sin
signo)
44. Los complementos se utilizan para simplificar la operación de resta y
efectuar manipulaciones lógicas.
Hay dos tipos de complementos par cada sistema de base r: el
complemento a la base y el complemento a la base disminuida.
Al primero se denomina complemento a r
Al segundo se denomina complemento a (r - 1 )
Si sustituimos el valor de la base r en estos nombres, los dos tipos son
el complemento a dos y el complemento a uno, en el caso de los números
binarios, y el comportamiento a diez y el complemento a nueve en el caso
de los números decimales.
4.3 Representación numérica
45. Representación de enteros en complemento a 1
Para representar un número positivo, se usa la convención adoptada para
un entero sin signo y para representar un número negativo, se
complementa el número positivo
El complemento de un número se obtiene al cambiar todos los 0 a 1 y
todos los 1 a 0
Por ejemplo, si se tienen 4 bits, los números +4 y -4 se representan de la
siguiente manera:
4.3 Representación numérica
46. Representación de enteros en complemento a 1
Para almacenar los enteros en complemento a 1 se realizan los
siguientes pasos
1. Cambiar el número a binario, el signo es ignorado
2. Añadir uno o varios 0 a la izquierda del número para hacer un total de
‘N’ bits
3. Si el número es positivo, no se necesita ninguna otra acción; si es
negativo, se complementa cada bit (cambiar 0 por 1 y 1 por 0)
4.3 Representación numérica
47. Representación de enteros en complemento a 2
Las dos representaciones anteriores presentan el problema de la
ambigüedad del cero, es decir, ambas tienen representación para el
+0 y el -0
La representación de complemento a 2 evita esta ambigüedad, es la
representación de enteros más común, más importante y de más
amplio uso en la actualidad
4.3 Representación numérica
48. Representación de enteros en complemento a 2
Para almacenar los enteros complemento a 2 se realizan los siguientes
pasos
1. Cambiar el número a binario, el signo es ignorado
2. Añadir uno o varios 0 a la izquierda del número para hacer un total de ‘N’
bits
3. Si el número es positivo, no se necesita ninguna otra acción; si el signo es
negativo, todos los 0 en el extremo derecho y el primer 1 permanecen sin
cambios; el resto de los bits se complementa
4.3 Representación numérica
49. Complemento a dos
El complemento a dos de un número N, con n cifras, se define
como:
Veamos un ejemplo: tomemos el número N = 1011012 que tiene 6
cifras, y calculemos el complemento a dos de ese número:
4.3 Representación numérica
50. Complemento a dos
El complemento a 2 se obtiene sumando 1 al bit menos significativo del
complemento a 1, como se muestra en el siguiente caso:
Numero = -225
225(10) = 1 11100001(2) Magnitud verdadera
1 00011110(2) Complemento a 1
________________ 1
1 00011111(2) Complemento a 2
4.3 Representación numérica
51. Representación de enteros en complemento a 2
Para obtener el valor decimal de un número representado en
complemento a dos se realiza lo siguiente:
Si el primer bit es 0, se aplica la conversión de binario a decimal
Si el primer bit es 1, se aplica el complemento a 2, se convierte de
binario a decimal y el resultado será el negativo del número obtenido
4.3 Representación numérica
52. Ejemplo de complemento a 1
Representación del número -5 en complemento a 1 con 4 bits
Ejemplo de complemento a 2
Representación del número -5 en complemento a 2 con 4 bits
4.3 Representación numérica
53. Ejercicios
Represente los siguientes números en complemento a 2 con 4 bits
Represente los siguientes números en complemento a 2 con 8 bits
4.3 Representación numérica
54. Representación de enteros en complemento a 2
Ejemplo: representar los números +4 y -4 en complemento a 2, utilizando
4 bits
4.3 Representación numérica
Ejemplo: determinar el valor decimal de los siguientes números
representados en complemento a 2, con 4 bits
55. Representación de enteros en complemento a 2
4.3 Representación numérica
Equivalencia entre la representación binaria en signo y magnitud,
complemento a 2 y complemento a 1, con 4 bits
56. Aritmética binaria: suma
4.3 Representación numérica
Sigue las mismas reglas que la suma decimal,
pero limitado a dos dígitos:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10
10 + 10 =
¿100?
Nota: hay que tener cuidado con el desbordamiento si
hay un límite de bits para usar
77. Aritmética binaria: multiplicación
4.3 Representación numérica
Sigue las mismas reglas que la suma decimal, pero limitado a
dos dígitos:
0 x 0 = 0
0 x 1 = 0
1 x 0 = 0
1 x 1 = 1
78. Aritmética binaria: resta
4.3 Representación numérica
La resta se realiza con ayuda del complemento a 2, de
acuerdo a los siguientes pasos:
Representar el sustraendo en complemento a 2
Sumar el minuendo y el sustraendo representado en
complemento a 2
Aplicar el complemento a 2 al resultado para obtener la
diferencia
79. Aritmética binaria
4.3 Representación numérica
Ejemplo: realizar las siguientes operaciones aritméticas en base
binaria
11101 + 1100
1101 - 100
1 - 100
11101 x 1100
Resultados:
101001
1001
1101 -> 11 -> -3
101011100
80. Tipos de errores
4.4 Tipos de errores en la manipulación
de cantidades
La memoria de la computadora tiene limitaciones físicas (por
ejemplo en su capacidad), por lo tanto es importante tener en
cuenta los tipos de errores más comunes en el manejo de
datos numéricos:
Error inherente
Error de redondeo
Error de truncamiento
82. Error de redondeo
4.4 Tipos de errores en la manipulación
de cantidades
Ocurre por la necesidad de utilizar menos dígitos en alguna
fracción
Se originan debido a que la computadora emplea un número
determinado de cifras significativas durante un cálculo
Los números tales como π ó e no pueden expresarse con un
número fijo de cifras significativas
e ≈ 2,7182818284590452354...
π ≈ 3.1415926535 89793238...
83. Error de truncamiento
4.4 Tipos de errores en la manipulación
de cantidades
El error de truncamiento se presenta
cuando se detiene algún proceso
matemático recursivo sin alcanzar el
resultado exacto
Los errores de truncamiento son
aquellos que resultan al usar una
aproximación en lugar de un
procedimiento matemático exacto
84. Imágenes
4.5 Formatos de manejo de imágenes,
video, voz, etc.
Actualmente las imágenes se representan en una
computadora mediante uno de dos métodos:
Gráficos rasterizados: es una estructura de datos que
representa una rejilla rectangular de pixeles
Gráficos vectoriales: es una imagen digital formada por
objetos geométricos independientes (segmentos, polígonos,
arcos, etc.), cada uno de ellos definido por distintos atributos
matemáticos de forma, de posición, de color, etc.
86. Imágenes, gráficos rasterizados
4.5 Formatos de manejo de imágenes,
video, voz, etc.
También conocidos como
imágenes matriciales, por
ejemplo:
Imágenes de pixeles en
blanco y negro
Imágenes de pixeles en color
89. Audio
4.5 Formatos de manejo de imágenes,
video, voz, etc.
El sonido, igual que las imágenes, puede ser grabado y formateado de
forma que la computadora pueda manipularlo y usarlo
Existen diversos formatos para almacenar audio en la computadoras:
wav
midi
mp3
aiff
acc
rm
90. Audio
4.5 Formatos de manejo de imágenes,
video, voz, etc.
Para obtener un archivo de audio
digital, en general se realizan 3
acciones:
Muestreo
Cuantización
Codificación
91. Video
4.5 Formatos de manejo de imágenes,
video, voz, etc.
Normalmente, un vídeo es una colección de imágenes acompañada de sonido; la
información de uno y otro tipo se suele grabar en pistas separadas que luego se
coordinan para su ejecución simultánea
Algunos formatos usados para almacenar video en las computadoras son:
avi
3gp
mp4
mov
wmv
asf