Estructura de Computadores
Tema 1. Introducción a los computadoresTema 1. Introducción a los computadores
Departamento de InformáticaGrupo de Arquitectura de Computadores, Comunicaciones y Sistemas
UNIVERSIDAD CARLOS III DE MADRID
Contenido
1. ¿Qué es un computador?2. Concepto de estructura y arquitectura3. Elementos constructivos de un computador4. Arquitectura Von Neumann5. Instrucciones máquina. Programación 6. Fases de ejecución de una instrucción
ARCOS-UC3M Estructura de Computadores 2
6. Fases de ejecución de una instrucción7. Parámetros característicos de un computador8. Evolución histórica
¿Qué es un computador?
ARCOS-UC3M Estructura de Computadores 3
?
¿Qué es un computador?
ARCOS-UC3M Estructura de Computadores 4
Industria de los semiconductores
ARCOS-UC3M Estructura de Computadores 5
Fuente: embedded.com
Tipos de procesadores
� Procesadores: 2% de la industria de los semiconductores
ARCOS-UC3M Estructura de Computadores 6
Fuente: embedded.com
de los semiconductores� Procesadores para PC: 2 % de todos
los procesadores� Un coche de tipo medio tiene una
docena de microprocesadores� Un BMW setie 7 tiene más de 65
¿Qué es un computador?
Procesadordatos
Instrucciones
resultados
ARCOS-UC3M Estructura de Computadores 7
Instrucciones
� Máquina destinada a procesar datos.
¿Qué es un computador?
Procesadordatos
Instrucciones
resultados
ARCOS-UC3M Estructura de Computadores 8
Instrucciones
� Desde el punto de vista matemático es una máquina abstracta que evalúa
}{ }{ mnf 1,01,0: →
Estructura y arquitectura
� Estructura� Componentes de un computador� Organización de los componentes
� Arquitectura: atributos visibles para un programador� Juego de instrucciones que ofrece la máquina
ARCOS-UC3M Estructura de Computadores 9
� Juego de instrucciones que ofrece la máquina� Tipo y formato de datos que es capaz de utilizar el
computador� Número y tamaño de los registros� Técnicas y mecanismos de E/S� Técnicas de direccionamiento de la memoria
� Tecnología: cómo se construyen los componentes
Clases de computadores
� Desktop: diseñados para ofrecer un buen rendimiento a un usuario final� Aspectos críticos:
� Precio vs. rendimiento� Rendimiento de gráficos
� Servidores: usados para ejecutar programas de gran tamaño y dar servicio a múltiples usuarios de forma simultánea� Aspectos críticos:
� Tasa de procesamiento: throughput� Disponibilidad� Escalabidilidad
ARCOS-UC3M Estructura de Computadores 10
Clases de computadores
� Empotrados: computador dentro de otro sistema que ejecuta aplicaciones predeterminadas para controlar su funcionamiento (electrodomésticos, mp3, consolas de juegos, etc.) � Aspectos críticos:
� Precio� Precio� Consumo de energía� Rendimiento para una aplicación concreta
ARCOS-UC3M Estructura de Computadores 11
Conceptos de repaso
� Sistema binario� Elementos constructivos de un computador
� Transistores� Puertas lógicas� Principales bloques conbinacionales� Principales bloques conbinacionales� Principales elementos secuenciales
ARCOS-UC3M Estructura de Computadores 12
Sistema binario
� BinarioX = 1 0 1 0 0 1 0 1
... 27 26 25 24 23 22 21 20
� d31d30 ... d1d0 : nº de 32 bits (dígitos binarios)� Valor = d31× 231 + d30 × 230 + ... + d1 × 21 + d0 × 20
� Hexadecimal� HexadecimalY = 0x F 1 F A 8 0
... 165 164 163 162 161 160
� De binario a hexadecimal:� Agrupar de 4 en 4 bits, de derecha a izquierda� Cada 4 bits es el valor del dígito hexadecimal� Ej.: 1 0 1 0 0 1 0 1
ARCOS-UC3M Estructura de Computadores 13
0x A 5
Pregunta
� ¿Cuántos códigos distintos se pueden codificar con 8 bits?
� ¿Cuántos bits hacen falta para representar 512 códigos?
ARCOS-UC3M Estructura de Computadores 14
Transistor
E
A
E
A N-MOS P-MOS
ARCOS-UC3M Estructura de Computadores 15
B B
E funcionamiento
1 Conecta A con B (circuito abierto)
0 No conecta A con B (circuito cerrado)
E funcionamiento
0 Conecta A con B (circuito abierto)
1 No conecta A con B (circuito cerrado)
(valores lógicos)
Puertas lógicas. Inversor (NOT)
E S
V3,3
E S E S
3.3 0 1 0
ARCOS-UC3M Estructura de Computadores 16
E S
0 3.3 0 1
Puertas lógicas. NOR
A B C
0 0 1
0 1 0
1 0 0
1 1 0
ARCOS-UC3M Estructura de Computadores 17
Puertas lógicas. OR
A B C
0 0 0
0 1 1
1 0 1
1 1 1
ARCOS-UC3M Estructura de Computadores 18
Puertas lógicas. NAND
A B C
0 0 1
0 1 1
1 0 1
1 1 0
ARCOS-UC3M Estructura de Computadores 19
Puertas lógicas. AND
A B C
0 0 0
0 1 0
1 0 0
1 1 1
ARCOS-UC3M Estructura de Computadores 20
Bloques constructivos
� Circuitos combinacionales� La salida depende de los valores de entrada� Sin estado
� Circuitos secuenciales� La salida depende de la entrada y del estado actual
ARCOS-UC3M Estructura de Computadores 21
� La salida depende de la entrada y del estado actual� Almacenan información
Decodificador
� N entradas, 2N salidas
ARCOS-UC3M Estructura de Computadores 22
Multiplexor
� Selecciona con n bits, 2n entradas
A B C D
ARCOS-UC3M Estructura de Computadores 23
A B C D
MUX S1S0
S
Elementos de memoria
Biestables R-S
� Elemento que almacena un bit
ARCOS-UC3M Estructura de Computadores 24
Elementos de memoria
Biestables D
� Elemento que almacena un bit
ARCOS-UC3M Estructura de Computadores 25
Q
Q
C
D Q
C
Elementos de memoria
Registro
� Elemento que almacena un conjunto de bits
ARCOS-UC3M Estructura de Computadores 26
Esquema de un registro
Registro
Entrada
Carga
ARCOS-UC3M Estructura de Computadores 27
Registro Carga
Salida
Memoria
••••••••
k = 2n
posiciones
Espacio de direcciones:Número de posiciones
ARCOS-UC3M Estructura de Computadores 28
••••••••••••
posiciones
m bits
Número de posiciones
Tamaño de cada posición:Número de bits por posición
Componentes de un computador
ARCOS-UC3M Estructura de Computadores 29
Procesador Memoriaprincipal
Módulo de E/S Módulo de E/S
Periférico Periférico
Bus de controlBus de datos
Bus de direcciones
Computador von Neumann
� Máquina capaz de ejecutar una serie de instrucciones elementales: instrucciones máquina� Instrucciones almacenadas en � Instrucciones almacenadas en
memoria � Leídas � Ejecutadas
ARCOS-UC3M Estructura de Computadores 30
Arquitectura Von Neumann
Procesador Memoriaprincipal
Bus de controlBus de datos
ARCOS-UC3M Estructura de Computadores 31
Módulo de E/S Módulo de E/S
Periférico Periférico
Bus de datos
Bus de direcciones
Memoria
Procesador Memoriaprincipal
Bus de control
Almacena:
� instrucciones
� datos
ARCOS-UC3M Estructura de Computadores 32
Módulo de E/S Módulo de E/S
Periférico Periférico
Bus de controlBus de datos
Bus de direcciones
Memoria
Memoria
dirección Dato/instrucción
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
MAR MBR
ARCOS-UC3M Estructura de Computadores 33
Memoria
L E
MAR MBR
Registro de direcciones de memoria Registro de datos de memoria
Procesador
Procesador
Memoriaprincipal
Registros
Unidad decontrol
ALU
Estructura que almacena un conjunto de bits
Realiza las operaciones
Ejecuta las instrucciones
ARCOS-UC3M Estructura de Computadores 34
Módulo de E/S Módulo de E/S
Periférico Periférico
Bus de controlBus de datos
Bus de direcciones
Registros especiales
Procesador
Memoriaprincipal
Registros
Unidad decontrol
ALU
PC: contador de programa
RI: registro de instrucción
ARCOS-UC3M Estructura de Computadores 35
Módulo de E/S Módulo de E/S
Periférico Periférico
Bus de controlBus de datos
Bus de direcciones
Unidad aritmético-lógica
� Realiza operaciones elementales sobre los datos:� Operaciones aritméticas� Operaciones lógicas
ARCOS-UC3M Estructura de Computadores 36
Programa
� Secuencia consecutiva de instrucciones máquina
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
ARCOS-UC3M Estructura de Computadores 37
Programa
� Secuencia consecutiva de instrucciones máquina
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
temp = v[k];
v[k] = v[k+1];
v[k+1] = temp;
ARCOS-UC3M Estructura de Computadores 38
Ejecución de un programa
Disco
Memoria principal
ARCOS-UC3M Estructura de Computadores 39
Fichero ejecutable
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Procesador
PCRI
Ejecución de un programa
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Disco
Memoria principal
ARCOS-UC3M Estructura de Computadores 40
Fichero ejecutable
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Procesador
PCRI
Ejecución de un programa
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Disco
Memoria principal
ARCOS-UC3M Estructura de Computadores 41
Fichero ejecutable
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Procesador
PCRI
Ejecución de un programa
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Disco
Memoria principal
ARCOS-UC3M Estructura de Computadores 42
Fichero ejecutable
00001001110001101010111101011000
10101111010110000000100111000110
11000110101011110101100000001001
01011000000010011100011010101111
Procesador
PCRI 00001001110
Ejemplo
� Conjunto de instrucciones con las siguientes características:� Tamaño de una posición de memoria: 16 bits� Tamaño de la instrucción: 16 bits� Código de operación: 3 bits
� ¿Cuántas instrucciones diferentes puede tener este
ARCOS-UC3M Estructura de Computadores 43
� ¿Cuántas instrucciones diferentes puede tener este computador?
� Número de registros de propósito general: 4� Identificadores simbólicos:
� R0 � R1 � R2 � R3
� ¿Cuántos bits se necesitan para representar estos 4 registros?
Ejemplo
� Conjunto de instrucciones con las siguientes características:� Tamaño de una posición de memoria: 16 bits� Tamaño de la instrucción: 16 bits� Código de operación: 3 bits
� ¿Cuántas instrucciones diferentes puede tener este
ARCOS-UC3M Estructura de Computadores 44
� ¿Cuántas instrucciones diferentes puede tener este computador? 8 instrucciones
� Número de registros de propósito general: 4� Identificadores simbólicos:
� R0 � R1 � R2 � R3
� ¿Cuántos bits se necesitan para representar estos 4 registros?� 2 bits
Ejemplo. Juego de instrucciones
Instrucción Descripción
000EFABCDXXXXXXX Suma el registro AB con el CD y deja el resultado en EF
001AB00000000101 Almacena en el registro AB el valor 00000000101
010AB00000001001 Almacena en el registro AB el valor almacenado en la posición de memoria 00000001001posición de memoria 00000001001
011AB00000001001 Almacena en la posición de memoria 00000001001 el contenido del registro AB
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
101ABCD000001001 Si el contenido del registro AB es igual al del registro CDse salta a ejecutar la instrucción almacenada en 000001001
ARCOS-UC3M Estructura de Computadores 45
Siendo A,B, C, D, E, F = 0 o 1
Formato de una instrucción máquina
001 AB 00000000101
ARCOS-UC3M Estructura de Computadores 46
Formato de una instrucción máquina
001 AB 00000000101
ARCOS-UC3M Estructura de Computadores 47
Códigode operación
Formato de una instrucción máquina
001 AB 00000000101
ARCOS-UC3M Estructura de Computadores 48
Códigode operación
OperandosRegistros
Direcciones de memoria
Números
Ejemplo. Juego de instrucciones
Instrucción Descripción
000010010XXXXXXX Suma el registro 00 con el 10 y deja el resultado en 01
0010100000000101 Almacena en el registro 01 el valor 00000000101
0100100000001001 Almacena en el registro 01 el valor almacenado en la 0100100000001001 Almacena en el registro 01 el valor almacenado en la posición de memoria 00000001001
0110100000001001 Almacena en la posición de memoria 00000001001 el contenido del registro 01
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
1010100000001001 Si el contenido del registro 01 es igual al del registro 00se salta a ejecutar la instrucción almacenada en 000001001
ARCOS-UC3M Estructura de Computadores 49
Ejemplo
� Instrucción que almacena un 5 en el registro 00
� Instrucción que almacena un 7 en el registro 01� Instrucción que almacena un 7 en el registro 01
� Instrucción que suma el contenido del registro 00 y el registro 01 y deja el resultado en el registro 10
� Instrucción que almacena el resultado anterior en la posición de memoria 1027 (en decimal)
ARCOS-UC3M Estructura de Computadores 50
Ejemplo
� Instrucción que almacena un 5 en el registro 00
� Instrucción que almacena un 7 en el registro 01
Instrucción Descripción
000010010XXXXXXX Suma el registro 00 con el 10 y deja el resultado en 01
0010100000000101 Almacena en el registro 01 el valor 00000000101
0100100000001001 Almacena en el registro 01 el valor almacenado en la posición de memoria 00000001001
0110100000001001 Almacena en la posición de memoria 00000001001 el contenido del registro 01
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
1010100000001001 Si el contenido del registro 01 es igual al del registro 00 se salta a ejecutar la instrucción almacenada en 000001001
� Instrucción que almacena un 7 en el registro 01
� Instrucción que suma el contenido del registro 00 y el registro 01 y deja el resultado en el registro 10
� Instrucción que almacena el resultado anterior en la posición de memoria 1027 (en decimal)
ARCOS-UC3M Estructura de Computadores 51
Ejemplo
Solución
� Instrucción que almacena un 5 en el registro 00� 0010000000000101
� Instrucción que almacena un 7 en el registro 01
Instrucción Descripción
000010010XXXXXXX Suma el registro 00 con el 10 y deja el resultado en 01
0010100000000101 Almacena en el registro 01 el valor 00000000101
0100100000001001 Almacena en el registro 01 el valor almacenado en la posición de memoria 00000001001
0110100000001001 Almacena en la posición de memoria 00000001001 el contenido del registro 01
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
1010100000001001 Si el contenido del registro 01 es igual al del registro 00 se salta a ejecutar la instrucción almacenada en 000001001
� Instrucción que almacena un 7 en el registro 01� 0010100000000111
� Instrucción que suma el contenido del registro 00 y el registro 01 y deja el resultado en el registro 10� 000100001XXXXXXX
� Instrucción que almacena el resultado anterior en la posición de memoria 1027 (en decimal)� 0111010000000011
ARCOS-UC3M Estructura de Computadores 52
Ejemplo de programa
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
ARCOS-UC3M Estructura de Computadores 53
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejemplo de programa
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
Dirección de inicio
ARCOS-UC3M Estructura de Computadores 54
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Inicio de la ejecución del programa
PC
RI
0001
000100
?
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
?
ARCOS-UC3M Estructura de Computadores 55
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000100
ARCOS-UC3M Estructura de Computadores 56
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000100
000100
ARCOS-UC3M Estructura de Computadores 57
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000100
000100
ARCOS-UC3M Estructura de Computadores 58
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000100
000100 0010000000000000
ARCOS-UC3M Estructura de Computadores 59
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000101
000100 0010000000000000
ARCOS-UC3M Estructura de Computadores 60
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000101
000100 0010000000000000
0010000000000000
ARCOS-UC3M Estructura de Computadores 61
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000101
000100 0010000000000000
0010000000000000
ARCOS-UC3M Estructura de Computadores 62
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000101
000100 0010000000000000
0010000000000000
ARCOS-UC3M Estructura de Computadores 63
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Ejecución de la instrucción
0010000000000000 RI
R0 0000000000
ARCOS-UC3M Estructura de Computadores 64
Se carga en R0 (00) el valor 0Código de operación
Instrucción Descripción
000010010XXXXXXX Suma el registro 00 con el 10 y deja el resultado en 01
0010100000000101 Almacena en el registro 01 el valor 00000000101
0100100000001001 Almacena en el registro 01 el valor almacenado en la posición de memoria 00000001001
0110100000001001 Almacena en la posición de memoria 00000001001 el contenido del registro 01
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
1010100000001001 Si el contenido del registro 01 es igual al del registro 00 se salta a ejecutar la instrucción almacenada en 000001001
Ejecución de la instrucción
0100100000001001 RI
R1 MP[00000001001]
Instrucción Descripción
000010010XXXXXXX Suma el registro 00 con el 10 y deja el resultado en 01
0010100000000101 Almacena en el registro 01 el valor 00000000101
0100100000001001 Almacena en el registro 01 el valor almacenado en la posición de memoria 00000001001
0110100000001001 Almacena en la posición de memoria 00000001001 el contenido del registro 01
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
1010100000001001 Si el contenido del registro 01 es igual al del registro 00 se salta a ejecutar la instrucción almacenada en 000001001
ARCOS-UC3M Estructura de Computadores 65
R1 MP[00000001001]
00000001001 0000000000000101
Dirección Contenido
Se carga en R1 el contenido de la posición de memoria00000001001
Ejecución de la instrucción
1000000000001000 RI
Instrucción Descripción
000010010XXXXXXX Suma el registro 00 con el 10 y deja el resultado en 01
0010100000000101 Almacena en el registro 01 el valor 00000000101
0100100000001001 Almacena en el registro 01 el valor almacenado en la posición de memoria 00000001001
0110100000001001 Almacena en la posición de memoria 00000001001 el contenido del registro 01
1000000000001001 Se salta a ejecutar la instrucción almacenada en la posición de memoria 0000000001001
1010100000001001 Si el contenido del registro 01 es igual al del registro 00 se salta a ejecutar la instrucción almacenada en 000001001
ARCOS-UC3M Estructura de Computadores 66
PC 0000000001000
Se modifica el PC con la dirección 0000000001000
de forma que la siguiente instrucción a ejecutar es la que se encuentra en 0000000001000
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000101
000100 0010000000000000
0010000000000000
ARCOS-UC3M Estructura de Computadores 67
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Fases en la ejecución de una instrucción
� Lectura de la instrucción (ciclo de fetch)� MAR PC� Lectura� MBR Memoria� PC PC + 1� RI MBR
PC
MAR MBR
RI
000101
000100 0010000000000000
0010000000000000
ARCOS-UC3M Estructura de Computadores 68
� RI MBR
� Decodificación de la instrucción
� Ejecución de la instrucción� Volver a fetch
000100 0010000000000000
Dirección Contenido
Memoria
Ejecución del programa
PC
RI
0001
000100
?
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
?
ARCOS-UC3M Estructura de Computadores 69
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
000100
?
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010000000000000
ARCOS-UC3M Estructura de Computadores 70
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
000101
?
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010000000000000
ARCOS-UC3M Estructura de Computadores 71
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC + 1
Ejecución del programa
PC
RI
0001
000101
?
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010000000000000
ARCOS-UC3M Estructura de Computadores 72
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
000101
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010000000000000
00000000000
ARCOS-UC3M Estructura de Computadores 73
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejecución
R0 00000000000
Ejecución del programa
PC
RI
0001
000101
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010000000000000
00000000000
ARCOS-UC3M Estructura de Computadores 74
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
000101
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010100000000100
00000000000
ARCOS-UC3M Estructura de Computadores 75
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
000110
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010100000000100
00000000000
ARCOS-UC3M Estructura de Computadores 76
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC +1
Ejecución del programa
PC
RI
0001
000110
?
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010100000000100
00000000000
ARCOS-UC3M Estructura de Computadores 77
011011
?
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
000110
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010100000000100
00000000000
ARCOS-UC3M Estructura de Computadores 78
011011
00000000100
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejecución
R1 00000000100
Ejecución del programa
PC
RI
0001
000110
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0010100000000100
00000000000
ARCOS-UC3M Estructura de Computadores 79
011011
00000000100
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
000110
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011000000000001
00000000000
ARCOS-UC3M Estructura de Computadores 80
011011
00000000100
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
000111
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011000000000001
00000000000
ARCOS-UC3M Estructura de Computadores 81
011011
00000000100
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC +1
Ejecución del programa
PC
RI
0001
000111
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011000000000001
00000000000
ARCOS-UC3M Estructura de Computadores 82
011011
00000000100
?
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
000111
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011000000000001
00000000000
ARCOS-UC3M Estructura de Computadores 83
011011
00000000100
00000000001
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejecución
R2 00000000001
Ejecución del programa
PC
RI
0001
000111
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011000000000001
00000000000
ARCOS-UC3M Estructura de Computadores 84
011011
00000000100
00000000001
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
000111
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011100000000000
00000000000
ARCOS-UC3M Estructura de Computadores 85
011011
00000000100
00000000001
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
001000
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011100000000000
00000000000
ARCOS-UC3M Estructura de Computadores 86
011011
00000000100
00000000001
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC +1
Ejecución del programa
PC
RI
0001
001000
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011100000000000
00000000000
ARCOS-UC3M Estructura de Computadores 87
011011
00000000100
00000000001
?
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
001000
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011100000000000
00000000000
ARCOS-UC3M Estructura de Computadores 88
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejecución
R3 00000000000
Ejecución del programa
PC
RI
0001
001000
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
0011100000000000
00000000000
ARCOS-UC3M Estructura de Computadores 89
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
001000
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
1010001000001100
ARCOS-UC3M Estructura de Computadores 90
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
001001
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
1010001000001100
ARCOS-UC3M Estructura de Computadores 91
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC +1
Ejecución del programa
PC
RI
0001
001001
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
1010001000001100
ARCOS-UC3M Estructura de Computadores 92
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
001001
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
1010001000001100
ARCOS-UC3M Estructura de Computadores 93
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
EjecuciónSi el contenido del registro 01 es igual
al del registro 00 se salta a ejecutar la
instrucción almacenada en 000001100
Ejecución del programa
PC
RI
0001
001001
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
1010001000001100
ARCOS-UC3M Estructura de Computadores 94
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
001001
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0001111100000000
ARCOS-UC3M Estructura de Computadores 95
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
001010
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0001111100000000
ARCOS-UC3M Estructura de Computadores 96
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC + 1
Ejecución del programa
PC
RI
0001
001010
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0001111100000000
ARCOS-UC3M Estructura de Computadores 97
011011
00000000100
00000000001
00000000000
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
001010
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0001111100000000
ARCOS-UC3M Estructura de Computadores 98
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejecución
R3 R3 + R2
Ejecución del programa
PC
RI
0001
001010
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0001111100000000
ARCOS-UC3M Estructura de Computadores 99
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
001010
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0000000100000000
ARCOS-UC3M Estructura de Computadores 100
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
001011
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0000000100000000
ARCOS-UC3M Estructura de Computadores 101
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC +1
Ejecución del programa
PC
RI
0001
001011
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000000
0000000100000000
ARCOS-UC3M Estructura de Computadores 102
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
001011
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
0000000100000000
ARCOS-UC3M Estructura de Computadores 103
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Ejecución
R0 R0 + R2
Ejecución del programa
PC
RI
0001
001011
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
0000000100000000
ARCOS-UC3M Estructura de Computadores 104
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Ejecución del programa
PC
RI
0001
001011
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
1000000000001000
ARCOS-UC3M Estructura de Computadores 105
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
Lectura de la Inst.
Ejecución del programa
PC
RI
0001
001100
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
1000000000001000
ARCOS-UC3M Estructura de Computadores 106
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Fetch
PC PC +1
Ejecución del programa
PC
RI
0001
001100
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
1000000000001000
ARCOS-UC3M Estructura de Computadores 107
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Decodificación
Ejecución del programa
PC
RI
0001
001100
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
1000000000001000
ARCOS-UC3M Estructura de Computadores 108
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
EjecuciónSe salta a ejecutar la instrucción
almacenada en la posición de memoria 0000000001000
Ejecución del programa
PC
RI
0001
0001000
00000000100
000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
00000000001
1000000000001000
ARCOS-UC3M Estructura de Computadores 109
011011
00000000100
00000000001
00000000001
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
EjecuciónPC 0000000001000
Ejecución del programa
PC
RI
0001
0001000 000100
000101
000110
000111
0010000000000000
0010100000000100
0011000000000001
0011100000000000
Dirección Contenido
1000000000001000
00000000001
00000000100
ARCOS-UC3M Estructura de Computadores 110
011011
000111
001000
001001
001010
001011
001100
0011100000000000
1010001000001100
0001111100000000
0000000100000000
1000000000001000
0111100000100000
Continúa la ejecución
00000000100
00000000001
00000000001
Algoritmo del programa anterior
i=0;s = 0;while (i < 4){s = s + 1;i = i + 1;
ARCOS-UC3M Estructura de Computadores 111
i = i + 1;}
El programa almacena en la posición de memoria 00000100000
el valor: 1 + 1 + 1 + 1
Programa en lenguaje ensamblador
li R0, 0li R1, 4li R2, 1li R3, 0
bucle: beq R0, R1, fin
ARCOS-UC3M Estructura de Computadores 112
bucle: beq R0, R1, finadd R3, R3, R2add R0, R0, R2b bucle
fin: sw R3, 100000
Secuencia de ejecución de instrucciones
Ejecución de
ARCOS-UC3M Estructura de Computadores 113
Lectura de la instrucción
Arranque
Parada
DecodificaciónEjecución dela instrucción
Microprocesador
� Incorpora las funciones de la CPU de un computador en un único circuito integrado
ARCOS-UC3M Estructura de Computadores 114
Ley de Moore
� El número de transistores por
ARCOS-UC3M Estructura de Computadores 115
� El número de transistores por chip se dobla cada dos años.
Ley de Moore
� Doblar la densidad implica reducir lasdimensiones de sus elementos en un 30%
� En 1971 el Intel 4004 tenía 2300 transistorescon tamaños de 10 micrometros
� Hoy en día se consiguen chips con
ARCOS-UC3M Estructura de Computadores 116
� Hoy en día se consiguen chips contransistores de < 20 nanometros
� Para cumplir la ley de Moore se necesita tecnología cuyo precio se dobla cada 4.4 años
Intel 4004 (1971)
� Usado en calculadoras� Tecnología de 10000 nm� 2300 transitores� 108 KHz� Datos de 4 bits� Datos de 4 bits
ARCOS-UC3M Estructura de Computadores 117
Intel Core i7 (2009)
� Usados en desktop y servidores� Tecnología de 45 nm� 774M de transisotres� 3.2 GHz a 3.6 GHz� Datos de 128 bits� Datos de 128 bits� 4 instrucciones por ciclo� Tres niveles de caché� Cuatro núcleos
ARCOS-UC3M Estructura de Computadores 118
Proceso de fabricación
ARCOS-UC3M Estructura de Computadores 119
Evolución de los microprocesadores de
Intel
ARCOS-UC3M Estructura de Computadores 120
Fuente: Communications of the ACM
Rendimiento de las memorias
ARCOS-UC3M Estructura de Computadores 121
Fuente: Communications of the ACM
Rendimiento de la memoria
ARCOS-UC3M Estructura de Computadores 122
Fuente: Communications of the ACM
Evolución de las cachés
ARCOS-UC3M Estructura de Computadores 123
Fuente: Communications of the ACM
Análisis del rendimiento de los
procesadores
ARCOS-UC3M Estructura de Computadores 124
Fuente: Communications of the ACM
Diferentes arquitecturas multicore
ARCOS-UC3M Estructura de Computadores 125
Fuente: Communications of the ACM
Movimiento de datos y consumo de energía
ARCOS-UC3M Estructura de Computadores 126
Fuente: Communications of the ACM
Eficiencia energética y voltaje
ARCOS-UC3M Estructura de Computadores 127
Fuente: Communications of the ACM
Mejoras en la tecnología
� Memoria� Capacidad de DRAM: 2x / 2 años (desde 96);
64x en la última decada� Procesador
� Velocidad: 2x / 1.5 años (desde 85); � Velocidad: 2x / 1.5 años (desde 85); 100X en la última decada.
� Discos � Capacidad: 2x / 1 año (desde 97)
250X en la última decada.
ARCOS-UC3M Estructura de Computadores 128
Parámetros característicos de un
computador
� Ancho de palabra� Memoria principal o Memoria RAM� Memoria auxiliar� Ancho de banda� Ancho de banda� MIPS� MFLOPS
ARCOS-UC3M Estructura de Computadores 129
Prefijos
Nombre Abr Factor SI
Kilo K 210 = 1,024 103 = 1,000
Mega M 220 = 1,048,576 106 = 1,000,000
Giga G 230 = 1,073,741,824 109 = 1,000,000,000
Tera T 240 = 1,099,511,627,776 1012 = 1,000,000,000,000
Peta P 250 = 1,125,899,906,842,624 1015 = 1,000,000,000,000,000
Exa E 260 = 1,152,921,504,606,846,976 1018 = 1,000,000,000,000,000,000
ARCOS-UC3M Estructura de Computadores 130
Exa E 2 = 1,152,921,504,606,846,976 10 = 1,000,000,000,000,000,000
Zetta Z 270 = 1,180,591,620,717,411,303,424 1021 = 1,000,000,000,000,000,000,000
Yotta Y 280 = 1,208,925,819,614,629,174,706,176
1024 = 1,000,000,000,000,000,000,000,000
Ejercicio
� ¿Cuántos bytes almacena un disco duro de 250 GB ?
ARCOS-UC3M Estructura de Computadores 131
Prefijos
Nombre Abr Factor SI
Kilo K 210 = 1,024 103 = 1,000
Mega M 220 = 1,048,576 106 = 1,000,000
Giga G 230 = 1,073,741,824 109 = 1,000,000,000
Tera T 240 = 1,099,511,627,776 1012 = 1,000,000,000,000
Peta P 250 = 1,125,899,906,842,624 1015 = 1,000,000,000,000,000
Exa E 260 = 1,152,921,504,606,846,976 1018 = 1,000,000,000,000,000,000
ARCOS-UC3M Estructura de Computadores 132
� 1 KB = 1024 bytes, pero en el SI es 1000 bytes� Los fabricantes de disco duros y en telecomunicaciones emplea el SI.
� Un disco duro de 30 GB almacena 30 x 109 bytes� Una red de 1 Mbit/s transfiere 106 bps.
Exa E 2 = 1,152,921,504,606,846,976 10 = 1,000,000,000,000,000,000
Zetta Z 270 = 1,180,591,620,717,411,303,424 1021 = 1,000,000,000,000,000,000,000
Yotta Y 280 = 1,208,925,819,614,629,174,706,176
1024 = 1,000,000,000,000,000,000,000,000
Evolución histórica
� http://www.computerhope.com/history/� http://www.computerhistory.org/� http://www.computersciencelab.com/ComputerHistory/History
.htm� Museo Histórico de la Informática (FI-UPM)
ARCOS-UC3M Estructura de Computadores 133
� Museo Histórico de la Informática (FI-UPM)� Museo de Informática “García-Santesmases” (UCM)� Buscar en google: “Computer history”