Problema 5 · Fonaments d'Informàtica UAB 2021
Tema: Traça d'execució, subrutines i gestió de la pila · Del examen Examen final de Fonaments d'Informàtica (Gener 2021) (2021)
Enunciado
Problema 5 (2 punts). Traça d'execució d'un programa en assemblador
Es considera un computador amb els modes d'adreçament següents:
n: Directe
#n: Immediat
n[X]: Indexat
(n): Indirecte
El punter SP apunta a la primera posició lliure de la pila i aquesta creix cap a adreces numèricament més altes.
Es disposa del fragment de codi següent:
Adreça
Instrucció
Adreça
Instrucció
1 · MOV X, #2 · 50 · PUSH R0
2 · MOV R0, 200[X] · 51 · INC R0
3 · MOV (301), R0 · 52 · INC X
4 · CALL 50 · 53 · PULL R0
5 · CMP X, #4 · 54 · RTN
6 · BNE 2 (o BOZ 2)
Representeu la taula de traça de l'execució indicant únicament els valors dels registres i de la memòria que canvien en cada pas, començant des de l'estat inicial on i , amb els continguts de memòria inicials: posicions , , , , , , , , .
Completeu les cel·les que canvien de valor en cada pas d'execució. Deixeu buides les cel·les dels registres o memòries que no modifiquen el seu valor respecte a l'estat anterior.
INSTRUCCIÓ
PC
SP
R0
X
@101
@400
@401
Estat inicial
1
400
-
-
201
-
-
MOV X, #2
MOV R0, 200[X]
MOV (301), R0
CALL 50
PUSH R0
INC R0
INC X
PULL R0
RTN
CMP X, #4
BNE 2
MOV R0, 200[X] (2a volta)
MOV (301), R0 (2a volta)
CALL 50 (2a volta)
PUSH R0 (2a volta)
INC R0 (2a volta)
INC X (2a volta)
PULL R0 (2a volta)
RTN (2a volta)
CMP X, #4 (2a volta)
BNE 2 (2a volta)

Solución
Según los criterios oficiales de corrección
PC després de MOV X, #2
Solución: 2
X després de MOV X, #2
Solución: 2
PC després de MOV R0, 200[X]
Solución: 3
R0 després de MOV R0, 200[X]
Solución: 12
PC després de MOV (301), R0
Solución: 4
Memòria modificada després de MOV (301), R0
Solución: 12
PC després de CALL 50
Solución: 50
SP després de CALL 50
Solución: 401
Posició 400 de memòria després de CALL 50
Solución: 5
PC després de PUSH R0
Solución: 51
SP després de PUSH R0
Solución: 402
Posició 401 de memòria després de PUSH R0
Solución: 12
PC després d'INC R0
Solución: 52
R0 després d'INC R0
Solución: 13
PC després d'INC X
Solución: 53
X després d'INC X
Solución: 3
PC després de PULL R0
Solución: 54
SP després de PULL R0
Solución: 401
R0 després de PULL R0
Solución: 12
PC després de RTN
Solución: 5
SP després de RTN
Solución: 400
PC després de CMP X, #4
Solución: 6
PC després de BNE 2
Solución: 2
PC després de MOV R0, 200[X] (2a volta)
Solución: 3
R0 després de MOV R0, 200[X] (2a volta)
Solución: 100
PC després de MOV (301), R0 (2a volta)
Solución: 4
Posició 101 de memòria després de MOV (301), R0 (2a volta)
Solución: 100
PC després de CALL 50 (2a volta)
Solución: 50
SP després de CALL 50 (2a volta)
Solución: 401
Posició 400 de memòria després de CALL 50 (2a volta)
Solución: 5
PC després de PUSH R0 (2a volta)
Solución: 51
SP després de PUSH R0 (2a volta)
Solución: 402
Posició 401 de memòria després de PUSH R0 (2a volta)
Solución: 100
PC després d'INC R0 (2a volta)
Solución: 52
R0 després d'INC R0 (2a volta)
Solución: 101
PC després d'INC X (2a volta)
Solución: 53
X després d'INC X (2a volta)
Solución: 4
PC després de PULL R0 (2a volta)
Solución: 54
SP després de PULL R0 (2a volta)
Solución: 401
R0 després de PULL R0 (2a volta)
Solución: 100
RTN (2a volta) - PC
Solución: 5
RTN (2a volta) - SP
Solución: 400
CMP X, #4 (2a volta) - PC
Solución: 6
BNE 2 (2a volta) - PC
Solución: 7
La explicación paso a paso, hecha con IA, es Premium. Premium
Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.
‹ Ejercicio Teoria 2.b · 2021 · Ejercicio Teoria 2.b - Anàlisi de subrutina i pila · 2021 ›