Explain analysis and synthesis phase of a compiler, Computer Engineering

Assignment Help:

Explain analysis and synthesis phase of a compiler.

The synthesis and analysis phases of a compiler are:

Analysis Phase: In this breaks the source program in constituent pieces and makes intermediate representation. This analysis part can be divided along the phases as follows:

1. Lexical Analysis- The program is seems as a unique sequence of characters. Its analyzer reads the program from left-to-right and then sequence of characters is grouped in tokens-lexical units along with a collective meaning.

2. Syntax Analysis- It is also termed as Parsing. Tokens are grouped in grammatical phrases represented through a Parse Tree that provides a hierarchical structure to the source program.

3. Semantic Analysis- The phase of semantic analysis checks the program for semantic errors (i.e. Type Checking) and then gathers type information for the successive phases.

Type Checking is check types of operands; not any real number as index for array and so on.

Synthesis Phase: Produces the target program from the intermediate representation. The part of synthesis can be divided along the phases as follows:

1. Intermediate Code Generator- An intermediate code is produced as a program for an abstract machine. The code of intermediate must be easy to translate in the target program.

2. Code Optimizer- Such phase attempts to enhance the intermediate code therefore faster-running machine code can be acquired. Various compilers adopt various optimization techniques.

3. Code Generator- In this phase generates the target code containing assembly code. Now

 1. Memory locations are chosen for each variable;

2. Instructions are translated in a sequence of assembly instructions;

3. Intermediate and variables results are allocated to memory registers.


Related Discussions:- Explain analysis and synthesis phase of a compiler

State about the mainframe computer, Mainframe computer Mainframe comput...

Mainframe computer Mainframe computers are very large, often can fill an entire room. They can store a large amount of information, can execute many tasks at the same time, can

Explain the working of assembler, Explain the working of Assembler? An ...

Explain the working of Assembler? An assembler is the computer program for translating assembly language fundamentally a mnemonic representation of machine language into object

Instruction set architecture - assembly language, Instruction Set Architect...

Instruction Set Architecture (ISA): The Instruction Set Architecture (ISA) is the part of the processor which is noticeable to the compiler writer or programmer. The ISA serve

What is java swing, Swing is a GUI toolkit for Java. It is one kind of the ...

Swing is a GUI toolkit for Java. It is one kind of the Java Foundation Classes (JFC). Swing haves graphical user interface (GUI) widgets such as text boxes, buttons, split-panes, a

What are interacting processes, What are interacting processes? Intera...

What are interacting processes? Interacting processes: The concurrent processes executing into the operating system are cooperating or interacting processes if they can be af

Illustrate the logical view of a system, Illustrate the Logical view of a s...

Illustrate the Logical view of a system The Logical view of a system serves to describe existence and meaning of key abstractions and mechanism which form problem space, or wh

Design a flash project, The only way to respond effectively to a design pro...

The only way to respond effectively to a design project is to first understand the topic well yourself. To do this you need to research the topic and ask yourself a series of quest

How to access the disk data, Q. How to Access the Disk Data? Disks oper...

Q. How to Access the Disk Data? Disks operate is semi-random mode of operation and generally referenced block wise. The data access time on a disk comprises two major component

Neural architectures, Neural architectures are appealing as mechanisms for...

Neural architectures are appealing as mechanisms for implementing intelligence for a number of reasons. Traditional AI programs tend to be brittle and overly sensitive to noise

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd