2010 1M.A. Zapata, A. Francés, J.C.Ciria
Componentes del ordenador
Bus del sistema
Unidad Central de Proceso (CPU)
8
Memoria Principal
Periférico1
Periféricon
Memoria Secundaria
El bus es un sistema digital que transfiere datos entre los componentes de un ordenador entre ordenadores
2010 2M.A. Zapata, A. Francés, J.C.Ciria
Bus del sistema
Memoria Principal
???? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ????
000000010010001101000101011001111000100110101011
Memoria Secundaria
Periférico1
Periféricon
CP (Contador de Programa) Dirección de memoria de la siguiente instrucción que debe ser ejecutada.
Ac (Acumulador): registro que se encuentra en la ALU, donde se almacena el primer dato para el caso de operaciones binarias, y el resultado de la operación de la ALU.
DM: Dirección de memoria de la que se quiere leer, o donde se quiere escribir.
RI (Registro de Instrucción): guarda la instrucción que está siendo ejecutada
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
CP
DM
RI
Ac
ALU
2010 3M.A. Zapata, A. Francés, J.C.Ciria
1. Cargar el programa
Bus del sistema
Memoria Principal Memoria Secundaria
Periférico1
Periféricon
???? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ???????? ????
000000010010001101000101011001111000100110101011
0001 01110001 10000100 01111000 10000101 10011100 10011111 0000
???? ???????? ???????? ???????? ???????? ????
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
CP
DM
RI
Ac
ALU
2010 4M.A. Zapata, A. Francés, J.C.Ciria
¿Qué significa el programa? (i)
Diccionario código máquina-castellano
0001: leer1100: escribir (en pantalla)
1000: sumar1001: restar1010: multiplicar1011: dividir
0100: cargar (en el acumulador)0101: almacenar (en memoria principal)
0001 01110001 10000100 01111000 10000101 10011100 10011111 0000???? ???????? ???????? ???????? ????
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
almacenar
leerleercargarsumar
escribirfin
2010 5M.A. Zapata, A. Francés, J.C.Ciria
¿Qué significa el programa? (y ii)
0001 01110001 10000100 01111000 10000101 10011100 10011111 0000???? ???????? ???????? ???????? ????
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
almacenar
leerleercargarsumar
escribirfin
El programa utiliza variables, que también se almacenan en la memoria principal
C
ABAB
C
C
AB
2010 6M.A. Zapata, A. Francés, J.C.Ciria
2. Inicializar el Contador de Programa (CP)
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
DM
RI
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
Memoria Principal
...
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
Memoria Secundaria
Periférico1
Periféricon
CP 0000
2010 7M.A. Zapata, A. Francés, J.C.Ciria
3. Leer de memoria la dirección indicada por CP
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
DM
RI
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
Memoria Principal
...
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
Memoria Secundaria
Periférico1
Periféricon
CP 0000
2010 8M.A. Zapata, A. Francés, J.C.Ciria
4. Almacenar en RI y DM la instrucción leída
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
Memoria Principal
...
Memoria Secundaria
Periférico1
Periféricon
CP 0000
DM
RI
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
leer
A
2010 9M.A. Zapata, A. Francés, J.C.Ciria
5. Incrementar en 1 el CP
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
Memoria Principal
...
Memoria Secundaria
Periférico1
Periféricon
CP 0000
DM
RI
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
leer
A
0001
2010 10M.A. Zapata, A. Francés, J.C.Ciria
6. Ejecución de la instrucción leída
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
Periférico1
CP 0000
DM
RI leer
A
0001
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
Periféricon 10
2010 11M.A. Zapata, A. Francés, J.C.Ciria
¿ y ahora?
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
Periférico1
CP 0000
DM
RI leer
A
0001
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
Periféricon 10
Ha terminado de ejecutarse la primera instrucción.Como no es instrucción de fin, se vuelve otra vez al paso 3 (leer de memoria la celda que indica CP)
2010 12M.A. Zapata, A. Francés, J.C.Ciria
Ejecución de la segunda instrucción
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
Periférico1
CP 0000
DM
RI
0001 0010
10
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
10 15
Periféricon
leer
A leer
B
2010 13M.A. Zapata, A. Francés, J.C.Ciria
Ejecución de la tercera instrucción
Bus del sistema
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
ALU
8
8
8
4
4
4
4
...
Memoria Secundaria
Periférico1
CP 0000
DM
RI
0010 0011
10
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
10 15
Periféricon
leer
B cargar
A
Ac10
2010 14M.A. Zapata, A. Francés, J.C.Ciria
Ejecución de la cuarta instrucción
Bus del sistema
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
Periférico1
CP 0000
DM
RI
0011 0100
10
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
10 15
Periféricon
cargar
A sumar
B
Ac1025
ALU
2010 15M.A. Zapata, A. Francés, J.C.Ciria
Ejecución de la quinta instrucción
Bus del sistema
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
Periférico1
CP 0000
DM
RI
0100 0101
10
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
10 15
Periféricon
sumar
Balmacenar
C
Ac10
ALU
25
25
2010 16M.A. Zapata, A. Francés, J.C.Ciria
Ejecución de la sexta instrucción
Bus del sistema
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
CP 0000
DM
RI
0101 0110
10
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
10 15
Periféricon
almacenar
C escribir
C
Ac10
ALU
25
25
Periférico1
25
2010 17M.A. Zapata, A. Francés, J.C.Ciria
Final del programa
Bus del sistema
Unidad Central de Proceso (CPU)
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
4
4
...
Memoria Secundaria
CP 0000
DM
RI
0110 0111
10
Memoria Principal
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
10 15
Periféricon
escribir
C fin
0000
Ac10
ALU
25
25
Periférico1
25
2010 18M.A. Zapata, A. Francés, J.C.Ciria
Fin del programa
2010 19M.A. Zapata, A. Francés, J.C.Ciria
3. Leer de memoria la dirección indicada por CP
Bus del sistema
Unidad Central de Proceso (CPU)
Ac
DM
RI
ALU
Unidadde
Control
Señalesde
controlinternas
8
8
8
4
4
44
Memoria Principal
...
leer Aleer Bcargar Asumar Balmacenar Cescribir Cfin 0000
???? ???????? ???????? ???????? ???????? ????
0000000100100011010001010110
ABC
10101011
Memoria Secundaria
Periférico1
Periféricon
CP 0000
A
2010 20M.A. Zapata, A. Francés, J.C.Ciria
0001
0001
0100
1000
0101
1100
1111
0111
1000
0111
1000
1001
1001
0000
????
????
????
????
????
????
0001 01110001 10000100 01111000 10000101 10011100 10011111 0000
???? ???????? ???????? ???????? ???????? ????
2010 21M.A. Zapata, A. Francés, J.C.Ciria
Paso 1: cargar el programa en la RAM
25ALU
UC
Microprocesador
RAM
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
????
????
????
????
????
????
????
????
????
????
????
????
????
????
????
????
????
????
????
????
0001
0001
0100
1000
0101
1100
1111
0111
1000
0111
1000
1001
1001
0000
????
????
????
????
????
????
0001000101001000010111001111
0111100001111000100110010000
2010 22M.A. Zapata, A. Francés, J.C.Ciria
???? ????
???? ????
0000
LeerLeer
Copiar
Sumar
Almacenar
Escribir
Fin
0000
0001
0010
0011
0100
0101
0110
A
A:
A
B
B:
B
C
C:
C
10
Leer
???? ????
ALU
UC
2010 23M.A. Zapata, A. Francés, J.C.Ciria
???? ????
0000
Leer
LeerCopiar
Sumar
Almacenar
Escribir
Fin
0000
0001
0010
0011
0100
0101
0110
A
A:
AB
B:
B
C
C:
C
15
10
Leer
???? ????
ALU
UC
2010 24M.A. Zapata, A. Francés, J.C.Ciria
???? ????
0000
Leer
Leer
CopiarSumar
Almacenar
Escribir
Fin
0000
0001
0010
0011
0100
0101
0110
A
A:
AB
B:
B
C
C:
C
15
1010
CopiarALU
UC
2010 25M.A. Zapata, A. Francés, J.C.Ciria
???? ????
0000
Leer
Leer
Copiar
SumarAlmacenar
Escribir
Fin
0000
0001
0010
0011
0100
0101
0110
A
A:
A
B
B:
BC
C:
C
15
1010
10
15
25Sumar
ALU
UC
2010 26M.A. Zapata, A. Francés, J.C.Ciria
0000
Leer
Leer
Copiar
SumarAlmacenarEscribir
Fin
0000
0001
0010
0011
0100
0101
0110
A
A:
A
B
B:
BC
C:
C
15
1010
25
15
2525Almacenar
???? ????
ALU
UC
2010 27M.A. Zapata, A. Francés, J.C.Ciria
0000
Leer
Leer
Copiar
SumarAlmacenar
EscribirFin
0000
0001
0010
0011
0100
0101
0110
A
A:
A
B
B:
BC
C:
C
15
1010
25
15
2525
2525
EscribirALU
UC
2010 28M.A. Zapata, A. Francés, J.C.Ciria
0000
Leer
Leer
Copiar
SumarAlmacenar
EscribirFin
0000
0001
0010
0011
0100
0101
0110
A
A:
A
B
B:
BC
C:
C
15
1010
25
15
2525
25
25
ALU
UC
2010 29M.A. Zapata, A. Francés, J.C.Ciria
El ordenador en acción
25
Microprocesador
RAMPeriféricos de entrada, salida
el bus es un sistema digital que transfiere datos entre los componentes de un ordenador entre ordenadores
2010 30M.A. Zapata, A. Francés, J.C.Ciria
Unidad Central de Proceso (CPU)
PP CP
Ac
DM
RI
ALU
Unidadde
Control
Señalesde
controlinternas
Subbus de controlSubbus de datos
Subbus de direcciones
Bus del sistema
16
16
16
16
12
12
12
2
44
Memoria Principal
...Periférico
1Periférico
n
. . .
0000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 0000
000000010010001101000101011001111000100110101011
Memoria Secundaria
Leyenda
datos e instrucciones
señales de control
código de instrucciones
direcciones de celda o periférico
2010 31M.A. Zapata, A. Francés, J.C.Ciria
Unidad Central de Proceso (CPU)
PP CP
Ac
DM
RI
ALU
Unidadde
Control
Señalesde
controlinternas
Subbus de controlSubbus de datos
Subbus de direcciones
Bus del sistema
16
16
16
16
12
12
12
2
44
Memoria Principal
16 bits0000
123
325
212-2
212-1
...Periférico
0Periférico
1Periférico
n
. . .
Leyenda
datos e instrucciones
señales de control
código de instrucciones
. . .
. . .+172
0000 0000
2010 32M.A. Zapata, A. Francés, J.C.Ciria
0001 01110001 10000100 01111000 10000101 10011100 10011111 0000???? ???????? ???????? ???????? ????
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
2010 33M.A. Zapata, A. Francés, J.C.Ciria
Variables
???? ????
???? ????
???? ????
0111
1000
0111
1000
1001
1001
0000
Leer
Leer
Copiar
Sumar
Almacenar
Escribir
Fin
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
A
A:
A
B
B:
B
C
C:
C
El programa utiliza variables, que también se almacenan en la memoria principal