Saltar al contenido

Representación de datos

IGCSE Ciencias de la Computación · Tema 1

Lección de video para este tema Abrir la página de video
21:16

Por qué las computadoras usan binario

Dentro de un procesador hay miles de millones de interruptores diminutos. Cada uno solo puede estar encendido o apagado. Eso es todo lo que físicamente tiene una computadora — ni treses, ni sietes, ni…

Narración en inglés · subtítulos en inglés y 中文 que puedes cambiar

1.1

Por qué las computadoras usan binario

Las computadoras digitales representan datos usando dos estados lógicos, escritos como 1 y 0. Un sistema que usa solo dos dígitos se llama binario (base 2).

Un campo de dígitos binarios azules, 0s y 1s
Las computadoras representan todos los datos — números, texto, sonido e imágenes — como cadenas binarias de 0s y 1s

Todo tipo de datos — números, texto, sonido e imágenes — debe convertirse a binario antes de que una computadora pueda usarlo. La computadora procesa este binario usando puertas lógicas, y lo almacena en registros (pequeños y rápidos depósitos dentro del procesador).

El diode de silicio de un microprocesador bajo ampliación
Un microprocesador contiene millones de transistores diminutos, cada uno un interruptor que está encendido (1) o apagado (0) — la base física del binario
Vocabulario Entrenar
English Español
digit/ˈdɪdʒɪt/ dígito
binary/ˈbaɪnəri/ binario
data/ˈdeɪtə/ datos
logic gate/ˈlɒdʒɪk ɡeɪt/ puerta lógica
processor/ˈprəʊsesə/ procesador
register/ˈredʒɪstə/ register
number system/ˈnʌmbə ˈsɪstəm/ sistema numérico
denary/ˈdiːnəri/ decimal
base/beɪs/ base
1.1

Sistemas numéricos

Syllabus
Los candidatos deben ser capaces de: Notas y orientación
1 Comprender cómo y por qué los ordenadores utilizan el binario para representar todo tipo de datos • Cualquier tipo de dato debe convertirse a binario para ser procesado por un ordenador • Los datos se procesan mediante puertas lógicas y se almacenan en registros
2 (a) Comprender los sistemas numéricos decimal, binario y hexadecimal (b) Convertir entre (i) decimales positivos y binarios positivos (ii) decimales positivos y hexadecimales positivos (iii) hexadecimales positivos y binarios positivos • El sistema decimal es una base 10 • El sistema binario es una base 2 • El sistema hexadecimal es una base 16 • Se utilizarán únicamente valores enteros • Conversiones en ambas direcciones, p. ej., de decimal a binario o de binario a decimal • Longitud máxima del número binario de 16 bits
3 Comprender cómo y por qué se utiliza el hexadecimal como un método beneficioso para la representación de datos • Deben identificarse las áreas dentro de la informática en las que se utiliza el hexadecimal • El hexadecimal es más fácil de comprender para los seres humanos que el binario, ya que es una representación más corta del mismo
4 (a) Sumar dos enteros binarios positivos de 8 bits (b) Comprender el concepto de desbordamiento (overflow) y por qué ocurre en la suma binaria • Se producirá un error de desbordamiento si el valor es mayor que 255 en un registro de 8 bits • Un ordenador o dispositivo tiene un límite predefinido que puede representar o almacenar, por ejemplo, 16 bits • Se produce un error de desbordamiento cuando se debe devolver un valor fuera de este límite
5 Realizar un corrimiento lógico binario sobre un entero binario positivo de 8 bits y comprender el efecto que esto tiene sobre el entero binario positivo • Realizar corrimientos lógicos a la izquierda • Realizar corrimientos lógicos a la derecha • Realizar múltiples corrimientos • Los bits desplazados desde el extremo del registro se pierden y se introducen ceros en el extremo opuesto del registro • El entero binario positivo se multiplica o divide según el desplazamiento realizado • Se pierden el/los bit(s) más significativo(s) o menos significativo(s)
6 Utilizar el sistema numérico de complemento a dos para representar enteros binarios positivos y negativos de 8 bits • Convertir un entero binario o decimal positivo a un entero de 8 bits en complemento a dos y viceversa • Convertir un entero binario o decimal negativo a un entero de 8 bits en complemento a dos y viceversa

Fuente: Plan de estudios Cambridge International

Contando en binario: 0 a 15

Un sistema numérico es una forma de escribir números usando un conjunto fijo de dígitos. Necesita tres de ellos.

Sistema Base Dígitos usados
Decimal 10 0–9
Binario 2 0 y 1
Hexadecimal 16 0–9 luego A–F
  • denario es el sistema de conteo normal (también llamado decimal).
  • binario usa solo 0 y 1.
  • hexadecimal (hex) usa dieciséis dígitos: 0–9, luego A, B, C, D, E, F equivalen a 10, 11, 12, 13, 14, 15.

La base indica cuántos dígitos diferentes utiliza un sistema.

Valor posicional

Cada columna en un número tiene un valor posicional. En binario, los valores se duplican de derecha a izquierda. Para un número de 8 bits, son:

128  64  32  16  8  4  2  1
Una tabla de valores posicionales de 8 bits con valores de 128 hasta 1, y los bits de 150 ubicados bajo las columnas que suman 150
Una tabla de valores posicionales de 8 bits: los 1 están debajo de los valores que suman 150

Un bit es un único 0 o 1. Ocho bits forman un byte. Cuatro bits (mitad de byte) son un nibble.

Conversión entre sistemas numéricos

Denario → binario. Escribe los valores posicionales. Coloca un 1 debajo de cada valor que necesites para que sumen tu número; coloca 0 debajo del resto.

Ejemplo: convierte denario 150 a binario. $150 = 128 + 16 + 4 + 2$.

128 64 32 16 8 4 2 1
  1  0  0  1 0 1 1 0

Entonces $150$ = 10010110.

Binario → denario. Suma los valores posicionales donde hay un 1. 10010110 $= 128 + 16 + 4 + 2 = 150$.

Hexadecimal → binario. Convierte cada dígito hexadecimal en su propio grupo de 4 bits (un nibble).

Ejemplo: hex F08. $F = 1111$, $0 = 0000$, $8 = 1000$, entonces F08 = 1111 0000 1000.

Tres dígitos hexadecimales F, 0 y 8, cada uno con una flecha hacia abajo a su propio grupo de cuatro bits
Cada dígito hexadecimal se mapea a su propio nibble de 4 bits — F08 = 1111 0000 1000

Binario → hexadecimal. Agrupa los bits en nibbles de 4, comenzando desde la derecha. Convierte cada nibble a un dígito hexadecimal.

Denario → hexadecimal. La forma sencilla es convertir primero a binario, luego binario a hex.

Esta tabla facilita el uso de las letras hexadecimales:

Decimal Binario Hexadecimal
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F

Las preguntas de Cambridge utilizan números binarios de hasta 16 bits de longitud.

Ejemplo resuelto. Convierta el decimal 100 a binario de 8 bits, y luego a hexadecimal.

$100 = 64 + 32 + 4$, por lo tanto el binario es 01100100. Dividiendo en grupos de cuatro bits (nibbles), 0110 0100 $= 6$ y $4$, el hexadecimal resultante es 64.

Ejemplo resuelto (hexadecimal → decimal). Convierte el número hexadecimal 2C a decimal. Los valores posicionales en hexadecimal son $16$ y $1$. 2 vale $2 \times 16 = 32$ y C vale $12$, por lo que 2C $= 32 + 12 = 44$. Comprueba mediante el sistema binario: 0010 1100 $= 32 + 8 + 4 = 44$.

Por qué se usa el hexadecimal

El hexadecimal es más corto que el binario y más fácil de leer y escribir para las personas. Un dígito hexadecimal reemplaza 4 dígitos binarios, lo que reduce los errores. El valor no cambia; el hexadecimal es simplemente una forma más breve de representar el mismo número binario.

Los informáticos usan hexadecimal para:

  • Direcciones MAC y direcciones IPv6
  • Códigos de color en HTML (por ejemplo, #FF0000 es rojo)
  • Direcciones de memoria y códigos de error
  • mostrar el contenido de la memoria (un «volcado de memoria»)
Explorar

Binario, decimal y hexadecimal

Escriba un número y vea su representación en binario, decimal y hexadecimal — y cómo los valores posicionales lo construyen.

Vocabulario Entrenar
English Español
hexadecimal/ˌheksəˈdesɪml/ hexadecimal
place value/pleɪs ˈvæljuː/ place value
bit/bɪt/ bit
byte/baɪt/ byte
nibble/ˈnɪbl/ nibble
memory address/ˈmeməri əˈdres/ dirección de memoria
1.1

Suma binaria

Puede sumar dos números binarios de 8 bits, columna por columna desde la derecha, igual que con decimales. Las reglas para una columna son:

A B Bit de resultado Acarreo
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

Cuando también entra un acarreo, $1 + 1 + 1 = 1$ con un acarreo de 1.

Ejemplo: sume 01110110 (118) y 00110000 (48).

  0 1 1 1 0 1 1 0    (118)
+ 0 0 1 1 0 0 0 0    (48)
-------------------
  1 0 1 0 0 1 1 0    (166)
Suma binaria de 8 bits de 118 y 48 con los bits de acarreo mostrados en rojo sobre las columnas izquierdas, dando como resultado 166
Sumando columna por columna; los acarreos se propagan hacia la izquierda. 118 + 48 = 166

Desbordamiento

Cuando se interpreta como un entero sin signo, un registro de 8 bits almacena valores desde 0 hasta 255. Si una suma da un resultado mayor que 255, la respuesta necesita un bit 9. El registro no puede almacenar este bit adicional, por lo que se pierde. Esto se llama desbordamiento (un error de desbordamiento). Ocurre cuando un valor supera el límite que el registro puede almacenar.

Ejemplo: 11001000 (200) $+$ 01001000 (72) $= 272$. En binario eso es 1 00010000, lo cual necesita 9 bits. El bit más significativo 1 no cabrá en 8 bits, por lo que la respuesta almacenada será incorrecta.

Sumar 200 y 72 da como resultado 272, que en binario necesita nueve bits; el registro de ocho bits conserva solo los ocho inferiores y pierde el noveno bit, por lo que la respuesta almacenada es 16 en lugar de 272
Sumar 200 y 72 necesita 9 bits, pero un registro de 8 bits descarta el noveno, por lo que la respuesta es incorrecta
Vocabulario Entrenar
English Español
overflow/ˌəʊvəˈfləʊ/ overflow
logical binary shift/ˈlɒdʒɪkl ˈbaɪnəri ʃɪft/ desplazamiento binario lógico
least significant bit/liːst sɪɡˈnɪfɪkənt bɪt/ bit menos significativo
two's complement/tuːz ˈkɒmplɪmənt/ two's complement
most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ most significant bit
character set/ˈkærɪktə set/ character set
1.1

Desplazamiento binario lógico

Un desplazamiento binario lógico mueve todos los bits a la izquierda o a la derecha por una cantidad de posiciones.

  • Los bits que se desplazan fuera del extremo del registro se pierden.
  • Se añaden ceros en el extremo vacío.

Para un entero sin signo, un corrimiento a la izquierda multiplica por 2 por cada posición movida si no se pierde ningún bit distinto de cero. Un desplazamiento lógico a la derecha da el resultado entero de la división por 2 por cada posición; los bits más a la derecha (los bits menos significativos) se pierden.

Ejemplo: desplazamiento a la izquierda de 00110101 (53) por 2 posiciones.

start:         0 0 1 1 0 1 0 1
left shift 2:  1 1 0 1 0 1 0 0
Desplazamiento lógico a la izquierda de dos posiciones: las flechas mueven cada bit dos columnas hacia la izquierda, los dos bits más a la izquierda se pierden y entran dos ceros por la derecha
Un desplazamiento a la izquierda de 2: cada bit se mueve 2 posiciones a la izquierda, los bits superiores se pierden y los ceros rellenan la derecha

El resultado es 11010100 (212), que equivale a $53 \times 4$. Los dos bits más a la izquierda se perdieron y entraron dos ceros por la derecha. Si un 1 se expulsa al final, esa información se pierde para siempre.

Ejemplo resuelto (desplazamiento a la derecha). Desplaza 10110100 (180) 3 posiciones a la derecha. Da el resultado en binario y decimal, e indica qué efecto tiene el desplazamiento.

start:          1 0 1 1 0 1 0 0
right shift 3:  0 0 0 1 0 1 1 0

Los tres bits situados más a la derecha (100) se pierden y entran tres ceros por la izquierda: 00010110 $= 16 + 4 + 2 = 22$. Desplazar 3 posiciones a la derecha equivale a dividir entre $2^3 = 8$: $180 \div 8 = 22.5$, y el desplazamiento conserva solo la parte entera, $22$. El bit 1 que se perdió representaba $0.5$.

Ejemplo resuelto (un desplazamiento a la izquierda que falla). Desplaza 01100100 (100) 2 posiciones a la izquierda. El resultado es 10010000 $= 144$, no $400$: un 1 se desplazó fuera del extremo izquierdo y, además, $400$ es demasiado grande para 8 bits. Un desplazamiento a la izquierda multiplica correctamente solo mientras no se pierdan bits 1.

1.1

Complemento a dos

Hasta ahora los números eran positivos. El complemento a dos permite que un registro de 8 bits almacene también números negativos.

En complemento a dos, el bit más a la izquierda (el bit más significativo, o MSB) tiene un valor posicional negativo:

-128  64  32  16  8  4  2  1
  • Si el MSB es 0, el número es cero o positivo.
  • Si el bit más significativo es 1, el número es negativo.

Para convertir un número positivo en negativo: escribe el binario positivo, invierte cada bit (0↔1) y luego suma 1.

Ejemplo: convertir $-40$ a negativo.

  • $+40$ = 00101000
  • Invertir los bits = 11010111
  • añadir 1 = 11011000

Así $-40$ = 11011000. Verifique sumando los valores de posición: $-128 + 64 + 16 + 8 = -40$.

Una tabla de complemento a dos 8-bits donde el bit más significativo vale menos 128, con 11011000 destacado para dar menos 40
El bit más significativo vale -128, por lo tanto 11011000 = -128 + 64 + 16 + 8 = -40

Para leer un número en complemento a dos negativo, simplemente suma los valores de posición (el bit más significativo cuenta como $-128$). El rango de un número en complemento a dos de 8 bits es de $-128$ a $+127$.

Ejemplo resuelto. Convierte el número en complemento a dos 10011010 a decimal. El bit más significativo es 1, por lo que el número es negativo: $-128 + 16 + 8 + 2 = -102$. Comprueba con el otro método: invierte los bits (01100101) y suma 1 (01100110 $= 102$), por lo que el número es $-102$.

1.2

Representación de texto

Syllabus
Los candidatos deben ser capaces de: Notas y orientación
1 Comprender cómo y por qué un ordenador representa el texto y el uso de los juegos de caracteres, incluido el código estándar americano para el intercambio de información (ASCII) y Unicode • El texto se convierte en binario para ser procesado por un ordenador • Unicode permite una gama mayor de caracteres y símbolos que ASCII, incluyendo diferentes idiomas y emojis • Unicode requiere más bits por carácter que ASCII
2 Comprender cómo y por qué un ordenador representa el sonido, incluidos los efectos de la frecuencia de muestreo y la resolución de muestreo • Una onda de sonido se muestrea para convertirlo en binario, que es procesado por un ordenador • La frecuencia de muestreo es el número de muestras tomadas en un segundo • La resolución de muestreo es el número de bits por muestra • La precisión de la grabación y el tamaño del archivo aumentan conforme aumentan la frecuencia y la resolución de muestreo
3 Comprender cómo y por qué un ordenador representa una imagen, incluidos los efectos de la resolución y la profundidad de color • Una imagen es una serie de píxeles que se convierten en binario, que es procesado por un ordenador • La resolución es el número de píxeles en la imagen • La profundidad de color es el número de bits utilizados para representar cada color • El tamaño del archivo y la calidad de la imagen aumentan conforme aumentan la resolución y la profundidad de color

Fuente: Plan de estudios Cambridge International

Las computadoras almacenan texto asignando un número a cada carácter y luego almacenando ese número en binario. El conjunto de caracteres que puede usar una computadora, junto con sus números, se denomina conjunto de caracteres.

ASCII utiliza códigos de caracteres de 7 bits, lo que da $N = 2^b = 2^7 = 128$ códigos diferentes. Incluye letras inglesas, dígitos y símbolos comunes; no todos los códigos de 128 son letras. Unicode representa un rango mucho mayor de caracteres, incluidos diferentes idiomas y emojis.

Practica — codifica un mensaje corto. Este extracto de ASCII indica A = 65, B = 66, C = 67 y espacio = 32. Escribe los cuatro grupos de 7 bits para CAB , incluyendo su espacio final. Luego decodifica los grupos 1000010 1000001 1000011.

Respuesta resuelta. Busque cada carácter, luego convierta su código a binario:

Carácter Código Siete bits
C 67 1000011
A 65 1000001
B 66 1000010
espacio 32 0100000

Así CAB es 1000011 1000001 1000010 0100000. El segundo mensaje se decodifica como BAC. Un espacio también tiene un código; no es la ausencia de datos almacenados. El emisor y el receptor deben usar la misma asignación de códigos de caracteres para interpretar el mensaje correctamente.

ASCII tiene 128 códigos de siete bits; la comparación del programa usa códigos Unicode más anchos para representar un mayor rango de idiomas y símbolos. La fila más ancha es ilustrativa, no un ancho universal de Unicode.
ASCII tiene 128 códigos. Unicode soporta un rango mucho mayor; la fila más ancha ilustra el modelo del programa.

Por qué importa un rango mayor. ASCII no puede representar directamente un nombre chino. Unicode incluye caracteres chinos, así como caracteres ingleses y muchos otros idiomas. Para la comparación del programa, explique que un rango mayor requiere más códigos binarios distintos, necesitando más bits por carácter que el modelo de ASCII de 7 bits.

Practique — compare modelos de almacenamiento declarados. Almacene los cuatro caracteres CAB usando (A) 7 bits por carácter y (B) 16 bits por carácter. Asuma que los bits están agrupados sin relleno ni información adicional de archivo. Encuentre el tamaño de los datos de texto en cada modelo. El valor de 16 bits es una suposición para este ejemplo, no una regla de que todos los caracteres de Unicode tomen 16 bits.

Respuesta resuelta. Con el mismo número de caracteres, multiplique por los bits declarados por carácter:

$$S = n b = 4 \times 7\ \text{bits} = 28\ \text{bits}$$
$$S = n b = 4 \times 16\ \text{bits} = 64\ \text{bits}$$

El Modelo B usa más almacenamiento para este ejemplo porque su ancho de código declarado es mayor. Use el ancho dado en una pregunta de examen. En archivos reales, el codificado también importa: UTF-8 almacena caracteres ASCII en los mismos bytes que un archivo ASCII, por lo que el texto Unicode no siempre ocupa más bytes. No necesita las reglas detalladas de UTF-8 para esta comparación del programa.

Explorar

Representación del sonido

y = a sin(bt + c)

El sonido es una onda; el muestreo registra su altura muchas veces por segundo.

Vocabulario Entrenar
English Español
emoji/ɪˈməʊdʒi/ emoji
Ver lección
1.2

Representación de sonido

Una onda sonora es suave y cambia constantemente. Para almacenarla, la computadora mide la altura de la onda en momentos regulares. Esto se llama muestreo, y cada medición es una muestra.

Una onda sonora suave con líneas verticales a intervalos de tiempo regulares que miden su altura, marcando el intervalo de muestreo y la amplitud
El muestreo registra la altura de la onda (amplitud) en momentos regulares
  • La tasa de muestreo es el número de muestras tomadas cada segundo (medida en Hz).
  • La resolución de muestreo es el número de bits utilizados para cada muestra. La altura de la onda en un punto de muestreo es su amplitud.

Una tasa de muestreo más alta y una resolución de muestreo más alta proporcionan una grabación más precisa, pero un archivo más grande.

Explorar

Representación del sonido

y = a sin(bt + c)

El sonido es una onda; el muestreo registra su altura muchas veces por segundo.

Vocabulario Entrenar
English Español
sampling/ˈsæmplɪŋ/ sampling
sample rate/ˈsæmpl reɪt/ sample rate
sample resolution/ˈsæmpl ˌrezəˈluːʃn/ sample resolution
amplitude/ˈæmplɪtjuːd/ amplitud
1.2

Representación de imágenes

Una imagen de computadora está compuesta por una cuadrícula de pequeños puntos llamados píxeles.

Una cuadrícula de píxeles de 8 por 8 que forma una imagen simple coloreada, con un cuadrado etiquetado como un solo píxel
Un mapa de bits es una cuadrícula de píxeles; la resolución es cuántos píxeles tiene
  • La resolución es el número de píxeles en la imagen (por ejemplo, $1920 \times 1080$).
  • La profundidad de color es el número de bits utilizados para almacenar el color de cada píxel.

Una mayor resolución y una mayor profundidad de color proporcionan una imagen de mejor calidad, pero un archivo más grande.

La profundidad de color determina cuántos colores diferentes puede tener cada píxel: con $n$ bits hay $2^n$ colores. Una profundidad de color de 1 bit da 2 colores (blanco y negro), 8 bits dan $2^8 = 256$ colores y 24 bits dan más de 16 millones.

Ejemplo resuelto. Una imagen usa 64 colores diferentes. ¿Cuál es la menor profundidad de color que puede tener? Busca el menor $n$ que cumpla $2^n \geqslant 64$: $2^6 = 64$, por lo que son 6 bits por píxel. Si usara 65 colores necesitaría 7 bits, porque 6 bits solo pueden formar 64 patrones diferentes.

Vocabulario Entrenar
English Español
pixel/ˈpɪksl/ píxel
resolution/ˌrezəˈluːʃn/ resolution
colour depth/ˈkʌlə depθ/ colour depth
compression/kəmˈpreʃn/ compresión
bandwidth/ˈbændwɪdθ/ ancho de banda
transmission/trænˈsmɪʃn/ transmisión
lossless/ˈlɒsləs/ sin pérdida
run-length encoding/rʌn leŋθ enˈkəʊdɪŋ/ codificación de longitud de carrera
lossy/ˈlɒsi/ con pérdida
1.3

Medición del almacenamiento de datos

Syllabus
Los candidatos deben ser capaces de: Notas y orientación
1 Entender cómo se mide el almacenamiento de datos • Incluyendo: – bit – nibble – byte – kibibyte (KiB) – mebibyte (MiB) – gibibyte (GiB) – tebibyte (TiB) – pebibyte (PiB) – exbibyte (EiB) • La cantidad de la denominación anterior presente en el tamaño del almacenamiento de datos, ej.: – 8 bits en un byte – 1024 mebibytes en un gibibyte
2 Calcular el tamaño de archivo de una imagen y de un sonido, utilizando la información proporcionada • Las respuestas deben darse en las unidades especificadas en la pregunta. Los cálculos deben utilizar la medida de 1024 y no de 1000 • La información proporcionada puede incluir: – resolución e profundidad de color de la imagen – frecuencia de muestreo, resolución y duración de la pista de sonido
3 Entender el propósito y la necesidad de la compresión de datos • La compresión existe para reducir el tamaño del archivo • El impacto que esto tiene, ej.: – menor ancho de banda requerido – menos espacio de almacenamiento requerido – tiempo de transmisión más corto
4 Entender cómo se comprimen los archivos mediante métodos de compresión con pérdida y sin pérdida • La compresión con pérdida reduce el tamaño del archivo eliminando permanentemente datos, ej.: reduciendo la resolución o la profundidad de color, reduciendo la frecuencia de muestreo o la resolución • La compresión sin pérdida reduce el tamaño del archivo sin pérdida permanente de datos, ej.: codificación por longitud de carrera (RLE)

Fuente: Plan de estudios Cambridge International

El almacenamiento de datos se mide en las unidades siguientes. Un nibble es 4 bits y un byte es 8 bits; desde el kibibyte hacia arriba, cada unidad es 1024 veces la anterior (porque $1024 = 2^{10}$, que se adapta al sistema binario).

Unidad Equivale a
bit un único 0 o 1
nibble 4 bits
byte 8 bits
kibibyte (KiB) 1024 bytes
mebibyte (MiB) 1024 KiB
gibibyte (GiB) 1024 MiB
tebibyte (TiB) 1024 GiB
pebibyte (PiB) 1024 TiB
exbibyte (EiB) 1024 PiB
Platos de disco duro: el almacenamiento se mide en bytes — para conocer el tamaño de un archivo se necesita el ancho × alto × profundidad de color para imágenes
Platos de disco duro: el almacenamiento se mide en bytes — para conocer el tamaño de un archivo se necesita el ancho × alto × profundidad de color para imágenes
Vocabulario Entrenar
English Español
storage/ˈstɔːrɪdʒ/ almacenamiento
sound wave/saʊnd weɪv/ onda sonora
Ver lección
1.3

Cálculo del tamaño de archivo

Tamaño de archivo de imagen (en bits) $=$ resolución $\times$ profundidad de color $=$ ancho $\times$ alto $\times$ profundidad de color.

Ejemplo: una imagen tiene $1024 \times 1024$ píxeles con una profundidad de color de 2 bytes ($= 16$ bits).

  • bits $= 1024 \times 1024 \times 16 = 16\,777\,216$ bits
  • bytes $= \div 8 = 2\,097\,152$ bytes
  • KiB $= \div 1024 = 2048$ KiB
  • MiB $= \div 1024 = 2$ MiB
Escala de unidades para la imagen de 1024 por 1024 y 16 bits: 16,777,216 bits divididos entre 8 dan 2,097,152 bytes, divididos entre 1024 dan 2048 KiB, divididos entre 1024 dan 2 MiB
Para pasar de bits a bytes se divide entre 8; en cada paso posterior se divide entre 1024

Tamaño de archivo de sonido (en bits) $=$ tasa de muestreo $\times$ resolución de muestreo $\times$ duración en segundos.

Estas fórmulas calculan los datos sin comprimir sin incluir encabezados de archivo. La fórmula de sonido es para un canal; multiplique por el conteo de canales si la pregunta especifica más canales.

Siempre divida por 1024 (no por 1000) para convertir a KiB, MiB y así sucesivamente. Dé su respuesta en la unidad que solicite la pregunta.

Ejemplo resuelto. Una señal de sonido se graba durante 30 segundos con una tasa de muestreo de 8,000 Hz y una resolución de muestreo de 16 bits. Calcule el tamaño del archivo en kibibytes (KiB).

  • bits $= 8\,000 \times 16 \times 30 = 3\,840\,000$ bits
  • bytes $= 3\,840\,000 \div 8 = 480\,000$ bytes
  • KiB $= 480\,000 \div 1024 \approx 469$ KiB
1.3

Compresión

La compresión reduce el tamaño de un archivo. Un archivo más pequeño:

  • ocupa menos espacio de almacenamiento,
  • requiere menor ancho de banda (la cantidad de datos que puede transportar una conexión),
  • tarda menos tiempo en enviarse (un tiempo de transmisión más corto).

Existen dos tipos.

Compresión sin pérdida

La compresión sin pérdida reduce el tamaño del archivo con pérdida permanente nula de datos. El archivo original puede reconstruirse exactamente.

Un método es la codificación por longitud de secuencia (RLE). Sustituye una secuencia de valores repetidos por una copia del valor y un recuento del número de veces que se repite. Por ejemplo, WWWWWWWW (8 blancos) se almacena como «8 W». Esto funciona bien cuando los datos tienen muchas repeticiones.

Una tira de 8 cuadrados blancos seguidos de 4 rojos comprimida en los pares 8 W y 4 R
La codificación por longitud de secuencia almacena cada secuencia una sola vez como un conteo y un valor

Ejemplo resuelto. Una fila de una imagen en blanco y negro es B B B B B W W B B B B B B B B B (16 píxeles). Comprímela con RLE e indica si se ahorró espacio cuando cada recuento y cada color se almacenan en un byte.

Las secuencias son 5 negros, 2 blancos, 9 negros, por lo que los datos RLE son 5 B 2 W 9 B: 6 bytes en lugar de 16 bytes del original (un byte por píxel). Se ahorra espacio porque la fila tiene secuencias largas. Una fila que cambia de color en cada píxel, B W B W …, se convertiría en 1 B 1 W 1 B 1 W …, el doble del tamaño original: RLE solo ayuda cuando los datos se repiten.

Compresión con pérdida

La compresión con pérdida reduce significativamente el tamaño del archivo mediante la eliminación permanente de algunos datos. Los datos eliminados no pueden recuperarse. Por ejemplo:

  • reducir la resolución o la profundidad de color de una imagen,
  • reducir la frecuencia de muestreo o la resolución de muestreo de un sonido.

Use compresión sin pérdida cuando deba conservar todos los detalles (archivos de texto y programas). Use compresión con pérdida para fotos, música y video, donde una pequeña pérdida de calidad justifica un archivo mucho más pequeño.

Explorar

Codificación de longitud de corrida

Observe cómo los símbolos repetidos se comprimen en un conteo — compresión sin pérdida simple.

1.3

Consejos para el examen

  • Convertir decimal a binario restando los valores posicionales (128, 64, 32 …); binario a decimal sumando los valores posicionales que contienen un 1.
  • Para convertir a hexadecimal, agrupe el binario en nibbles de 4 bits desde la derecha; cada nibble corresponde exactamente a un dígito hexadecimal.
  • Desbordamiento ocurre cuando un resultado está fuera del rango de la representación elegida. Los enteros sin signo de 8 bits almacenan 0–255; los de complemento a dos de 8 bits almacinan −128–127.
  • Tamaño de archivo en bits: para una imagen, ancho × alto × profundidad de color; para sonido, frecuencia de muestreo × resolución × segundos. Divida por 8 para obtener bytes, luego divida por 1024 para cada unidad mayor.
  • La compresión sin pérdida conserva cada bit (texto; codificación por longitud de secuencia); la compresión con pérdida elimina permanentemente datos (fotos, música) para un archivo mucho más pequeño.

Lecciones interactivas sobre este tema

Trátalo paso a paso, con ejercicios de verificación instantánea.

Exámenes Anteriores

Más temas en IGCSE Ciencias de la Computación

Iniciar sesión o crear cuenta

IGCSE, A-Level & AP