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 PC=50PC = 50? [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

Enunciado: Ejercicio Teoria 2.b - Anàlisi de subrutina i pila · Fonaments d'Informàtica UAB 2021

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 ›

Más ejercicios de Traça d'execució, subrutines i gestió de la pila