CS450 Compiler Design
47
Interpreters
Q:
Why are abstract machines useful?
2) Abstract machines are useful for testing and debugging.
Example:
Testing the “Ultima” processor using
hardware emulation
Ultima
x86
x86
Ultima
º
Ultima
P
Ultima
P
Functional equivalence
Note:
we don’t have to implement Ultima emulator directly in x86; we can
use a high-level language and compile it to x86.