SlideShare a Scribd company logo
CODE GENERATION
LECTURE 16
CODE GENERATION
The code generation problem is the task of
mapping intermediate code to machine code.
Requirements:
 Correctness
 Must preserve semantic meaning of source program
 Efficiency
 Make effective use of available resources
 Code Generator itself must run efficiently
2
COMPILER ARCHITECTURE
Scanner
(lexical
analysis)
Parser
(syntax
analysis)
Code
Optimizer
Semantic
Analysis
(IC generator)
Code
Generator
Symbol
Table
Source
language
tokens
Syntactic
structure
Intermediate
Language
Target
language
Intermediate
Language
3
INPUT TO THE CODE GENERATOR
 We assume, front end has
Scanned, parsed and translate the source program into
a reasonably detailed intermediate representations
Type checking, type conversion and obvious semantic
errors have already been detected
Symbol table is able to provide run-time address of the
data objects
Intermediate representations may be
 Postfix notations
 Three address representations
 Syntax tree
 DAG
4
TARGET PROGRAMS
 The output of the code generator is the target program.
 Target architecture: must be well understood
Significantly influences the difficulty of code
generation
RISC, CISC
 Target program may be
Absolute machine language
 It can be placed in a fixed location of memory and immediately
executed
Re-locatable machine language
 Subprograms to be compiled separately
 A set of re-locatable object modules can be linked together and
loaded for execution by a linker 5
ISSUES IN THE DESIGN OF A CODE
GENERATOR
 Instruction Selection
 Register Allocation
 Evaluation Order
6
INSTRUCTION SELECTION
 There may be a large number of ‘candidate’
machine instructions for a given IR instruction
Level of IR
 High: Each IR translates into many machine
instructions
 Low: Reflects many low-level details of machine
Nature of the instruction set
 Uniformity and completeness
Each has own cost and constraints
 Accurate cost information is difficult to obtain
 Cost may be influenced by surrounding context
7
INSTRUCTION SELECTION
 For each type of three-address statement, a code
skeleton can be designed that outlines the target code to
be generated for that construct.
 Say, x := y + z
Mov y, R0
Add z, R0
Mov R0, x
Statement by statement code generation often
produces poor code
8
INSTRUCTION SELECTION
a := b + c
d := a + e
MOV b, R0
ADD c, R0
MOV R0, a
MOV a, R0
ADD e, R0
MOV R0, d
MOV a, R0
MOV R0, a If a is subsequently
used
9
INSTRUCTION SELECTION:
MACHINE IDIOMS
10
REGISTER ALLOCATION
 How to best use the bounded number of registers.
 Use or registers
 Register allocation
 We select a set of variables that will reside in registers at each point
in the program
 Register assignment
 We pick the specific register that a variable will reside in.
 Complications:
 special purpose registers
 operators requiring multiple registers.
 Optimal assignment is NP-complete
11
REGISTER ALLOCATION
r4
12
REGISTER ALLOCATION
13
EVALUATION ORDER
 Choosing the order of instructions to best utilize
resources
 Picking the optimal order is NP-complete problem
 Simplest Approach
 Don’t mess with re-ordering.
 Target code will perform all operations in the same order
as the IR code
 Trickier Approach
 Consider re-ordering operations
 May produce better code
... Get operands into registers just before they are
needed
... May use registers more efficiently
14
MOVING RESULTS BACK TO
MEMORY
 When to move results from registers back into
memory?
 After an operation, the result will be in a register.
 Immediately
 Move data back to memory just after it is computed.
 May make more registers available for use elsewhere.
 Wait as long as possible before moving it
back
 Only move data back to memory “at the end”
 or “when absolutely necessary”
 May be able to avoid re-loading it later!
15
CODE GENERATION ALGORITHM #1
Simple code generation algorithm:
Define a target code sequence to each intermediate code
statement type.
16
CODE GENERATION ALGORITHM #1
17
EXAMPLE TARGET MACHINE
18
EVALUATING A POTENTIAL
CODE SEQUENCE
 Each instruction has a “cost”
Cost = Execution Time
 Execution Time is difficult to predict.
Pipelining, Branches, Delay Slots, etc.
 Goal: Approximate the real cost
A “Cost Model”
A BETTER COST MODEL
COST GENERATION EXAMPLE
21
BASIC BLOCKS
22
BASIC BLOCKS
23
BASIC BLOCKS
24
CONTROL FLOW GRAPH
25
ALGORITHM TO PARTITION
INSTRUCTIONS INTO BASIC
BLOCKS
26
ALGORITHM TO PARTITION
INSTRUCTIONS INTO BASIC
BLOCKS
 INPUT: A sequence of three-address instructions.
 OUTPUT: A list of the basic blocks for that sequence in
which each instruction is assigned to exactly one basic
block.
 METHOD: First, we determine those instructions in the
intermediate code that are leaders, that is, the first
instructions in some basic block. The instruction just past
the end of the intermediate program is not included as a
leader. The rules for finding leaders are:
 The first three-address instruction in the intermediate code is
a leader.
 Any instruction that is the target of a conditional or
unconditional jump is a leader.
 Any instruction that immediately follows a conditional or
unconditional jump is a leader
27
IDENTIFY LEADERS – EXAMPLE 1:
28
IDENTIFY LEADERS – EXAMPLE 1:
29
IDENTIFY LEADERS – EXAMPLE 1:
30
IDENTIFY LEADERS
31
IDENTIFY LEADERS – EXAMPLE 2:
32
IDENTIFY LEADERS – EXAMPLE
2:
 According to rule 1 : 1
 According to rule 2 : 3, 2, 13
 According to rule 3 : 10, 12
33
LOOK AT EACH BASIC BLOCK IN
ISOLATION
34
COMMON SUB-EXPRESSION
ELIMINATION
35
COMMON SUB-EXPRESSION
ELIMINATION
36
REORDERING INSTRUCTIONS IN A
BASIC BLOCK
37
LIVE VARIABLES
38
DEAD VARIABLES
39
LIVENESS EXAMPLE
40
LIVENESS EXAMPLE
41
LIVE VARIABLE ANALYSIS
42
TEMPORARIES
43
DEAD CODE
44
TEMPORARIES
45
ALGEBRAIC TRANSFORMATION
46
CONTROL FLOW GRAPHS
47
REPRESENTING FLOW GRAPHS:
IDEA 1
48
REPRESENTING FLOW GRAPHS:
IDEA 2
49
WHAT IS LOOP?
50
NATURAL LOOP
51
LOOPS WITH MULTIPLE ENTRIES
52
CODE GENERATION ALGORITHM #2
AND #3
53
CODE GENERATION ALGORITHM #2
54
CODE GENERATION ALGORITHM #2
55
DEFINITION AND USE OF VARIABLES
56
THE “NEXT-USE” INFORMATION
57
THE “NEXT-USE” ALGORITHM
58
“NEXT-USE” EXAMPLE
59
“NEXT-USE” ALGORITHM
60
“NEXT-USE” ALGORITHM
61
“NEXT-USE” ALGORITHM - EXAMPLE
62
“NEXT-USE” ALGORITHM - EXAMPLE
63
“NEXT-USE” ALGORITHM - EXAMPLE
64
“NEXT-USE” ALGORITHM - EXAMPLE
65
“NEXT-USE” ALGORITHM - EXAMPLE
66
“NEXT-USE” ALGORITHM - EXAMPLE
67
“NEXT-USE” ALGORITHM - EXAMPLE
68
“NEXT-USE” ALGORITHM - EXAMPLE
69
“NEXT-USE” ALGORITHM - EXAMPLE
70
“NEXT-USE” ALGORITHM - EXAMPLE
71
“NEXT-USE” ALGORITHM - EXAMPLE
D
L ( 1 )
72
WHY LIVE VARIABLE ANALYSIS?
73
CODE GENERATION ALGORITHM #2
74
CODE GENERATION ALGORITHM #2
75
DATA NEEDED DURING CODE
GENERATION
76
CODE GENERATION ALGORITHM #3
(OVERVIEW)
77
CODE GENERATION ALGORITHM #3
78
CODE GENERATION ALGORITHM #3
79
CODE GENERATION ALGORITHM #3
80
CODE GENERATION ALGORITHM #3
81
CODE GENERATION ALGORITHM #3
82
SPECIAL CASE
83
CODE GENERATION ALGORITHM #2
84
EXAMPLE
85
EXAMPLE
86
EXAMPLE
87
EXAMPLE
88
EXAMPLE
89
EXAMPLE
90
EXAMPLE
91
EXAMPLE
92
EXAMPLE
93
EXAMPLE
94
EXAMPLE
95
EXAMPLE
96
EXAMPLE
97
EXAMPLE
98
ANY QUESTION ?
99

More Related Content

What's hot

Language processors
Language processorsLanguage processors
Language processors
Ganesh Wedpathak
 
Instruction format
Instruction formatInstruction format
Instruction format
Sanjeev Patel
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formats
Mazin Alwaaly
 
Single Cycle Processing
Single Cycle ProcessingSingle Cycle Processing
Single Cycle Processing
inmogr
 
Peephole Optimization
Peephole OptimizationPeephole Optimization
Peephole Optimization
United International University
 
Intermediate code generator
Intermediate code generatorIntermediate code generator
Intermediate code generator
sanchi29
 
Kumpulan catatan Teknik Kompilasi
Kumpulan catatan Teknik KompilasiKumpulan catatan Teknik Kompilasi
Kumpulan catatan Teknik Kompilasi
Rakhmi Khalida, M.M.S.I
 
Types of Compilers
Types of CompilersTypes of Compilers
Types of Compilers
Hemant Chetwani
 
Prosessor SAP 1
Prosessor SAP 1Prosessor SAP 1
Prosessor SAP 1
Rakhmi Khalida, M.M.S.I
 
System Programming Overview
System Programming OverviewSystem Programming Overview
System Programming Overview
Dattatray Gandhmal
 
Multivalued dependency
Multivalued dependencyMultivalued dependency
Multivalued dependency
avniS
 
Pertemuan 9 pengalamatan
Pertemuan 9 pengalamatanPertemuan 9 pengalamatan
Pertemuan 9 pengalamatan
Buhori Muslim
 
PowerPoint - Set Instruksi dan Teknik Pengalamatan
PowerPoint - Set Instruksi dan Teknik PengalamatanPowerPoint - Set Instruksi dan Teknik Pengalamatan
PowerPoint - Set Instruksi dan Teknik Pengalamatan
Indri Sukmawati Rahayu
 
Lecture 3 instruction set
Lecture 3  instruction setLecture 3  instruction set
Lecture 3 instruction set
Pradeep Kumar TS
 
Assemblers
AssemblersAssemblers
Assemblers
Dattatray Gandhmal
 
Ch6
Ch6Ch6
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBOContext Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
ahmad haidaroh
 
technik kompilasi
technik kompilasitechnik kompilasi
technik kompilasi
mastnie
 
Introduction to loaders
Introduction to loadersIntroduction to loaders
Introduction to loaders
Tech_MX
 
Linker and Loader
Linker and Loader Linker and Loader
Linker and Loader
sonalikharade3
 

What's hot (20)

Language processors
Language processorsLanguage processors
Language processors
 
Instruction format
Instruction formatInstruction format
Instruction format
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formats
 
Single Cycle Processing
Single Cycle ProcessingSingle Cycle Processing
Single Cycle Processing
 
Peephole Optimization
Peephole OptimizationPeephole Optimization
Peephole Optimization
 
Intermediate code generator
Intermediate code generatorIntermediate code generator
Intermediate code generator
 
Kumpulan catatan Teknik Kompilasi
Kumpulan catatan Teknik KompilasiKumpulan catatan Teknik Kompilasi
Kumpulan catatan Teknik Kompilasi
 
Types of Compilers
Types of CompilersTypes of Compilers
Types of Compilers
 
Prosessor SAP 1
Prosessor SAP 1Prosessor SAP 1
Prosessor SAP 1
 
System Programming Overview
System Programming OverviewSystem Programming Overview
System Programming Overview
 
Multivalued dependency
Multivalued dependencyMultivalued dependency
Multivalued dependency
 
Pertemuan 9 pengalamatan
Pertemuan 9 pengalamatanPertemuan 9 pengalamatan
Pertemuan 9 pengalamatan
 
PowerPoint - Set Instruksi dan Teknik Pengalamatan
PowerPoint - Set Instruksi dan Teknik PengalamatanPowerPoint - Set Instruksi dan Teknik Pengalamatan
PowerPoint - Set Instruksi dan Teknik Pengalamatan
 
Lecture 3 instruction set
Lecture 3  instruction setLecture 3  instruction set
Lecture 3 instruction set
 
Assemblers
AssemblersAssemblers
Assemblers
 
Ch6
Ch6Ch6
Ch6
 
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBOContext Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
Context Free Grammar (CFG) Bagian 2 - Materi 7 - TBO
 
technik kompilasi
technik kompilasitechnik kompilasi
technik kompilasi
 
Introduction to loaders
Introduction to loadersIntroduction to loaders
Introduction to loaders
 
Linker and Loader
Linker and Loader Linker and Loader
Linker and Loader
 

Similar to Lecture 16 17 code-generation

Assembly Language for as level computer science
Assembly Language for as level computer scienceAssembly Language for as level computer science
Assembly Language for as level computer science
variedongz
 
Different addressing mode and risc, cisc microprocessor
Different addressing mode and risc, cisc microprocessorDifferent addressing mode and risc, cisc microprocessor
Different addressing mode and risc, cisc microprocessor
Daffodil International University
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
Aiman Hud
 
B.sc cs-ii-u-3.1-basic computer programming and micro programmed control
B.sc cs-ii-u-3.1-basic computer programming and micro programmed controlB.sc cs-ii-u-3.1-basic computer programming and micro programmed control
B.sc cs-ii-u-3.1-basic computer programming and micro programmed control
Rai University
 
Bca 2nd sem-u-3.1-basic computer programming and micro programmed control
Bca 2nd sem-u-3.1-basic computer programming and micro programmed controlBca 2nd sem-u-3.1-basic computer programming and micro programmed control
Bca 2nd sem-u-3.1-basic computer programming and micro programmed control
Rai University
 
Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086
Shehrevar Davierwala
 
Embedded system (Chapter 2) part 2
Embedded system (Chapter 2) part 2Embedded system (Chapter 2) part 2
Embedded system (Chapter 2) part 2
Ikhwan_Fakrudin
 
C programming session9 -
C programming  session9 -C programming  session9 -
C programming session9 -
Keroles karam khalil
 
Virtualization summary b.docx
Virtualization summary b.docxVirtualization summary b.docx
Virtualization summary b.docx
shruti533256
 
Compiler
CompilerCompiler
basic computer programming and micro programmed control
basic computer programming and micro programmed controlbasic computer programming and micro programmed control
basic computer programming and micro programmed control
Rai University
 
Mca i-u-3-basic computer programming and micro programmed control
Mca i-u-3-basic computer programming and micro programmed controlMca i-u-3-basic computer programming and micro programmed control
Mca i-u-3-basic computer programming and micro programmed control
Rai University
 
Code optimization
Code optimizationCode optimization
Code optimization
veena venugopal
 
Code optimization
Code optimizationCode optimization
Code optimization
veena venugopal
 
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
Journal For Research
 
Ebc7fc8ba9801f03982acec158fa751744ca copie
Ebc7fc8ba9801f03982acec158fa751744ca   copieEbc7fc8ba9801f03982acec158fa751744ca   copie
Ebc7fc8ba9801f03982acec158fa751744ca copie
Sourour Kanzari
 
Pragmatic Optimization in Modern Programming - Ordering Optimization Approaches
Pragmatic Optimization in Modern Programming - Ordering Optimization ApproachesPragmatic Optimization in Modern Programming - Ordering Optimization Approaches
Pragmatic Optimization in Modern Programming - Ordering Optimization Approaches
Marina Kolpakova
 
Programming the basic computer
Programming the basic computerProgramming the basic computer
Programming the basic computer
Kamal Acharya
 
Assembly level language
Assembly level languageAssembly level language
Assembly level language
PDFSHARE
 
Phases of compiler
Phases of compilerPhases of compiler
Phases of compiler
ahsaniftikhar19
 

Similar to Lecture 16 17 code-generation (20)

Assembly Language for as level computer science
Assembly Language for as level computer scienceAssembly Language for as level computer science
Assembly Language for as level computer science
 
Different addressing mode and risc, cisc microprocessor
Different addressing mode and risc, cisc microprocessorDifferent addressing mode and risc, cisc microprocessor
Different addressing mode and risc, cisc microprocessor
 
POLITEKNIK MALAYSIA
POLITEKNIK MALAYSIAPOLITEKNIK MALAYSIA
POLITEKNIK MALAYSIA
 
B.sc cs-ii-u-3.1-basic computer programming and micro programmed control
B.sc cs-ii-u-3.1-basic computer programming and micro programmed controlB.sc cs-ii-u-3.1-basic computer programming and micro programmed control
B.sc cs-ii-u-3.1-basic computer programming and micro programmed control
 
Bca 2nd sem-u-3.1-basic computer programming and micro programmed control
Bca 2nd sem-u-3.1-basic computer programming and micro programmed controlBca 2nd sem-u-3.1-basic computer programming and micro programmed control
Bca 2nd sem-u-3.1-basic computer programming and micro programmed control
 
Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086Assembly language programming_fundamentals 8086
Assembly language programming_fundamentals 8086
 
Embedded system (Chapter 2) part 2
Embedded system (Chapter 2) part 2Embedded system (Chapter 2) part 2
Embedded system (Chapter 2) part 2
 
C programming session9 -
C programming  session9 -C programming  session9 -
C programming session9 -
 
Virtualization summary b.docx
Virtualization summary b.docxVirtualization summary b.docx
Virtualization summary b.docx
 
Compiler
CompilerCompiler
Compiler
 
basic computer programming and micro programmed control
basic computer programming and micro programmed controlbasic computer programming and micro programmed control
basic computer programming and micro programmed control
 
Mca i-u-3-basic computer programming and micro programmed control
Mca i-u-3-basic computer programming and micro programmed controlMca i-u-3-basic computer programming and micro programmed control
Mca i-u-3-basic computer programming and micro programmed control
 
Code optimization
Code optimizationCode optimization
Code optimization
 
Code optimization
Code optimizationCode optimization
Code optimization
 
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
PERFORMANCE ESTIMATION OF LDPC CODE SUING SUM PRODUCT ALGORITHM AND BIT FLIPP...
 
Ebc7fc8ba9801f03982acec158fa751744ca copie
Ebc7fc8ba9801f03982acec158fa751744ca   copieEbc7fc8ba9801f03982acec158fa751744ca   copie
Ebc7fc8ba9801f03982acec158fa751744ca copie
 
Pragmatic Optimization in Modern Programming - Ordering Optimization Approaches
Pragmatic Optimization in Modern Programming - Ordering Optimization ApproachesPragmatic Optimization in Modern Programming - Ordering Optimization Approaches
Pragmatic Optimization in Modern Programming - Ordering Optimization Approaches
 
Programming the basic computer
Programming the basic computerProgramming the basic computer
Programming the basic computer
 
Assembly level language
Assembly level languageAssembly level language
Assembly level language
 
Phases of compiler
Phases of compilerPhases of compiler
Phases of compiler
 

More from Iffat Anjum

Fog computing ( foggy cloud)
Fog computing  ( foggy cloud)Fog computing  ( foggy cloud)
Fog computing ( foggy cloud)
Iffat Anjum
 
Cognitive radio network_MS_defense_presentation
Cognitive radio network_MS_defense_presentationCognitive radio network_MS_defense_presentation
Cognitive radio network_MS_defense_presentation
Iffat Anjum
 
Lecture 15 run timeenvironment_2
Lecture 15 run timeenvironment_2Lecture 15 run timeenvironment_2
Lecture 15 run timeenvironment_2
Iffat Anjum
 
Lecture 14 run time environment
Lecture 14 run time environmentLecture 14 run time environment
Lecture 14 run time environment
Iffat Anjum
 
Lecture 12 intermediate code generation
Lecture 12 intermediate code generationLecture 12 intermediate code generation
Lecture 12 intermediate code generation
Iffat Anjum
 
Lecture 13 intermediate code generation 2.pptx
Lecture 13 intermediate code generation 2.pptxLecture 13 intermediate code generation 2.pptx
Lecture 13 intermediate code generation 2.pptx
Iffat Anjum
 
Lecture 11 semantic analysis 2
Lecture 11 semantic analysis 2Lecture 11 semantic analysis 2
Lecture 11 semantic analysis 2
Iffat Anjum
 
Lecture 09 syntax analysis 05
Lecture 09 syntax analysis 05Lecture 09 syntax analysis 05
Lecture 09 syntax analysis 05
Iffat Anjum
 
Lecture 10 semantic analysis 01
Lecture 10 semantic analysis 01Lecture 10 semantic analysis 01
Lecture 10 semantic analysis 01
Iffat Anjum
 
Lecture 07 08 syntax analysis-4
Lecture 07 08 syntax analysis-4Lecture 07 08 syntax analysis-4
Lecture 07 08 syntax analysis-4
Iffat Anjum
 
Lecture 06 syntax analysis 3
Lecture 06 syntax analysis 3Lecture 06 syntax analysis 3
Lecture 06 syntax analysis 3
Iffat Anjum
 
Lecture 05 syntax analysis 2
Lecture 05 syntax analysis 2Lecture 05 syntax analysis 2
Lecture 05 syntax analysis 2
Iffat Anjum
 
Lecture 03 lexical analysis
Lecture 03 lexical analysisLecture 03 lexical analysis
Lecture 03 lexical analysis
Iffat Anjum
 
Lecture 04 syntax analysis
Lecture 04 syntax analysisLecture 04 syntax analysis
Lecture 04 syntax analysis
Iffat Anjum
 
Lecture 02 lexical analysis
Lecture 02 lexical analysisLecture 02 lexical analysis
Lecture 02 lexical analysis
Iffat Anjum
 
Lecture 01 introduction to compiler
Lecture 01 introduction to compilerLecture 01 introduction to compiler
Lecture 01 introduction to compiler
Iffat Anjum
 
Compiler Design - Introduction to Compiler
Compiler Design - Introduction to CompilerCompiler Design - Introduction to Compiler
Compiler Design - Introduction to Compiler
Iffat Anjum
 
Distributed contention based mac protocol for cognitive radio
Distributed contention based mac protocol for cognitive radioDistributed contention based mac protocol for cognitive radio
Distributed contention based mac protocol for cognitive radio
Iffat Anjum
 
On qo s provisioning in context aware wireless sensor networks for healthcare
On qo s provisioning in context aware wireless sensor networks for healthcareOn qo s provisioning in context aware wireless sensor networks for healthcare
On qo s provisioning in context aware wireless sensor networks for healthcare
Iffat Anjum
 
Data link control
Data link controlData link control
Data link control
Iffat Anjum
 

More from Iffat Anjum (20)

Fog computing ( foggy cloud)
Fog computing  ( foggy cloud)Fog computing  ( foggy cloud)
Fog computing ( foggy cloud)
 
Cognitive radio network_MS_defense_presentation
Cognitive radio network_MS_defense_presentationCognitive radio network_MS_defense_presentation
Cognitive radio network_MS_defense_presentation
 
Lecture 15 run timeenvironment_2
Lecture 15 run timeenvironment_2Lecture 15 run timeenvironment_2
Lecture 15 run timeenvironment_2
 
Lecture 14 run time environment
Lecture 14 run time environmentLecture 14 run time environment
Lecture 14 run time environment
 
Lecture 12 intermediate code generation
Lecture 12 intermediate code generationLecture 12 intermediate code generation
Lecture 12 intermediate code generation
 
Lecture 13 intermediate code generation 2.pptx
Lecture 13 intermediate code generation 2.pptxLecture 13 intermediate code generation 2.pptx
Lecture 13 intermediate code generation 2.pptx
 
Lecture 11 semantic analysis 2
Lecture 11 semantic analysis 2Lecture 11 semantic analysis 2
Lecture 11 semantic analysis 2
 
Lecture 09 syntax analysis 05
Lecture 09 syntax analysis 05Lecture 09 syntax analysis 05
Lecture 09 syntax analysis 05
 
Lecture 10 semantic analysis 01
Lecture 10 semantic analysis 01Lecture 10 semantic analysis 01
Lecture 10 semantic analysis 01
 
Lecture 07 08 syntax analysis-4
Lecture 07 08 syntax analysis-4Lecture 07 08 syntax analysis-4
Lecture 07 08 syntax analysis-4
 
Lecture 06 syntax analysis 3
Lecture 06 syntax analysis 3Lecture 06 syntax analysis 3
Lecture 06 syntax analysis 3
 
Lecture 05 syntax analysis 2
Lecture 05 syntax analysis 2Lecture 05 syntax analysis 2
Lecture 05 syntax analysis 2
 
Lecture 03 lexical analysis
Lecture 03 lexical analysisLecture 03 lexical analysis
Lecture 03 lexical analysis
 
Lecture 04 syntax analysis
Lecture 04 syntax analysisLecture 04 syntax analysis
Lecture 04 syntax analysis
 
Lecture 02 lexical analysis
Lecture 02 lexical analysisLecture 02 lexical analysis
Lecture 02 lexical analysis
 
Lecture 01 introduction to compiler
Lecture 01 introduction to compilerLecture 01 introduction to compiler
Lecture 01 introduction to compiler
 
Compiler Design - Introduction to Compiler
Compiler Design - Introduction to CompilerCompiler Design - Introduction to Compiler
Compiler Design - Introduction to Compiler
 
Distributed contention based mac protocol for cognitive radio
Distributed contention based mac protocol for cognitive radioDistributed contention based mac protocol for cognitive radio
Distributed contention based mac protocol for cognitive radio
 
On qo s provisioning in context aware wireless sensor networks for healthcare
On qo s provisioning in context aware wireless sensor networks for healthcareOn qo s provisioning in context aware wireless sensor networks for healthcare
On qo s provisioning in context aware wireless sensor networks for healthcare
 
Data link control
Data link controlData link control
Data link control
 

Recently uploaded

How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
Celine George
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
TechSoup
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
iammrhaywood
 
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
สมใจ จันสุกสี
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
Celine George
 
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem studentsRHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
Himanshu Rai
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
Colégio Santa Teresinha
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
History of Stoke Newington
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
heathfieldcps1
 
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
mulvey2
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
Jyoti Chand
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
How to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 InventoryHow to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 Inventory
Celine George
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
Priyankaranawat4
 

Recently uploaded (20)

How to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold MethodHow to Build a Module in Odoo 17 Using the Scaffold Method
How to Build a Module in Odoo 17 Using the Scaffold Method
 
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
Leveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit InnovationLeveraging Generative AI to Drive Nonprofit Innovation
Leveraging Generative AI to Drive Nonprofit Innovation
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptxNEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
NEWSPAPERS - QUESTION 1 - REVISION POWERPOINT.pptx
 
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
คำศัพท์ คำพื้นฐานการอ่าน ภาษาอังกฤษ ระดับชั้น ม.1
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
How to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP ModuleHow to Add Chatter in the odoo 17 ERP Module
How to Add Chatter in the odoo 17 ERP Module
 
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem studentsRHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
The History of Stoke Newington Street Names
The History of Stoke Newington Street NamesThe History of Stoke Newington Street Names
The History of Stoke Newington Street Names
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
 
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
How to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 InventoryHow to Setup Warehouse & Location in Odoo 17 Inventory
How to Setup Warehouse & Location in Odoo 17 Inventory
 
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdfANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
ANATOMY AND BIOMECHANICS OF HIP JOINT.pdf
 

Lecture 16 17 code-generation