Abstract
In Chap. 2 we considered a simple stack-based abstract machine for the evaluation of expressions with variables and variable bindings. Here we continue that work, and extend the abstract machine so that it can execute programs compiled from an imperative language (micro-C). We also write a compiler from the imperative programming language micro-C to this abstract machine.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Aho, A., Lam, M., Sethi, R., Ullman, J.: Compilers: Principles, Techniques and Tools, 2nd edn. Addison-Wesley, Reading (2006)
Appel, A.W.: Modern Compiler Implementation in ML. Cambridge University Press, Cambridge (1997)
Backus, J., et al.: The Fortran automatic coding system. In: Western Joint Computer Conference, Los Angeles, CA, pp. 188–198 (1957)
Dijkstra, E.W.: Recursive programming. Numer. Math. 2, 312–318 (1960). At http://oai.cwi.nl/oai/asset/9253/9253A.pdf
Dijkstra, E.W.: Algol 60 translation. ALGOL Bull. 10 (1961). At http://www.cs.utexas.edu/users/EWD/MCReps/MR35.PDF
Grune, D.: Compiler construction before 1980 (literature list) (2010). At http://dickgrune.com/Summaries/CS/CompilerConstruction-1979.html
Jensen, J., Naur, P.: An implementation of Algol 60 procedures. ALGOL Bull. 11, 38–47 (1961)
Mogensen, T.: Introduction to Compiler Design. Springer, Berlin (2011)
Randell, B., Russell, L.: Algol 60 Implementation. Academic Press, New York (1964)
Samelson, K., Bauer, F.: Sequential formula translation. Commun. ACM 3(2), 76–83 (1960)
Wirth, N.: Algorithms + Data Structures = Programs. Prentice-Hall, New York (1976)
Author information
Authors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag London
About this chapter
Cite this chapter
Sestoft, P. (2012). Compiling Micro-C. In: Programming Language Concepts. Undergraduate Topics in Computer Science, vol 50. Springer, London. https://doi.org/10.1007/978-1-4471-4156-3_8
Download citation
DOI: https://doi.org/10.1007/978-1-4471-4156-3_8
Publisher Name: Springer, London
Print ISBN: 978-1-4471-4155-6
Online ISBN: 978-1-4471-4156-3
eBook Packages: Computer ScienceComputer Science (R0)