Saltar al contenido
0221 / Montaje y mantenimiento

0221 · Montaje y mantenimiento de equipo · Tema 2 (UT2) · Teoría

Teoría — Estructura funcional del ordenador y arquitectura de buses

2.º SMR · Curso 2026/2027 · 1.ª evaluación · UT2 · RA1

Qué se evalúa · RA y criterios

Qué criterios cubre esta página

RA1. Selecciona los componentes que integran un equipo microinformático estándar, describiendo sus funciones y comparando prestaciones de distintos fabricantes.

  • a) Se han descrito los bloques que componen un equipo microinformático y sus funciones.
  • b) Se ha reconocido la arquitectura de buses.

Los apartados 2.1 a 2.3 (representación de la información y puertas lógicas) son la base para entender cómo trabaja la CPU por dentro. No se evalúan por separado.

Cómo estudiar este tema. Cada apartado tiene una pieza marcada como Pruébalo: pulsa, cambia valores y mira qué pasa. Antes de pasar al siguiente apartado, comprueba que sabrías explicar con tus palabras lo que has visto.

2.1 Del mundo analógico al digital

Un ordenador es una máquina que procesa información: recibe datos, los transforma siguiendo las instrucciones de un programa y devuelve resultados. Antes de ver cómo lo hace, hay que entender qué tipo de información maneja.

Información analógica

Puede tomar infinitos valores entre dos puntos. La temperatura de una habitación no salta de 20 °C a 21 °C: pasa por 20,1, 20,15, 20,151… La voz, la luz o la velocidad de un coche también son analógicas.

Información digital

Solo toma valores concretos, sin nada en medio. Un termómetro digital que muestra «20,5» no puede mostrar nada entre 20,5 y 20,6. Los ordenadores actuales son digitales.

¿Por qué solo dos estados?

Dentro del ordenador la información se guarda y se mueve como tensión eléctrica. Distinguir solo dos niveles («hay tensión» y «no hay tensión») es muy fiable: aunque el cable recoja algo de ruido, es difícil confundir uno con otro. Si hubiera que distinguir diez niveles, cualquier interferencia provocaría errores.

A esos dos estados los llamamos 1 y 0 (también alto/bajo, H/L o verdadero/falso). Los primeros circuitos digitales trabajaban con 0 V y 5 V. Hoy se usan tensiones mucho más bajas para gastar menos y calentarse menos: el núcleo de un procesador actual funciona alrededor de 1 V y la memoria DDR5 a 1,1 V.

El bit

El bit (binary digit, dígito binario) es la unidad mínima de información: un único 0 o 1. Todo lo que hay en un ordenador (textos, fotos, música, programas) se guarda como largas secuencias de bits.

Agrupaciones de bits

NombreBitsCombinaciones posiblesDónde lo verás
Bit12Un interruptor: encendido o apagado
Nibble (cuarteto)416Una cifra hexadecimal
Byte (octeto)8256Un carácter de texto; la unidad de las capacidades
Palabra (word)1665 536Tamaño de dato de los primeros PC (procesador 8086)
Doble palabra (dword)32≈ 4 300 millonesProcesadores y sistemas operativos de 32 bits
Cuádruple palabra (qword)64≈ 1,8 × 1019Procesadores y sistemas operativos de 64 bits actuales

Fíjate en la tercera columna: con n bits se pueden formar 2n combinaciones. Esta idea aparece una y otra vez en el tema.

Ejemplo · ¿Cuántos bits necesita una calculadora?

Las teclas numéricas son 10 (del 0 al 9). Con 3 bits salen 23 = 8 combinaciones: no llegan. Con 4 bits salen 24 = 16: sobran 6, pero ya caben las 10. Se necesitan 4 bits. En general, se busca el menor n que cumpla 2n ≥ número de cosas que quiero representar.

2.2 Representación de la información

2.2.1 Sistema binario

Usamos el sistema decimal (base 10): diez cifras, y cada posición vale diez veces más que la de su derecha (unidades, decenas, centenas…). El sistema binario (base 2) funciona igual, pero solo con las cifras 0 y 1, y cada posición vale el doble que la de su derecha:

Posición76543210
Peso1286432168421

De binario a decimal: se suman los pesos de las posiciones que tienen un 1. Por ejemplo, 0010 1101 = 32 + 8 + 4 + 1 = 45.

De decimal a binario: se divide entre 2 una y otra vez y se leen los restos de abajo arriba. También se puede ir restando el mayor peso que quepa:

Ejemplo · 45 en binario por divisiones sucesivas

45 ÷ 2 = 22, resto 1
22 ÷ 2 = 11, resto 0
11 ÷ 2 = 5, resto 1
5 ÷ 2 = 2, resto 1
2 ÷ 2 = 1, resto 0
1 ÷ 2 = 0, resto 1

Leyendo los restos de abajo arriba: 101101. Con 8 bits se escribe 0010 1101.

2.2.2 Sistema hexadecimal

Escribir muchos bits es incómodo y es fácil equivocarse. El sistema hexadecimal (base 16) usa 16 cifras: del 0 al 9 y de la A a la F (A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15). Su gran ventaja es que cada cifra hexadecimal equivale exactamente a 4 bits.

Para pasar de binario a hexadecimal se agrupan los bits de cuatro en cuatro empezando por la derecha y se cambia cada grupo por su cifra:

0110 1100 0010 1110 → 6 C 2 E → 6C2E

El hexadecimal aparece continuamente en informática: direcciones de memoria en los mensajes de error, direcciones MAC de las tarjetas de red (3C:52:82:1A:F0:9B), colores de las páginas web (#17685E es el verde de este módulo) o códigos de error de la BIOS.

Para distinguir en qué base está un número se usa un subíndice o un prefijo: 1012 o 0b101 en binario, 2E16 o 0x2E en hexadecimal.

Pruébalo

Un byte en tus manos

Pulsa los bits para encenderlos y apagarlos, o escribe un número. Fíjate en cómo cada grupo de 4 bits se convierte en una cifra hexadecimal.

2.2.3 Unidades de capacidad

La capacidad de memorias y discos se mide en bytes y sus múltiplos. Aquí hay una trampa que conviene conocer: existen dos sistemas de múltiplos.

Sistema internacional (base 10)Sistema binario IEC (base 2)
kilobyte (kB)1000 byteskibibyte (KiB)1024 bytes
megabyte (MB)1000 kBmebibyte (MiB)1024 KiB
gigabyte (GB)1000 MBgibibyte (GiB)1024 MiB
terabyte (TB)1000 GBtebibyte (TiB)1024 GiB
petabyte (PB)1000 TBpebibyte (PiB)1024 TiB
exabyte (EB)1000 PBexbibyte (EiB)1024 PiB

Los fabricantes de discos usan el sistema internacional. Windows calcula en base 1024, pero escribe «GB». Por eso un disco de 1 TB aparece en Windows como 931 GB: no falta espacio, solo cambia la forma de contar. La memoria RAM, en cambio, siempre se fabrica en potencias de 2: un módulo de «16 GB» tiene en realidad 16 GiB.

Por encima del exabyte están el zettabyte (ZB) y el yottabyte (YB). En 2022 se añadieron el ronnabyte (RB) y el quettabyte (QB).

Pruébalo

Conversor de unidades

Escribe la capacidad de tu disco o de tu móvil y compara las dos formas de contar.

2.2.4 Otros códigos

  • BCD (decimal codificado en binario): cada cifra decimal se guarda por separado con 4 bits. 45 en BCD es 0100 0101. Lo usan relojes, calculadoras y el reloj de la placa base.
  • ASCII: asigna un número a cada letra, cifra y símbolo. La «A» es el 65 (0x41) y la «a» el 97. ASCII solo tiene 128 caracteres, así que no incluye la «ñ» ni las tildes. Hoy se usa Unicode (normalmente en formato UTF-8), que tiene sitio para todos los idiomas y para los emojis.

2.3 Puertas lógicas: cómo calcula un circuito

En 1938, Claude Shannon demostró que el álgebra de Boole, una parte de las matemáticas que trabaja solo con «verdadero» y «falso», sirve para diseñar circuitos eléctricos. Desde entonces, todo lo que hace un procesador se construye a partir de unos bloques muy simples: las puertas lógicas.

Una puerta lógica recibe uno o varios bits de entrada y produce un bit de salida según una regla fija. Por dentro está hecha con transistores que funcionan como interruptores controlados por tensión. El chip 4011, por ejemplo, contiene cuatro puertas NAND. Un procesador actual tiene decenas de miles de millones de transistores.

PuertaExpresiónLa salida vale 1 cuando…Símbolo IEC
NOT (inversora)S = A'la entrada vale 01 con círculo
AND (Y)S = A · Btodas las entradas valen 1&
OR (O)S = A + Balguna entrada vale 1≥1
NAND (NO-Y)S = (A · B)'alguna entrada vale 0& con círculo
NOR (NO-O)S = (A + B)'todas las entradas valen 0≥1 con círculo
XOR (O exclusiva)S = A ⊕ Blas entradas son distintas=1
XNORS = (A ⊕ B)'las entradas son iguales=1 con círculo

Hay dos formas de dibujar las puertas: los símbolos ANSI (americanos, con formas curvas, los que verás en los esquemas de este tema) y los IEC (europeos, un rectángulo con un signo dentro). En los dos casos, un círculo pequeño en la salida significa «invertida».

Pruébalo

Laboratorio de puertas

Elige una puerta y pulsa los conmutadores A y B. Los cables en verde llevan un 1. La fila de la tabla de verdad que estás probando se marca en amarillo.

2.3.1 Cómo leer un circuito lógico

Cuando se combinan varias puertas, la salida se calcula paso a paso, de izquierda a derecha:

  1. Numera las puertas y escribe la expresión de la salida de cada una a partir de sus entradas.
  2. Sustituye hasta llegar a la expresión de F en función de las entradas.
  3. Haz la tabla de verdad: con n entradas hay 2n filas (con A, B y C, 8 filas).

Un punto donde se juntan cables indica que están unidos. Si dos cables se cruzan sin punto (o con un pequeño salto), no se tocan.

Circuito de ejemplo: A y B entran en una puerta OR; C entra en una puerta NOT; las salidas de la OR y de la NOT entran en una puerta AND cuya salida es F.
Ejemplo resuelto: F a partir de A, B y C.
Ejemplo resuelto

Puerta 1 (OR): A + B. Puerta 2 (NOT): C'. Puerta 3 (AND): F = (A + B) · C'.

F vale 1 cuando «A o B valen 1» y «C vale 0»:

ABCA + BC'F
000010
001000
010111
011100
100111
101100
110111
111100

Añadir columnas intermedias (A + B, C') evita muchos errores.

2.3.2 De las puertas a la memoria: circuitos combinacionales y secuenciales

Combinacionales

La salida depende solo de las entradas de ese momento. No recuerdan nada. Ejemplos: las puertas, los sumadores, los decodificadores (de una dirección binaria a «cuál de las celdas activo») o los multiplexores (elegir una entre varias señales).

Secuenciales

La salida depende de las entradas y de lo que pasó antes: tienen memoria. Su pieza básica es el biestable (flip-flop), que guarda 1 bit. Varios biestables juntos forman un registro. Funcionan al ritmo de una señal de reloj.

2.3.3 Así suma la UAL

Sumar dos bits tiene cuatro casos: 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1 y 1 + 1 = 10 (es decir, 0 y «me llevo 1»). Si te fijas, la cifra de la suma se comporta como una XOR y la llevada como una AND. Con esas dos puertas se construye un semisumador:

Pruébalo

Semisumador

Prueba las cuatro combinaciones de A y B y comprueba que S y C dan la suma en binario.

Encadenando sumadores (cada uno pasa su llevada al siguiente) se suman números de 4, 8, 32 o 64 bits. Esto es, literalmente, lo que hay dentro de la unidad aritmético-lógica del procesador:

Pruébalo

Sumador de 4 bits

Pulsa los bits de A y de B. Prueba a sumar 9 + 8 y fíjate en lo que pasa con la última llevada.

2.4 Bloques funcionales y arquitectura de Von Neumann

Da igual que sea un portátil, un servidor o un móvil: todos los ordenadores se organizan en los mismos bloques funcionales. Cada bloque cumple una función, aunque físicamente pueda estar repartido entre varios componentes.

2.4.1 El modelo de Von Neumann

En 1945, el matemático John von Neumann describió cómo debía organizarse un ordenador de propósito general. Casi todos los ordenadores actuales siguen ese modelo, que se basa en tres ideas clave:

  1. Programa almacenado: los datos y las instrucciones del programa se guardan juntos en la misma memoria. Para cambiar lo que hace la máquina basta con cargar otro programa, sin recablear nada.
  2. Acceso por dirección: cada celda de la memoria tiene un número (su dirección) y se llega a su contenido indicando ese número.
  3. Ejecución secuencial: las instrucciones se ejecutan una detrás de otra, en el orden en que están en memoria, salvo que una instrucción ordene saltar a otra dirección.
Pruébalo

Explora la máquina de Von Neumann

Pulsa cada bloque para ver qué hace y qué componente real lo forma.

CPU

Unidad de control (UC)

Es el «director de orquesta». Busca en memoria la siguiente instrucción, la interpreta (decodifica) y envía las señales de control para que el resto de bloques la ejecuten en el orden correcto. Lleva la cuenta de por dónde va el programa con el contador de programa (CP).

Componente real: está dentro del microprocesador.

Al conjunto de unidad de control + UAL + registros se le llama unidad central de proceso (CPU). Si se le añaden la memoria principal, la unidad de E/S y los buses, tenemos el ordenador completo.

Cómo circula la información: los datos entran por la unidad de E/S y se guardan en la memoria. La UC va leyendo las instrucciones de la memoria y ordena a la UAL las operaciones necesarias. Los resultados vuelven a la memoria y, desde ahí, salen al usuario por la unidad de E/S. Todo ese tráfico pasa por los buses.

El cuello de botella de Von Neumann

Como instrucciones y datos comparten la misma memoria y los mismos buses, la CPU no puede leer una instrucción y un dato a la vez. Además, la CPU es muchísimo más rápida que la memoria, así que a menudo se queda esperando. Gran parte del diseño de un ordenador actual (memorias caché, varios canales de memoria, buses más anchos) existe para aliviar este problema.

2.4.2 La arquitectura Harvard

La arquitectura Harvard separa la memoria en dos: una para las instrucciones y otra para los datos, cada una con sus propios buses. Así la CPU puede leer una instrucción y un dato al mismo tiempo.

Von NeumannHarvard
MemoriasUna sola, para datos e instruccionesDos: una de instrucciones y otra de datos
BusesUn juego de buses compartidoUn juego de buses para cada memoria
VentajaSimple y flexible: la memoria se reparte según la necesite cada programaMás rápida: lee instrucción y dato a la vez
InconvenienteCuello de botella en el acceso a memoriaPuede sobrar memoria de un tipo y faltar de otro; diseño más complejo
Dónde se usaOrdenadores personales, portátiles, servidoresMicrocontroladores (el de la placa Arduino Uno), procesadores de señal (DSP)

Los procesadores actuales son una mezcla: hacia fuera siguen el modelo de Von Neumann (una sola RAM), pero por dentro su caché de primer nivel (L1) está partida en dos, una para instrucciones y otra para datos. Es lo que se llama Harvard modificada.

2.4.3 De los bloques a las piezas reales

Cuando abras un equipo en el taller verás piezas, no bloques. Esta es la correspondencia:

Bloque funcionalComponentes físicos
CPU (UC, UAL, registros)Microprocesador (con su disipador). Incluye además la memoria caché y, en los modelos actuales, el controlador de memoria y a veces la gráfica integrada.
Memoria principalMódulos de RAM en sus ranuras de la placa base.
Unidad de E/SChipset y controladores de la placa base, tarjetas de expansión (gráfica, red, sonido), puertos y conectores, y los periféricos: teclado, ratón, monitor, discos SSD y HDD, impresora…
BusesPistas de cobre de la placa base, ranuras (PCI Express, ranuras de memoria) y conexiones internas de los chips.

Los discos son una pieza curiosa. Por su función forman parte de la jerarquía de memoria (memoria secundaria). Pero en el modelo de Von Neumann son periféricos de almacenamiento: la CPU no ejecuta programas directamente desde ellos, primero los copia a la RAM.

Pruébalo

¿A qué bloque pertenece?

Elige el bloque funcional de cada elemento y pulsa «Comprobar».

  1. Microprocesador Ryzen 5
  2. Módulo DDR5 de 16 GB
  3. SSD NVMe de 1 TB
  4. Tarjeta de red wifi
  5. Pistas de cobre entre el zócalo y las ranuras de RAM
  6. Acumulador (AC)
  7. Monitor
  8. Ranura PCI Express x16
  9. Contador de programa (CP)
  10. Impresora láser

2.5 Las unidades funcionales por dentro

2.5.1 La memoria principal

La memoria es un conjunto de celdas iguales. Cada celda guarda un número fijo de bits (en los PC, un byte) y tiene su propia dirección. Sobre una celda se pueden hacer dos operaciones, nunca a la vez:

  • Lectura (L): se consulta lo que hay guardado. El contenido no cambia.
  • Escritura (E): se guarda un valor nuevo. Lo que hubiera antes se pierde.

Para trabajar, la memoria usa dos registros auxiliares:

  • Registro de direcciones (RD): guarda la dirección de la celda a la que se quiere acceder. Le llega por el bus de direcciones.
  • Registro de memoria (RM): guarda el dato que se acaba de leer o el que se va a escribir. Está conectado al bus de datos.

En otros libros verás estos registros con sus siglas en inglés: MAR (RD) y MDR o MBR (RM).

La capacidad de una memoria es el número de celdas por el tamaño de cada celda. Las celdas se organizan en filas y columnas, y en los chips de verdad, en varios bloques (bancos). Para localizar un dato el chip activa una fila y después una columna. Volverás a ver esta idea al estudiar las latencias de la RAM en el tema 3.

La jerarquía de memoria

No existe una memoria a la vez rápida, enorme y barata. Por eso el ordenador combina varios niveles: arriba los pequeños y rapidísimos; abajo los grandes, lentos y baratos. Lo que más se usa se mantiene en los niveles rápidos.

NivelDónde estáTiempo de acceso típicoCapacidad típicaSi el registro tardase 1 segundo…
RegistrosDentro de la CPU≈ 0,3 nsBytes1 segundo
Caché L1 · L2 · L3Dentro de la CPU1 ns · 4 ns · 15 nsKB · MB · decenas de MB3 s · 13 s · 50 s
Memoria principal (RAM)Módulos en la placa≈ 80 nsGB≈ 4 minutos
Secundaria: SSD NVMeUnidad de almacenamiento≈ 50 µsCientos de GB a TB≈ 2 días
Secundaria: disco duro (HDD)Unidad de almacenamiento≈ 5 msTB≈ 6 meses
AuxiliarDiscos externos, cintas, nubeDe milisegundos a segundosTB a PBAños

Los valores son aproximados y cambian según el modelo. La última columna ayuda a hacerse una idea: si leer un registro durase un segundo, ir a la RAM supondría unos cuatro minutos y leer del disco duro, medio año. Por eso la caché es tan importante.

Los registros, la caché y la memoria principal forman la memoria interna. La memoria secundaria y la auxiliar forman la memoria externa.

2.5.2 La unidad aritmético-lógica (UAL)

La UAL contiene los operadores: los circuitos que suman, restan, comparan o hacen operaciones lógicas como el sumador que has visto en el apartado 2.3. Según cuántos datos usan, los operadores son monádicos (un dato, como NOT o cambiar el signo) o diádicos (dos datos, como la suma).

  • Los datos llegan a unos registros de entrada de la UAL.
  • El resultado se guarda en el acumulador (AC), desde donde puede usarse en la siguiente operación o enviarse a memoria.
  • El registro de estado guarda información sobre el último resultado mediante indicadores (flags): si ha salido cero, si es negativo, si ha habido llevada o si el resultado no cabe (desbordamiento). La UC los consulta para tomar decisiones, como en un «si… entonces» de un programa.

2.5.3 La unidad de control (UC)

La UC busca las instrucciones, las interpreta y genera las órdenes para ejecutarlas. Sus partes principales son:

  • Contador de programa (CP): registro con la dirección de la siguiente instrucción. En inglés, PC (program counter).
  • Registro de instrucción (RI): guarda la instrucción que se está ejecutando. En inglés, IR.
  • Decodificador: interpreta la instrucción del RI y averigua qué operación hay que hacer y con qué datos.
  • Secuenciador: genera las señales de control en el orden correcto, paso a paso.
  • Reloj: marca el ritmo. Cada pulso es un ciclo, y cada paso de una instrucción ocupa uno o varios ciclos.
La frecuencia de reloj

Se mide en hercios (Hz): ciclos por segundo. Un procesador a 4 GHz da 4000 millones de pulsos por segundo; cada ciclo dura 0,25 ns. Subir la frecuencia por encima de la de fábrica se llama overclocking: el procesador va más rápido, pero consume más, se calienta más y puede volverse inestable.

Hay dos formas de construir una UC. En la de control cableado, los pasos de cada instrucción están fijados en los circuitos. En la de control microprogramado, cada instrucción se descompone en un pequeño programa interno de microinstrucciones. A ese software grabado dentro del hardware se le llama, en general, firmware.

2.5.4 La unidad de entrada/salida

Los periféricos se clasifican en:

  • De entrada: introducen información (teclado, ratón, escáner, micrófono, webcam).
  • De salida: muestran o entregan información (monitor, impresora, altavoces).
  • De entrada/salida: hacen las dos cosas. Unos son de almacenamiento (discos, memorias USB) y otros de comunicación (tarjeta de red, router, módem). La pantalla táctil también es de entrada/salida.

Entre la CPU y cada periférico hay dos piezas:

  • El controlador maneja directamente el dispositivo. Por ejemplo, el controlador de un disco mueve el cabezal. Suele ir dentro del propio periférico.
  • La interfaz traduce las señales del periférico a las señales normalizadas del sistema. Ejemplos: USB, SATA, HDMI.

Para que la CPU distinga si habla con la memoria o con un periférico hay dos sistemas:

  • E/S mapeada en memoria: los periféricos ocupan algunas direcciones del mismo mapa que la memoria. La CPU les habla con las mismas instrucciones que usa para leer y escribir en memoria.
  • E/S aislada (o independiente): los periféricos tienen su propio mapa de direcciones, separado del de la memoria. La CPU usa instrucciones especiales de E/S y una señal del bus de control que indica «esto va para la E/S, no para la memoria».

Los periféricos son lentos comparados con la CPU. Para no tenerla esperando, se usan interrupciones (el periférico avisa cuando tiene algo listo; lo verás en el apartado 2.7). Para mover muchos datos se usa el acceso directo a memoria (DMA): el periférico copia los datos a la RAM sin pasar por la CPU.

2.6 Los buses

Un bus es un conjunto de líneas (cables o pistas de cobre) que comparten varias unidades para comunicarse. Por cada línea viaja un bit cada vez. El número de líneas es el ancho del bus.

BusQué llevaSentidoQué determina su ancho
De datos (BD)Datos e instruccionesBidireccionalCuántos bits se mueven de una vez. Un bus de 64 bits mueve 8 bytes en cada transferencia.
De direcciones (BA)Direcciones de memoria o de E/SUnidireccional (sale de la CPU)Cuánta memoria se puede direccionar: con n líneas hay 2n direcciones.
De control (BC)Señales de control: leer, escribir, reloj, reinicio, petición y aceptación de interrupción, bus ocupado…Cada línea en su sentidoNo se mide igual: cada línea es una señal distinta.
Ejemplo · ¿Por qué un sistema de 32 bits no ve más de 4 GB?

Si las direcciones tienen 32 bits, hay 232 = 4 294 967 296 direcciones distintas. Con una celda de 1 byte en cada dirección, el máximo es 4 294 967 296 bytes = 4 GiB. Aunque se instale más RAM, no hay direcciones para llegar a ella.

La velocidad de un bus se mide por su ancho de banda: cuántos bytes transfiere por segundo.

ancho de banda = (ancho en bits ÷ 8) × frecuencia × transferencias por ciclo

Las memorias DDR (double data rate) hacen dos transferencias por ciclo de reloj. Por eso una DDR4 con reloj de 1600 MHz se vende como DDR4-3200: 3200 millones de transferencias por segundo.

Pruébalo

Calculadora de buses

Cambia el ancho de los buses y la frecuencia, o carga uno de los ejemplos reales.

2.6.1 Los buses en un ordenador actual

El modelo de Von Neumann dibuja un único juego de buses compartido por todos. Los primeros PC eran así, pero hoy sería un atasco permanente. Un equipo actual usa varias conexiones punto a punto, cada una dedicada a un tipo de tráfico:

  • CPU ↔ RAM: el controlador de memoria está dentro del procesador y se comunica con los módulos por dos o más canales de memoria independientes.
  • CPU ↔ tarjeta gráfica y SSD NVMe: por PCI Express, organizado en carriles (x1, x4, x16). A más carriles, más ancho de banda.
  • CPU ↔ chipset: un enlace dedicado (en Intel se llama DMI).
  • Chipset ↔ resto de E/S: USB, SATA, red, sonido…

Además, casi todos estos buses modernos son serie: en lugar de muchas líneas en paralelo, usan pocas líneas a velocidades altísimas. Con muchas líneas en paralelo, a frecuencias muy altas, los bits de las distintas líneas llegan desfasados. Verás todo esto con detalle al estudiar la placa base en el tema 3.

2.7 El ciclo de instrucción

Un programa es una lista de instrucciones guardadas en memoria. Cada instrucción tiene un formato fijo. En nuestra máquina de ejemplo, cada celda tiene 4 cifras con formato operación-dirección:

1408 → operación 1 sobre el dato de la dirección 408

La lista de operaciones que entiende un procesador es su juego de instrucciones. Cada familia de procesadores tiene el suyo: un programa para x86 (Intel, AMD) no funciona en un procesador ARM (móviles, Mac actuales) sin traducirlo.

2.7.1 Las fases

La CPU repite sin parar el mismo ciclo para cada instrucción:

  1. Búsqueda (fetch): la UC copia el CP en el RD, la memoria lee esa celda y la instrucción llega por el bus de datos hasta el RI. El CP se incrementa para apuntar a la siguiente instrucción.
  2. Decodificación: el decodificador separa la operación y la dirección del dato.
  3. Ejecución: la UC genera las órdenes: llevar la dirección del dato al RD, leer o escribir en memoria, pedir a la UAL que opere… El resultado queda en el AC o en memoria.
  4. Interrupción (solo si hace falta): antes de empezar la siguiente instrucción, la CPU comprueba si algún periférico ha pedido atención.
Pruébalo

Simulador de CPU: el ejemplo de los apuntes

Pulsa «Siguiente paso» y lee lo que pasa en cada momento. Los registros que cambian se marcan en amarillo y los buses que se usan se iluminan. Al final, abre la traza para ver el estado de los registros tras cada instrucción.

Ejemplo resuelto · Lo que hace el programa del simulador

Juego de instrucciones del ejemplo: 1 = cargar el AC desde memoria, 2 = restar al AC el dato de memoria, 3 = almacenar el AC en memoria. El CP empieza en 250.

InstrucciónCP despuésRIACQué pasa
25025114080009Carga en el AC el dato de 408 (9)
25125224090004Resta al AC el dato de 409: 9 − 5 = 4
25225334090004Guarda el AC en 409, que pasa de 0005 a 0004

En 253 hay un 0000: el programa termina.

En el simulador completo puedes escribir tus propios programas en la memoria y ejecutarlos paso a paso.

2.7.2 Las interrupciones

Imagina que la CPU tuviera que preguntar al teclado mil veces por segundo «¿han pulsado algo?». Perdería muchísimo tiempo. En su lugar, el teclado avisa con una señal de petición de interrupción (IRQ) por el bus de control. Entonces la CPU:

  1. termina la instrucción que estaba ejecutando;
  2. guarda el contexto: el valor del CP y de los registros, para poder volver;
  3. ejecuta la rutina de servicio de ese periférico (por ejemplo, leer la tecla pulsada);
  4. restaura el contexto y sigue con el programa donde lo había dejado.

Si varios periféricos piden atención a la vez, hay que decidir prioridades. Puede hacerse en cadena (daisy chain), donde tiene más prioridad el que está más cerca de la CPU, o con un controlador de interrupciones que recibe todas las peticiones y decide el orden.

2.8 Del hardware al software: niveles de un ordenador

Un ordenador se puede ver como una cebolla: cada capa se apoya en la de debajo y oculta sus detalles a la de arriba.

NivelEjemplosZona
AplicacionesNavegador, LibreOffice, un videojuegoSoftware
Lenguajes de alto nivelProgramas en Python, Java o C
Sistema operativoWindows, Ubuntu, macOS, Android
Lenguaje máquinaLas instrucciones del juego de instrucciones de la CPUFrontera
Transferencia entre registrosRegistros, buses y memoria, como en el simuladorHardware
Circuitos digitalesPuertas, sumadores, biestables, decodificadores
Componentes electrónicosTransistores, resistencias, condensadores (tema 1)

El lenguaje máquina es la frontera entre hardware y software: es lo último que «entiende» el procesador. Todo programa, esté escrito en el lenguaje que esté, acaba traducido a esas instrucciones.

Resumen

  • Los ordenadores son digitales: trabajan con bits (0 y 1). Con n bits hay 2n combinaciones.
  • El hexadecimal abrevia el binario: cada cifra son 4 bits. Hay unidades en base 1000 (kB, MB, GB) y en base 1024 (KiB, MiB, GiB).
  • Las puertas lógicas (NOT, AND, OR, NAND, NOR, XOR, XNOR) se combinan para formar sumadores, registros y, al final, la CPU.
  • Bloques funcionales: CPU (UC, UAL y registros), memoria principal, unidad de E/S y buses.
  • Von Neumann: programa almacenado en una memoria común, acceso por dirección y ejecución secuencial. Harvard: memorias separadas para instrucciones y datos.
  • Buses: datos (bidireccional), direcciones (n líneas → 2n direcciones) y control (órdenes y avisos).
  • Ciclo de instrucción: búsqueda → decodificación → ejecución → (interrupción). Registros clave: CP, RI, RD, RM y AC.

Autoevaluación

No cuenta para la nota. Contesta, corrige y lee las explicaciones.

1. ¿Cuántos bits necesitas como mínimo para representar los 26 pisos de un edificio?

2. El número binario 1111 0001 en hexadecimal es…

3. Una puerta tiene dos entradas y su salida vale 1 solo cuando las dos entradas valen 0. ¿Qué puerta es?

4. ¿Cuál de estas NO es una de las tres ideas clave de Von Neumann?

5. ¿Qué registro guarda la dirección de la siguiente instrucción que se va a ejecutar?

6. Un procesador tiene un bus de direcciones de 24 líneas y cada celda guarda 1 byte. ¿Cuánta memoria puede direccionar?

7. ¿Qué bus es bidireccional?

8. En la fase de búsqueda, ¿qué ocurre justo después de que la instrucción llegue al RI?

9. Un disco duro de 2 TB aparece en Windows como «1,81 TB». ¿Por qué?

10. ¿Qué arquitectura usa el microcontrolador de una placa Arduino Uno?