Ejercicio Teoria 2.b - Anàlisi de subrutina i pila · Fonaments d'Informàtica UAB 2021
Tema: Traça d'execució, subrutines i gestió de la pila · Del examen Examen Fonaments d'Informàtica - Curs 2021-2022 (2021)
Enunciado
2 Teoria 2 (0,75 punts). DMA i anàlisi de codi en assemblador
b.
Quin efecte produeix l'execució del programa següent suposant un valor inicial del comptador de programa ? [0,25 punts]
Nota: No descriviu les instruccions una a una. Descriviu l'efecte global: calcula alguna cosa? acaba l'execució? com evoluciona la pila?
50 MOV RPG, #25
51 SHL RPG
52 PUSH RPG
53 CALL 1000
54 MOV 100, RPG
1000 PULL RPG
1001 RTN

Solución
Según los criterios oficiales de corrección
b. Quin efecte produeix l'execució del programa següent suposant un valor inicial del comptador de programa PC = 50?
Solución: Carrega 25 a RPG, fa un desplaçament a l'esquerra (multiplicant per 2, obtenint 50) i l'apila a la pila. En executar CALL 1000, el processador desa a la pila l'adreça de retorn (54) per sobre del 50. Tanmateix, a la subrutina, la instrucció PULL RPG desapila l'adreça de retorn (54) i la fica a RPG. Seguidament, la instrucció RTN treu el valor que queda al cim de la pila (el 50) i el carrega al PC com a adreça de retorn. Per tant, el processador torna a saltar a la línia 50, entrant en un bucle indefinit. El programa mai finalitza i la instrucció 54 mai s'arriba a executar correctament.
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.
‹ Problema 5 · 2021 · Problema 5 · 2021 ›