Skip to main content

Posts

Showing posts from January, 2019

PHASES OF COMPILER

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 ANALYS...

DYNAMIC MEMORY ALLOCATION

THE PROCESS OF ALLOCATING THE MEMORY AT RUNTIME IS CALLED DYNAMIC MEMORY ALLOCATION . LIBRARY ROUTIEN KNOWN AS MEMORY MANAGEMENT FUNCTION ARE USED FOR ALLOCATING AND FREEING THE MEMORY DURING EXECUTION OF PROGRAM . THESE FUNCTINS IS DEFINE IN 'stdlib.h' HEADER FILE . ALLOCATING BLOCK OF MEMORY - 1.) Malloc():-                 MALLOC()  IS A FUNCTION WHICH IS USED FOR ALLOCATING THE BLOCK OF MEMORY AT RUNTIME . THIS FUNCTION RESERVES BLOCK OF MEMORY AT  GIVEN SIZE AND RETURN A POINTER AS TYPE OF VOID . IF IT IS FAIL TO ALLOCATE ENOUGH SPACE AS SPECIFIED , IT RETURNS NULL POINTER .  Syntax- void*malloc(byte-size) . 2.) Calloc():-              Calloc() IS A FUNCTION WHICH IS USED FOR ALLOCATING AT RUNTIME  . CALLOC() FUNCTION IS USED FOR ALLOCATING MEMORY TO DERIVED DATA TYPE SUCH AS ARRAYS AND STRUCTURE . IF IT FAILS TO ALLOCATE ENOUGH SPACE AS SPECIFIED IT RETURNS NULL POINTER . ...

C TOKENS

C TOKENS:-                       TOKENS ARE THE GROUP OF CHARACTER THAT ARE USED FOR REPRESENTING AN IDENTITY . IN C LANGUAGE FOLLOWING TYPES OF TOKENS ARE USED. IDENTIFIER KEYWORDS  CONSTANT  OPERATORS  i.) IDENTIFIER:-                               IDENTIFIER ARE THE NAMES THAT ARE USED FOR IDENTIFYING AN ENTITIES .                    IDENTIFIER ARE THE NAMES WHICH ARE GIVEN TO VARIOUS PROGRAMS ELEMENTS SUCH AS VARIABLES , FUNCTIONS AND ARRAYS . IDENTIFIER MUST BE UNIQUE . ALSO REMEMBER , IDENTIFIER NAME MUST BE DIFFERENT FROM THE KEYWORDS . YOU CANNOT USE (int) IS A KEYWORD . SOME MAIN POINTS OF IDENTIFIER ARE:- * IDENTIFIER CONSIST OF BOTH LETTERS AND DIGITS . * AN IDENTIFIER CONSIST OF ALPHABETS , DIGITS AND UNDERSCORE * IT MUST NOT START WITH DIGITS . * C IS CASE...

SECONDARY DATA TYPES

IN OUR PREVIOUS POST WE HAVE DISCUSSED ABOUT  PRIMARY DATA TYPE AND NOW , WE DISCUSS ABOUT SECONDARY DATA TYPE . SECONDARY DATA TYPE:- ARRAY POINTER  STRUCTURE  UNION ENUM 1.) ARRAY:-                      ARRAY IS A COLLECTION OF SIMILAR ELEMENTS . THESE ELEMENTS COULD BE ALL int OR ALL floats OR ALL char ETC . AN ARRAY IS A FIXED SIZE , SEQUENCE , COLLECTION , OF ELEMENTS OF THE SAME DATA TYPES . THE ARRAY OF CHARACTERS CALLED STRING . THE ARRAY OF INTEGER & FLOAT CALLED  ARRAY . ARRAY IS ALSO KNOWN AS SUBSCRIPTED VARIABLE . ARRAY ELEMENTS ARE ALWAYS STORE IN CONTEGIOUS MEMORY LOCATION  . SOME EXAMPLES WHERE THE CONCEPT OF ARRAY- i.) LIST OF EMPLOYEE IN AN ORGANISATION ii.) LIST OF TEMPERATURE RECORD IN A DAY , OR A MONTH , OR A YEAR . iii.) LIST OF PRODUCT AND THEIR COST . *DECLARATION OD 1-D(DIMENTIONAL) ARRAY→ int a[10]; char a[30]; float a[10]; STORI...