El viatge complet de la lletra H

De printf("Hello world") a la teva percepció conscient

⏱️ Resum exprés (10 passos clau)

  1. Escrius "H" al codi font.
  2. El compilador la transforma en el número 72 (ASCII).
  3. El 72 es guarda en binari: 01001000 a la memòria.
  4. printf rep l'adreça on comença aquest byte.
  5. El sistema operatiu envia el byte al terminal.
  6. El terminal tradueix 72 → caràcter 'H' i demana la seva forma a la font.
  7. La GPU converteix la forma en una graella de píxels encesos/apagats.
  8. El monitor il·lumina els subpíxels RGB segons el patró.
  9. La llum arriba als teus ulls i estimula els fotoreceptors (cons L, M, S).
  10. El cervell reconstrueix les línies i reconeix la lletra H.

En les seccions següents ho veurem pas a pas i entendràs per què cada transformació és necessària.

Fase 1: Text → Número Fase 2: Memòria i CPU Fase 3: SO i Terminal Fase 4: Font → Píxels Fase 5: Llum → Cervell

🧩 Fase 1 – Del text al número

Tot comença amb el fitxer de codi font. Per a nosaltres és text, però l'ordinador no pot treballar directament amb lletres.

Pas 1. Escrivim printf("Hello world"); al fitxer hola.c.
Pas 2. Executem gcc hola.c -o hola. El compilador llegeix el fitxer i tradueix el codi C a llenguatge màquina.
Perquè el processador només entén instruccions numèriques (codi màquina), no paraules en anglès.
Pas 3. La lletra H es converteix en el número 72 (codi ASCII).
ASCII és una taula que assigna un número a cada caràcter.
H → 72
e → 101
l → 108
o → 111
Pas 4. El número 72 es guarda en binari dins de l'executable:
72 decimal = 0x48 hexadecimal = 01001000 binari
Imagina que el compilador és un traductor que canvia les paraules d'un llibre per codis de barres. Ara el llibre no es pot llegir, però un escàner (la CPU) el pot processar.
📌 En aquesta fase, la H ha desaparegut. Ara només existeix el valor numèric 72 (bits).

💾 Fase 2 – Dins la memòria i la CPU

L'executable es carrega a la memòria RAM. La cadena "Hello world" ocupa una seqüència de bytes consecutius.

Pas 5. La cadena es copia a la memòria en temps d'execució. Cada byte té una adreça única.
Adreça 1000: 72  (H)
Adreça 1001: 101 (e)
Adreça 1002: 108 (l)
...
La memòria és un immens caseller. L'adreça és el número del calaix, i dins de cada calaix hi ha un byte (8 interruptors en posició ON/OFF).
Pas 6. Quan el programa crida printf, no li passa la frase sencera, sinó l'adreça del primer byte (1000).
printf( adreça 1000 );
Pas 7. La CPU va a l'adreça 1000, llegeix el byte 01001000 (72) i el carrega en un registre intern.
printf no envia caràcters, envia bytes. Com que només coneixem el punt d'inici, la funció va llegint byte a byte fins a trobar el byte 0 (final de cadena).
🤔 Pregunta de verificació: En aquest moment, on és la lletra H? Encara no ha aparegut visualment. Només tenim bits viatjant per circuits.
📌 La CPU ha obtingut el byte 72 des de la memòria. El programa d'usuari ha de demanar al sistema operatiu que l'escrigui al terminal.

🖥️ Fase 3 – Del programa al sistema operatiu i terminal

Pas 8. printf utilitza una crida al sistema (write) per enviar el byte 72 al dispositiu de sortida estàndard (stdout).
Pas 9. El sistema operatiu lliura el byte al controlador del terminal. El terminal rep 01001000.
Pas 10. El terminal consulta la seva taula de caràcters (normalment ASCII o Unicode) i tradueix el número 72 al caràcter 'H'.
El terminal és un programa que sap dibuixar lletres; per això necessita tornar a convertir el número en una forma visual.
printf és com un missatger cec que porta un paperet amb el número 72. El terminal, en rebre'l, mira un pòster a la paret (taula ASCII) i diu: "Ah, això és una H".
📌 Per primera vegada, el byte 72 s'interpreta com el caràcter 'H'. Però encara no s'ha dibuixat res.

🎨 Fase 4 – De la font als píxels

Pas 11. El terminal demana a la font tipogràfica la forma geomètrica de la lletra 'H'. La font descriu la lletra amb corbes i línies (ex.: dues verticals i una horitzontal).
Pas 12. Rasterització: La forma vectorial es converteix en una graella de píxels. Per a una mida petita podria ser:
1 0 0 0 0 0 1
1 0 0 0 0 0 1
1 1 1 1 1 1 1
1 0 0 0 0 0 1
1 0 0 0 0 0 1
(1 = píxel encès, 0 = apagat)
Pas 13. La GPU (targeta gràfica) rep la graella i actualitza el framebuffer (la memòria de vídeo) amb el color de cada píxel. Per a un text negre sobre fons blanc, emmagatzema:
Píxel(0,0) = negre
Píxel(1,0) = blanc
...
Pas 14. Què és realment un píxel? Un píxel està format per tres subpíxels: 🔴 vermell, 🟢 verd i 🔵 blau. La GPU envia les intensitats adequades a cada subpíxel (0 = apagat, 255 = màxima llum).
Pas 15. Milions de transistors microscòpics al panell (LCD/OLED) reben els senyals i obren o tanquen el pas de la llum. Per als píxels negres de la 'H' es bloqueja la llum; per al fons blanc es deixa passar al màxim.
La GPU és una fàbrica de píxels. Converteix la plantilla de la lletra en milers d'interruptors que diuen "encesa" o "apagada" a cada bombeta minúscula.
📌 Ara la pantalla mostra un patró físic de llum amb forma d'H, però la teva ment encara no ho sap.

👁️ Fase 5 – De la llum al cervell

Pas 16. La llum emesa pels píxels viatja fins als teus ulls. Travessa còrnia, pupil·la i cristal·lí, i es projecta sobre la retina.
Pas 17. A la retina hi ha milions de fotoreceptors: cons L, M i S (sensibles al vermell, verd i blau) i bastons (llum tènue). Els fotons de la 'H' activen principalment els cons segons el color dels píxels.
Pas 18. Fototransducció (resum): Dins de cada con, una molècula de retinal canvia de forma en absorbir un fotó (d'11-cis a tot-trans). Això desencadena una cascada química que tanca canals iònics i genera un impuls elèctric.
El cervell no rep llum, rep impulsos elèctrics. Per això cal convertir l'energia lumínica en senyals nerviosos.
Pas 19. La informació visual és processada per diverses capes de neurones a la retina (bipolars, ganglionars) i surt cap al cervell pel nervi òptic.
Pas 20. Al còrtex visual primari, les neurones detecten característiques simples: vores, línies verticals i horitzontals, contrast. En aquest nivell no existeix cap "detector de H".
Pas 21. Àrees cerebrals superiors combinen aquestes peces: dues línies verticals + una línia horitzontal al mig → activen la representació apresa del símbol H.
Pas 22. Percepció conscient: Finalment emergeix la experiència subjectiva de veure la lletra H.
🤔 Pregunta de verificació: En quin moment va aparèixer la H? No al codi, no als bits, sinó al teu cervell. Fins al final tot eren números, electricitat i llum.
📌 La H no existeix físicament a l'ordinador; és una interpretació del cervell a partir d'un patró de llum.

🗺️ Línia del temps completa

Codi C ASCII (72) Binari RAM CPU SO / write Terminal Font GPU Píxels RGB Fotons Retina Nervi òptic Cervell H conscient

🧠 Per a ments curioses: Com funcionen realment els fotoreceptors

Aquesta secció amplia els passos 17-18 per a qui vulgui entendre la cascada molecular.

Les opsines i el retinal

Cada con conté una proteïna (opsina) diferent: OPN1SW (blau), OPN1MW (verd), OPN1LW (vermell). Totes porten unit el mateix cromòfor: 11-cis-retinal.

La sensibilitat al color no ve donada pel retinal, sinó per l'entorn químic de l'opsina, que ajusta l'energia necessària per isomeritzar el retinal. Per això un fotó blau activa més fàcilment el con S que el con L.

Exemple amb un píxel vermell

Si la pantalla mostra un píxel vermell, els fotons estimularan intensament els cons L, molt poc els M i gens els S. El cervell rep aquesta combinació i interpreta "vermell".

Per a una descripció pas a pas del processament retinià, consulta el material complet original sobre bastons, bipolars i còrtex.

📖 Glossari ràpid

ASCII
Codi que assigna un número (0-127) a cada caràcter. 'H' = 72.
Byte
Conjunt de 8 bits, suficient per representar 256 valors (ex. 01001000).
Adreça de memòria
Número que identifica una posició concreta a la RAM, com el número d'un calaix.
printf
Funció de C que escriu text formatat a la sortida estàndard. Internament fa crides al SO.
GPU
Processador especialitzat en gràfics, encarregat de convertir dades en píxels.
Rasterització
Conversió d'una imatge vectorial (línies i corbes) a una graella de píxels.
Fototransducció
Procés pel qual la llum es transforma en senyal elèctric a la retina.
Opsina
Proteïna sensible a la llum que, juntament amb el retinal, inicia la cascada visual.

Fi del viatge. Ara, cada cop que vegis una lletra a la pantalla, sabràs els milions de processos que l'han feta possible.