Compiler: Difference between revisions
Jump to navigation
Jump to search
Line 10: | Line 10: | ||
\tif (i == j)\n\t\tz = 0;\n\telse\n\t\tz = 1; | \tif (i == j)\n\t\tz = 0;\n\telse\n\t\tz = 1; | ||
</pre> | </pre> | ||
An implementation must do | |||
# Recognize substrings corresponding to tokens | |||
# Identify the token class of each lexeme | |||
== Token Class == | == Token Class == |
Revision as of 12:36, 26 November 2014
Lexical Analysis
if (i == j) z = 0; else z = 1;
is indeed below in computers
\tif (i == j)\n\t\tz = 0;\n\telse\n\t\tz = 1;
An implementation must do
- Recognize substrings corresponding to tokens
- Identify the token class of each lexeme
Token Class
Identifier, keywords, '(', ')', Numbers, ...
- Token classes correspond to sets of strings.
- Identifier: A1, Foo, B17
- Integer: 0, 99
- Keyword: 'else' or 'if' or 'begin' or ...
- Whitespace: if___else
For the last code example, the tokens are: if, whitespace, (, i, == , j, \t, \n, else, z, =, 1, ;
Token string ---> Lexical Analysis -------> Parser
Parsing
Semantic Analysis
Optimization
Code Generation
Resource
- coursera.org