Save
Final 3600
Compilers
Save
Share
Learn
Content
Leaderboard
Learn
Created by
Enrico
Visit profile
Cards (100)
Compilation
Translates a program to another
language
View source
Source Language
High-level
programming language
View source
Target
Language
Machine or assembly language
View source
Interpreter
Translates and executes
source
program
View source
Preprocessing
Occurs
before
program compilation
View source
Assembler
Type of
translator
View source
#
include
Directive to
include
specified file
View source
#define
Defines symbolic
constants
and
macros
View source
Macro
Text substitution
without
data type checking
View source
#undef
Undefines a symbolic constant or
macro
View source
Conditional
Compilation
Control
preprocessor
directives and
compilation
View source
Compiler
Translates C program to assembler code
View source
Parser
Part of the compiler that analyzes
syntax
View source
Code
Optimizer
Improves code
efficiency
View source
Linker
Combines
object
code to make
executable
file
View source
Loader
Places object programs in
memory
for
execution
View source
Compiler
Construction
Translates
high-level languages
to machine language
View source
Machine Language
Language computers
understand
View source
Compiler
Properties
Compiler must generate
correct
and
efficient
code
View source
Compiler
Goals
Code correctness
, efficiency, and
speed
View source
Optimizing Compiler
Produces
more
efficient output code
View source
Compiler
Study Importance
Teaches
theoretical
techniques and
software
engineering skills
View source
Formal
Grammars
Used in compiler
construction
View source
Lattice
Theory
Theoretical
technique in
compilers
View source
Compiler
Construction Challenges
Involves
theory
,
algorithms
, systems, and architecture
View source
Compiler
Construction Solutions
Techniques
applicable in various
applications
View source
Compiler
Construction Status
Not a fully solved
problem
View source
Syntax
Specifies the
structure
of a programming language
View source
Semantics
Defines the
meaning
of constructs in a programming language
View source
Context
-Free
Grammar
(CFG)
Set of
recursive
rewriting rules to generate string
patterns
View source
Static
Semantics
Rules
checked at compile time, like function argument
types
View source
Runtime Semantics
Rules
checked only during program
execution
View source
Lexical
Analysis
Converts
source
code characters into
lexical
units
View source
Syntax
Analysis
Transforms
lexical
units into
parse
trees showing program structure
View source
Semantics
Analysis
Generates
intermediate
code from
parse
trees
View source
Code
Generation
Produces machine code from
intermediate
code
View source
Regular
Expression
Pattern
notation for specifying
finite
string sets
View source
Lexical
Analyzer
Identifies
tokens
in a program using
regular
expressions
View source
Lexeme
Sequence of characters matching a
pattern
in source code
View source
Token
Logically
cohesive
sequence of characters representing a
lexeme
View source
See all 100 cards