Skip to main content
Top

2017 | OriginalPaper | Chapter

6. Semantic Analysis and Intermediate Code

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

The semantic analysis phase of a compiler is the last phase directly concerned with the analysis of the source program. The syntax analyser has produced a syntax tree or some equivalent data structure and the next step is to deal with all those remaining analysis tasks that are difficult or impossible to do in a conventional syntax analyser. These tasks are principally concerned with context-sensitive analysis.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literature
1.
go back to reference Aho AV, Lam MS, Sethi R, Ullman JD (2007) Compilers – principles, techniques and tools, 2nd edn. Pearson Education, Upper Saddle RiverMATH Aho AV, Lam MS, Sethi R, Ullman JD (2007) Compilers – principles, techniques and tools, 2nd edn. Pearson Education, Upper Saddle RiverMATH
2.
go back to reference Cytron R, Ferrante J, Rosen BK, Wegman MN, Kenneth Zadek F (1991) Efficiently computing static single assignment form and the control dependence graph. ACM Trans Program Lang Syst 13(4):451–490CrossRef Cytron R, Ferrante J, Rosen BK, Wegman MN, Kenneth Zadek F (1991) Efficiently computing static single assignment form and the control dependence graph. ACM Trans Program Lang Syst 13(4):451–490CrossRef
3.
go back to reference Cooper KD, Torczon L (2011) Engineering a compiler, 2nd edn. Morgan Kaufmann, San FranciscoMATH Cooper KD, Torczon L (2011) Engineering a compiler, 2nd edn. Morgan Kaufmann, San FranciscoMATH
4.
go back to reference Bilardi G, Pingali K (2003) Algorithms for computing the static single assignment form. J ACM 50(3):375–425 Bilardi G, Pingali K (2003) Algorithms for computing the static single assignment form. J ACM 50(3):375–425
5.
6.
go back to reference Ferrante J, Ottenstein KJ, Warren JD (1987) The program dependence graph and its use in optimization. ACM Trans Program Lang Syst 9(3):319–349CrossRefMATH Ferrante J, Ottenstein KJ, Warren JD (1987) The program dependence graph and its use in optimization. ACM Trans Program Lang Syst 9(3):319–349CrossRefMATH
7.
go back to reference Stanier J, Watson D (2013) Intermediate representations in imperative compilers: a survey. ACM Comput Surv 45(3):26:1–26:27CrossRef Stanier J, Watson D (2013) Intermediate representations in imperative compilers: a survey. ACM Comput Surv 45(3):26:1–26:27CrossRef
8.
go back to reference Holub AI (1994) Compiler design in C, 2nd edn. Prentice Hall International, New YorkMATH Holub AI (1994) Compiler design in C, 2nd edn. Prentice Hall International, New YorkMATH
9.
go back to reference Fraser C, Hanson D (1995) A retargetable C compiler: design and implementation. Addison-Wesley, ReadingMATH Fraser C, Hanson D (1995) A retargetable C compiler: design and implementation. Addison-Wesley, ReadingMATH
10.
go back to reference Pierce BC (2002) Types and programming languages. The MIT Press, CambridgeMATH Pierce BC (2002) Types and programming languages. The MIT Press, CambridgeMATH
11.
go back to reference Mogensen TÆ (2011) Introduction to compiler design. Undergraduate topics in computer science. Springer, Berlin Mogensen TÆ (2011) Introduction to compiler design. Undergraduate topics in computer science. Springer, Berlin
12.
go back to reference Lindholm T, Yellin F (1997) The Java virtual machine specification. The Java series. Addison-Wesley, Reading Lindholm T, Yellin F (1997) The Java virtual machine specification. The Java series. Addison-Wesley, Reading
13.
go back to reference Grune D, Bal HE, Jacobs CJH, Langendoen KG (2000) Modern compiler design. Wiley, New York Grune D, Bal HE, Jacobs CJH, Langendoen KG (2000) Modern compiler design. Wiley, New York
14.
go back to reference Appel AW (1992) Compiling with continuations. Cambridge University Press, Cambridge Appel AW (1992) Compiling with continuations. Cambridge University Press, Cambridge
15.
go back to reference Peyton Jones SL (1987) The implementation of functional programming languages. Prentice Hall international series in computer science. Prentice Hall, Englewood Cliffs Peyton Jones SL (1987) The implementation of functional programming languages. Prentice Hall international series in computer science. Prentice Hall, Englewood Cliffs
16.
go back to reference Bernstein RL (1985) Producing good code for the case statement. Softw Pract Exp 15(10):1021–1024CrossRef Bernstein RL (1985) Producing good code for the case statement. Softw Pract Exp 15(10):1021–1024CrossRef
17.
go back to reference Hennessy JL, Mendelsohn N (1982) Compilation of the Pascal case statement. Softw Pract Exp 12(9):879–882CrossRefMATH Hennessy JL, Mendelsohn N (1982) Compilation of the Pascal case statement. Softw Pract Exp 12(9):879–882CrossRefMATH
Metadata
Title
Semantic Analysis and Intermediate Code
Author
Des Watson
Copyright Year
2017
DOI
https://doi.org/10.1007/978-3-319-52789-5_6

Premium Partner