Вы находитесь на странице: 1из 3

EJERCICIOS CORTOS DE CPU Y LENGUAJE MQUINA

1.- Indicar qu est mal en las siguientes instrucciones ensamblador del 68000.
?? MOVE Temp, #4
?? ADD.B #1,A3
?? CMP.L D0,#9
?? MOVE.B #500,D5
?? ADD.W +(A2),D3
?? BEQ.B Bucle
2.- Indicar tres aspectos de la arquitectura de un ordenador que pueden influir en la
velocidad de ejecucin de una instruccin.
3.- Indicar los valores que toman las seales D15-D0, A1-A7, UDS, LDS, R/W del
68000 al ejecutar las siguientes instrucciones.
?? ADD.B D1,$0034
?? MOVE.B #$0034,D2
4.- Calcular la longitud mnima, expresada en octetos, que puede tener el cdigo
mquina correspondiente a la instruccin MOVE.B D5,$704A0A del 68000. Razonar
la respuesta.
5.- Se quiere cargar en una memoria direccin de memoria el valor 1234. Cul de las
siguientes directivas del ensamblador 68000 es la correcta?
?? DC.B #1234
?? DC.W 1234
?? DC.W #1234
?? DS.B $1234
?? MOVE.W #1234,$000400
6.- Cul era el tamao de la memoria en la mquina de Von Neuman expresada en K
octetos?
7.- Dado el siguiente programa en ensamblador del 68000
Dir. Mem.
00000000
00000000
00000000
00000004
00000008
00000008
00009000
00009000
00009000
00009000
00009002
00009006
00009008
0000900A
0000900A
0000900C

Cdigo Mquina

00008000
00009000

7001
6700 0004
7403
7202
4848

Ensamblador
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

ETIQ:

ORG
DC.L
DC.L

$0
$8000
$9000

ORG

$9000

MOVEQ.L
BEQ
MOVEQ.L
MOVEQ.L

#1,D0
ETIQ
#3,D2
#2,D1

BREAK
END

Explicar el motivo por el cul el desplazamiento del salto, con respecto al contador de
programa (PC), es 4 y no 6 cmo cabra esperar (9002+6=9008). Pista: nmero de
accesos a memoria que se realizan para extraer la instruccin BEQ ETIQ

8.- Dada una CPU con un bus de datos de 16 bits y con una frecuencia de reloj de 8
MHz, donde los ciclos de memoria ocupan cuatro ciclos de reloj. Indicar cul es la
velocidad mxima de transferencia en octetos/segundo.
9.- Si modificamos el 68000 dotndole de un bus de datos de 8 bits, tienen sentido las
seales UDS y LDS? qu ocurrira con la seal A0 del bus de direcciones?
10.- Cul es el cuello de botella de la arquitectura Von Neumann?
11.- Traducir a lenguaje ensamblador del 68000 la sentencia Pascal
IF X > 12 THEN X := 2*X+4 ELSE X:= X+Y

12.- El ciclo de instruccin en una mquina ocupa 4 ciclos de reloj en todas las
instrucciones. Si el reloj del sistema trabaja a 20 MHz, cunto tardar en ejecutarse un
programa de 1000 instrucciones en el que no hay instrucciones de salto?
13.- En la mquina descrita en la pregunta anterior (12), cuntos millones de
instrucciones se ejecutan por segundo (MIPS)?
14.- Por qu la instruccin MOVEQ.L #$80,D0 genera un error de ensamblaje
(ERROR: MOVEQ instruction constant out of range) y la instruccin MOVEQ.L
#$7F,D0 no?
15.- Encontrar la palabra o frase de la lista que aparece a continuacin que mejor se
ajusta a las afirmaciones siguientes.
Afirmaciones:
1. Otro nombre para procesador
2. Mquina de alto rendimiento con un precio elevado
3. Aproximacin al diseo hardware o software. El sistema est formado por capas
jerrquicas, en las que cada capa de nivel superior oculta detalles de la capa de
nivel inferior.
4. Orden individual para un computador.
5. Localizacin de los programas cuando se estn ejecutando, tambin contiene los
datos que se necesitan.
6. Parte activa del computador que sigue las instrucciones del programa al pie de la
letra: suma nmeros, examina nmeros, etc.
7. Memoria pequea rpida que acta como buffer de la memoria principal
8. Abstraccin especfica que el hardware proporciona al software de bajo nivel.
Palabras:
a) ensamblador
b) cach
c) CPU
d) Instruccin
e) Arquitectura del repertorio de instrucciones
f) Procesador
g) Memoria
h) Supercomputador
16.- Un programa est compuesto de 1000 instrucciones de las cuales, el 10% son
operaciones de multiplicacin que requieren 8 ciclos de reloj en su ejecucin, y el 90%

son instrucciones que consumen 2 ciclos de reloj. Si el programa anterior se ejecuta en


una CPU con un reloj a 500MHz, Cunto tiempo se tarda en ejecutarlo?
17.- Suponer que el puntero de pila, en un 68000, tiene el valor $8000. Indicar el
contenido de la pila tras ejecutar las instrucciones siguientes:
MOVE.L
MOVE.B
MOVE.W
ADDQ.L
MOVE.W

#$AABBCCDD,-(SP)
#$22,-(SP)
#$3344,-(SP)
#2,SP
#$5566,-(SP)

Indicar el contenido de cada una de las celdas de memoria.