Skip to content

Que es la Codificacion y Transmision de Datos?

Prologo

Cuando envias una foto a un amigo, un mensaje por WeChat, o descargas un juego de varios GB, como llega esa informacion a traves de medio mundo intacta a tu pantalla? Este capitulo se centra en una pregunta que suele confundir a los principiantes: por que el archivo que recibi se convirtio en caracteres ilegibles? A partir de esta pregunta, descubriremos los tres pilares fundamentales de la computacion: codificacion, almacenamiento y transmision.

Que aprenderas en este articulo?

Despues de completar este capitulo, obtendras:

  • Capacidad de diagnostico de caracteres ilegibles: al enfrentar "archivo con caracteres raros", poder analizar la causa desde la perspectiva de la codificacion
  • Conciencia multiplataforma: saber por que hay que prestar atencion al formato de codificacion y al endianness al intercambiar datos
  • Vision global de la codificacion: entender como la computadora representa todo con 0 y 1 -- desde texto hasta imagenes y objetos complejos
  • Base para aprendizaje futuro: sentar las bases para protocolos de red, formatos de archivo y serializacion
CapituloContenidoConcepto clave
Capitulo 1Codificacion de caracteresASCII, UTF-8, GBK
Capitulo 2Almacenamiento de datosBinario, endianness
Capitulo 3Transmision de datosSerializacion, compresion

0. Introduccion: Por que los archivos se vuelven "jeroglificos"?

Imagina que recibes un archivo importante de un colega, lo abres con doble clic y esta lleno de caracteres extranos como "浣犲ソ" o "ä½ å¥½".

La verdad es que la gran mayoria de los supuestos "archivos danados" tienen una unica explicacion -- tu computadora "no encontro el diccionario correcto".

Comprendimiento central: Diccionarios desalineados

Los bytes (secuencias de 0 y 1) no tienen significado absoluto por si mismos. Son las reglas de codificacion creadas por humanos las que les dan significado.

Si el remitente uso el diccionario UTF-8 para traducir caracteres chinos a numeros y tu intentas leer esos numeros con el diccionario GBK, el resultado sera caracteres ilegibles.

你收到的文件内容(字节流)
0xE40xBD0xA00xE50xA50xBD
用什么规则来「读」它?
正确(UTF-8)
你好
发件人用 UTF-8 存储了「你好」,你也用 UTF-8 读,当然正确。
核心领悟:字节本身没有含义,编码规则决定了字节变成什么字。发件人用 UTF-8 存,你用 GBK 读,当然面目全非。

1. Que es la codificacion de datos? (Convertir todo en numeros)

La codificacion de datos (Encoding) es crear un "diccionario bidireccional" que mapee informacion del mundo real (texto, color, sonido) a 0 y 1 que la computadora puede entender.

1.1 De texto a numeros: De ASCII a Unicode

Primera etapa: El pequeno mundo de ASCII

Cuando se invento la computadora, los estadounidenses pensaron que solo existian 26 letras, numeros y simbolos de puntuacion, asi que crearon un diccionario muy delgado llamado ASCII. Solo definio 128 simbolos.

Segunda etapa: La era de los reinos divididos

Cuando la computadora llego al mundo, todos descubrieron que los caracteres chinos son decenas de miles, y un solo byte no era suficiente. China creo GBK, Japon creo Shift_JIS... El mundo cayo en el caos.

Tercera etapa: Unicode unifica todo

Los expertos en computacion se sentaron juntos y crearon Unicode, que asigna un numero unico a cada caracter, emoji incluido. UTF-8 es la regla de almacenamiento mas popular de Unicode: ingles usa 1 byte, chino usa 3 bytes.

字符Unicode 码点UTF-8 字节字节数
U+4F60
0xE40xBD0xA0
3 字节
U+597D
0xE50xA50xBD
3 字节
U+0020
0x20
1 字节
HU+0048
0x48
1 字节
eU+0065
0x65
1 字节
lU+006C
0x6C
1 字节
lU+006C
0x6C
1 字节
oU+006F
0x6F
1 字节
字符数8
UTF-8 总字节数12
平均每字符1.5 字节
提示:英文字母在 UTF-8 中只占 1 字节,常用汉字占 3 字节,Emoji 占 4 字节。这就是为什么处理中文文本时,“字符数”和“字节数”是两个完全不同的概念。

1.2 Como se convierten el color y el sonido en numeros?

  • Codificacion de imagenes: Una foto se compone de millones de pixeles. Asignamos un numero a cada color (como #FF0000 para rojo).
🖼️ 图片是如何变成数字的?(悬停在像素方块上看看)
💻 计算机实际看到的:
#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#3B82F6#3B82F6#F3F4F6#F3F4F6#3B82F6#3B82F6#F3F4F6#F3F4F6#3B82F6#3B82F6#F3F4F6#F3F4F6#3B82F6#3B82F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#3B82F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#3B82F6#F3F4F6#3B82F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#3B82F6#F3F4F6#F3F4F6#F3F4F6#3B82F6#3B82F6#3B82F6#3B82F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6#F3F4F6
将鼠标悬停在左侧画布的方块上
💡 原理解析:一张 1080p 的高清壁纸,其实就是 207 万 个像左边这样密密麻麻的小色块组成的。计算机把这两百多万个颜色的编号(如 #FF0000)按顺序记录下来,图片就变成了几百万个数字的集合。
  • Codificacion de audio: El sonido es una onda. Si medimos la altura de esta onda 44,100 veces por segundo (muestreo) y registramos los valores, el sonido continuo se convierte en una serie de numeros discretos.
声音是如何变成数字的?(拖拽滑块调整采样率)
低音质 (严重失真)高音质 (贴近原声)
转译后的数字(高度):
0530-520530-520
说明:灰色的虚线是真实的连贯声波(大自然的模拟信号)。蓝色柱子是我们每隔一段时间去测量它的高度(数字信号)。采样频率越密集,记录下来的数字就越多,恢复出来的声音就越清晰逼真,但产生的文件也随之飙升。

2. Puente de almacenamiento: Antes de enviar, hay que guardarlo en algun lugar

Despues de codificar los datos, antes de enviarlos, debemos almacenarlos. Hay una ley de hierro del hardware: cuanto mas rapido es el almacenamiento, mas caro es y menor es la capacidad.

L0CPU 寄存器极快
L1CPU 缓存(Cache)很快
L2内存(RAM)
L3SSD(固态硬盘)较快
L4机械硬盘(HDD)
L2内存(RAM)
访问速度几十 ~ 100 纳秒
典型容量几 GB ~ 几百 GB
单价(每GB)适中(约 ¥30/GB)
生活类比:你打开的浏览器标签页——断电就没了,但当前工作全在这里。
实际用途:运行中的程序、操作系统、当前打开的文件都住在内存里。内存不够了→程序卡顿甚至崩溃。
提示:越快越贵,越慢越大。CPU 缓存极快但只有几 MB;机械硬盘虽慢但便宜又能存 TB。操作系统会自动在各层之间搬运数据——这叫存储层次结构

El sistema operativo actua como un administrador de almacen extremadamente inteligente:

  1. Guarda peliculas y juegos en almacenamiento lento pero grande (SSD o disco duro)
  2. Cuando juegas, mueve los datos necesarios a la memoria rapida (RAM)
  3. Cuando cierras el juego, limpia la memoria para otros usos

3. Que es la transmision de datos? (Enviar 0 y 1 de viaje)

3.1 Transmision en hardware y LAN

Dentro del chasis o entre computadoras cercanas, enfrentamos un desafio puramente fisico. Hoy en dia, USB Type-C, PCIe y otros interfaces usan transmision serial (un solo canal principal).

选择传输方式,然后点"发送数据包"
Tx
发送方
10110010
1 条线
Rx
接收方
已发送0 / 8 位
传输速率1 位/次
状态就绪
提示:等等,串行不是更慢吗?
表面上是的——但现代串行接口(USB 4、PCIe)传输频率高达每秒 数百亿次,而并行线路之间会产生 信号串扰(Crosstalk),反而限制了速度。所以高速接口全面转向了串行。

3.2 Transmision WAN e Internet

Cuando tus datos deben llegar a un servidor en otro pais, atraviesan cables submarinos, estaciones base y enrutadores. El desafio aqui es la tolerancia a fallos.

  1. Segmentacion en paquetes: La red corta el video en miles de "paquetes de datos" (~1500 bytes cada uno)
  2. Suma de verificacion (Checksum): Se calcula un codigo de verificacion antes de enviar
  3. Retransmision TCP: Si un paquete se pierde o se dana, el receptor solicita su reenvio

Gracias a este mecanismo TCP (Protocolo de Control de Transmision), incluso en WiFi inestable, los archivos descargados siempre estan 100% intactos.


4. Practica final: Desde tomar una foto hasta subirla a redes sociales

📸 照片上传的完整旅程从按下快门到云端备份,数据经历了什么?
1
编码
2
存储
3
传输
🔢编码阶段等待执行
☀️
光线
物理信号
📷
传感器
CMOS/CCD
📊
RAW 数据
24MB / 4860万像素
🗜️
JPEG 压缩
有损压缩
📄
JPEG 文件
3.2MB
第一步:编码 — 把光变成数字
1相机传感器把光信号转换成 RGB 数值(每个像素 3 × 8 bit = 24 bit)
2整张照片 4860 万像素 × 24 bit ≈ 140 MB 的原始数据
3JPEG 算法分析像素相似性,去掉人眼不敏感的信息,压缩到 3 MB

5. Tabla de terminologia

TerminoExplicacion
Bit (b)La unidad mas pequena, solo puede ser 0 o 1
Byte (B)8 Bits juntos. Unidad basica de tamano de archivo
Character SetEl "indice del diccionario", define que caracteres existen
EncodingLa "regla de almacenamiento", determina que bytes corresponden a cada caracter
RAMMemoria de trabajo rapida pero volatil
SSDDisco de estado solido, almacenamiento permanente rapido
Serial / ParallelSerial = un canal en cola; Paralelo = multiples canales juntos
ChecksumCodigo de verificacion adjunto a los datos transmitidos
TCPProtocolo de Control de Transmision, garantiza entrega 100% intacta

Resumen

  • Por que el mismo archivo se ve ilegible cuando lo recibes? Los datos no estan danados, solo tu software uso el diccionario equivocado (problema de codificacion).
  • Por que los cables Type-C son mas delgados pero mas rapidos? Porque antes eran multiples carruajes en paralelo (paralelo), ahora es un tren de alta velocidad en via dedicada (serial).
  • Por que los juegos grandes tardan en cargar? Porque necesitan mover decenas de GB del disco lento a la memoria rapida.

La esencia de la computacion es simple: convertir (codificar), almacenar (guardar), y enviar (transmitir) toda la informacion como impulsos electricos.