Universidad de Costa Rica
Escuela de Ciencias de la
Computación e Informática
Profesor Adolfo Di Mare
CI-1322
I Semestre 2008
[<=] [home] [<>] [\/] [=>]
CI-1322 Autómatas y compiladores

Tarea #4 [solución]

Compilación de la calculadora

      Tome la implementación de la calculadora y modifíquela de la siguente forma:

push v     Empuja el valor de "v" en la pila
rvalue l   Empuja el contenido de la memoria "l" en la pila
lvalue l   Empuja la direcci¢n de "l" en la pila
pop        Descarta el valor que est  en el top de la pila
:=         Asigna el rvalor del tope de la pila al lvalor
           bajo ‚l, y ambos son descartados de la pila
copy       Duplica el valor del tope de la pila
add        Suma los 2 valores del tope de la pila, los
           descarta y empuja el resultado.
sub        Resta los 2 valores del tope de la pila, los
           descarta y empuja el resultado.
mul        Multiplica los 2 valores del tope de la pila, los
           descarta y empuja el resultado.
div        Divide los 2 valores del tope de la pila, los
           descarta y empuja el resultado.


Instrucciones         Pila           RAM de Datos
+-----------+      +---------+       +-----------+
| push 5    |      |      16 |       |       0.0 | 1
| rvalue 2  |      |       7 |       |      11.0 | 2
| add       |                        |       4.0 | 3
| *         | <- pc                  |        .. | 4

"pc" -> Program counter
        Siguiente instrucci¢n a ejecutar

      Entregue su tarea por correo electrónico, como lo hizo anteriormente.

[mailto:] Entrega de Tareas

Tiempo de entrega: 10 días
Modalidad: En parejas

Soluciones

[mailto:] Adolfo Di Mare <adolfo@di-mare.com>.
Copyright © 2008
Derechos de autor reservados © 2008
[home] <> [/\]