WHAT IS COMPILER ?
A COMPILER IS A SOFTWARE WHICH CONVERT HIGH LEVEL PROGRAMMING LANGUAGE INTO A LOW LEVEL OBJECT CODE(BINARY CODE) IN MACHINE LANGUAGE , WHICH CAN BE UNDERSTOOD BY THE PROCESSOR . THE PROCESS OF CONVERTING HIGH LEVEL LANGUAGE INTO MACHINE LANGUAGE IS CALLED COMPILATION .
PHASES OF COMPILER
THERE ARE SIX PHASES OF COMPILER
1.) LEXICAL ANALYSIS:-
LEXICAL ANALYSIS IS A PROCESS IN WHICH COMPILER CHECK STREAM OF CHARACTER AND CONVERT INTO MEANINGFUL LEXEMES . IN OTHER WORDS IT READS THE PROGRAM AND CONVERT IT INTO TOKENS . TOKENS ARE DEFINED BY REGULAR EXPRESSION WHICH ARE UNDERSTOOD BY LEXICAL ANALYZER .
2.)SYNTAX ANALYSIS:-
SYNTAX ANALYSIS CHECK THE GRAMMAR OF THE SOURCE CODE . IT SOMETIMES CALLED PARSER . IT CONSTRUCT THE PARSE TREE . IT TAKES ALL TOKEN ONE BY ONE AND USES CONTEXT FREE GRAMMAR TO CONSTRUCT THE PARSE TREE .
3.)SEMANTIC ANALYSIS:-
SEMANTIC ANALYSIS CHECK THE STEPS OF SOURCE CODE .IT CONFIRM THAT THE SOURCE CODE IS WRITTEN IT SHOULD BE IN STEP BY STEP .SEMANTIC ANALYSIS CHECKS WHETHER THE PARSE TREE FOLLOWS THE RULES OF LANGUAGE .
4.) INTERMEDIATE CODE GENERATION :-
AFTER THE SEMANTIC ANALYSIS THE COMPILER GENERATE THE INTERMEDIATE CODE FOR THE SOURCE CODE OF TARGET MACHINE . INTERMEDIATE CODE CONVERT TO MACHINE LANGUAGE USING THE LAST TWO PHASES WHICH ARE PLATFORM DEPENDENT . THE INTERMEDIATE CODE SHOULD BE GENERATE IN SUCH A WAY THAT IT MAKE IT EASIER TO BE TRANSLATE INTO THE TARGET MACHINE CODE .
5.) CODE GENERATION:-
THE CODE GENERATOR TRANSLATE THE INTERMEDIATE CODE INTO A SEQUENCE OF RELOCATABLE MACHINE CODE .THE MAIN PURPOSE OF CODE GENERATOR IS TO WRITE A CODE THAT THE MACHINE CAN BE UNDERSTAND .THE OUTPUT IS DEPENDENT ON THE TYPE OF ASSEMBLER . THIS IS THE FINAL STAGE OF COMPILATION .
6.)CODE OPTIMIZATION:-
CODE OPTIMIZATION OPTIMIZE THE SOURCE CODE . OPTIMIZATION CAN BE ASSUMED AS SOMETHING THAT REMOVES UNNECESSARY CODE LINES , AND ARRANGE THE SEQUENCE OF STATEMENTS IN ORDER TO SPEED UP THE PROGRAM EXECUTION WITHOUT WASTING RESOURCE .OPTIMIZATION CAN BE CATEGORIES INTO TWO TYPES:-
- DEPENDENT
- INDEPENDENT
------------------------------------------------------------------------------------------------------------------------------------
FOR MORE KNOWLEDGE CLICK BELOW ↴
1.
2.
3.
4.
5.
6.
Comments
Post a Comment