Compiler, Compilation Technology

Feb 3rd, 2012
Studypool Tutor
University of Manchester
Price: $10 USD

Tutor description

This document was prepared to help a student of University of Manchester who was a final year undergraduate student of computer science. The document has been written from different sources of text and mostly my own language to prepare study note about Compiler.

Word Count: 1138
Showing Page: 1/7
What is a compiler? A high-level view of compilation. General structure of a compiler. An overview of compilation technology. Compiler is a set of software devices that reads source program written in a specific syntax rules such as Java, Pascal etc. and convert the source program into the native machine executable code that CPU can understand directly.Compilation over viewA compiler has main four components; Lexical analyzer, Syntax analyzer(parser), semantic analyzer, and machine code generator.Compilation technology:Lexical analyzer process a stream of individual characters into a sequence of tokens basing on the source code syntax to feed into the parser (Syntax analyzer). The parser takes the tokens produced during the lexical analysis stage, and attempts to build some kind of in-memory structure to represent that input. Frequently, that structure is an 'abstract syntax tree' (AST). The Parser analyzes the tokens and build a parse tree basing on the Context Free Grammar (CFG) of the parser. Parser validates tokens against the CFG.Semantic analyzer takes the parse tree/syntax tree and checks any error and resolves semantic information, adds additional attributes to nodes.Machine code generator generates machine codes for target processor. Full description of compiler technology:Lexical Analysis (Scanning) Lexical analysis or scanning is the process where the stream of characters making up the source program is read from left-to-

Review from student

Studypool Student
" excellent work as always thanks for the help "
Ask your homework questions. Receive quality answers!

Type your question here (or upload an image)

1827 tutors are online

Brown University





1271 Tutors

California Institute of Technology




2131 Tutors

Carnegie Mellon University




982 Tutors

Columbia University





1256 Tutors

Dartmouth University





2113 Tutors

Emory University





2279 Tutors

Harvard University





599 Tutors

Massachusetts Institute of Technology



2319 Tutors

New York University





1645 Tutors

Notre Dam University





1911 Tutors

Oklahoma University





2122 Tutors

Pennsylvania State University





932 Tutors

Princeton University





1211 Tutors

Stanford University





983 Tutors

University of California





1282 Tutors

Oxford University





123 Tutors

Yale University





2325 Tutors