SlideShare a Scribd company logo
3
Most read
5
Most read
13
Most read
Presentation On Topic
Life cycle of a souce program
Presented By - Abhay Kumar
MCA IVth Semester
Life cycle of a souce program
• A computer program goes through many phases from its development to execution. From
the human readable format (source code) to binary encoded computer instructions
(machine code).
• In life cycle of a source program the exact procedure behind the compilation task and
step by step evaluation of source code are High level languages, Low level languages,
Pre-processors, Translators, Compilers, Assembler, Interpreters, Linkers and Loaders.
Input
Translator
Linker
Loader
Target Program
Execution by
Hardware
Pre - processor
Sourse Program
Output
High level language
Pure High level language
Low level language
Executable Code
Load the program
Execution Process
Life cycle of a souce program
High level language
• High level languages are similar to the human language. Unlike low level languages, high
level languages are programmers friendly, easy to code, debug and maintain.
• High level language provides higher level of abstraction from machine language. They
do not interact directly with the hardware. Rather, they focus more on the complex
arithmetic operations, optimal program efficiency and easiness in coding.
• High level languages are very much closer to English language and uses English
structure for program coding.
• Examples of high level languages are Visual Basic, PHP, Python, Delphi, FORTRAN,
COBOL, C, Pascal, C++, LISP, BASIC etc.
High level language
Compiled Language
Interpreted
Language
Low level languages
• Low level languages are languages which can be directly understand by machines. It is
programming language having little or no abstraction. These languages are described as
close to hardware.
• Examples of low level languages are machine languages, binary language, assembly level
languages and object code etc.
Low level language
Assembley Language Machine Language
Source code
• Source code is a plain text file containing computer instructions written in human
readable format. It is simple text file written by programmers.
• It contain instructions in high-level language that the programmer intended to perform
by a program. Source code is later compiled and translated to Object code.
# include<stdio.h>
#include<conio.h>
void maid()
{
printf(“Hello Abhay”);
}
getch();
Object code
• Object code is a sequence of computer instructions in an intermediate language. It is generated
by compiler after the compilation process.
• The compiler reads source code written in high-level language and translates it to an
intermediate language.
• After translation a file containing instructions encoded in some intermediate language is
generated called object code.
101001010010
010101001010
101010001001
001110101001
110010010101
0010011011
# include<stdio.h>
#include<conio.h>
void maid()
{
printf(“Hello Abhay”);
}
getch();
Source Code Object Code
Compiler
Machine code
• Machine code is a set of computer instructions written or translated in machine
language.
• It is the final executable file generated by compiling, assembling or linking several
object files together. It is the only code executed by the CPU.
101001010010
010101001010
101010001001
001110101001
110010010101
0010011011
Machine Code
Pre-processor
• Pre-processor is a computer program that
manipulates its input data in order to generate
output which is ultimately used as input to some
other program or compiler.
• Input of pre-processor is high level languages and
output of pre-processor is pure high level
languages.
• Pure high level language refers to the language
which is having Macros in the program and File
Inclusion.
• Macro means some set of instructions which can
be used repeatedly in the program.
• Macro preprocessing task is done by pre-
processor. Pre-processor allows user to include
header files which may be required by program
known as File Inclusion.
Assembler
Linker/ Loader
Pre - processor
High level language
Pure High level language
Assembley Language
Executable Code
Machine Code
Compiler
Translator
• Translator is a program that takes input as a source program and converts it into another form as
output.
• Translator takes input as a high level language and convert it into low level language.
• There are mainly three types of translators -
 Compilers
 Assemblers
 Interpreters
High level language
Translator
Low Level Language
Errors
Compiler
• Compiler reads whole program at a time and generate errors (if occurred). Compiler generates
intermediate code in order to generate target code. Once the whole program is checked, errors
are displayed.
• Example of compilers is Borland Compiler, Turbo C Compiler. Generated target code is easy to
understand after the process of compilation.
• The process of compilation must be done efficiently. There are mainly two parts of compilation
process.
Source Code
Error Message
Compiler Target code
Assembler
• Assembler is a translator which takes assembly language as an input and generates
machine language as an output.
• Output of compiler is input of assembler which is assembly language. Assembly code is
mnemonic version of machine code.
• Binary codes for operations are replaced by names. Binary language or relocatable
machine code is generated from the assembler.
• Assembler uses two passes. Pass means one complete scan of the input program.
High Leve Language
Assembler
Compiler
Low Level Language
Assembley language
Machine code
Interpreter
• Interpreter performs the line by line execution of source code. It takes single instruction
as an input, reads the statement, analyzes it and executes it. It shows errors immediately
if occur .
• Interpreter is machine independent andwhich does not produces object code or
intermediate code as it directly generates the target code.
• Many languages can be implemented using both compilers and interpreters such as
BASIC, Python, C#, Pascal, Java, and Lisp etc.
• Example of interpreter is UPS Debugger.
Source Code Interpreter Target code
Linker and Loader
•Linker combines two or more separate object
programs. It combines target program with other
library routines.
•Linker links the library files and prepares single
module or file. Linker also solves the external
reference.
•Linker allows us tocreate single program from
several files.
•Loader is utility program which takes object code as
input and prepares it for execution. It also loads the
object code into executable code.
•Loader refers to initializing of execution process.
Tasks done by loaders are mentioned below.
Allocation
Relocation
Link editing
Loading
LinkerAssembler
Loader
Object Code
Executable code
Source Code
Refrences -
• http://www.rroij.com/open-access/life-cycle-of-source-program--compiler-design-.pdf
• https://codeforwin.org/2017/05/high-level-languages-advantages-disadvantages.html
Life cycle of a computer program

More Related Content

PPTX
Iot based health monitoring system
PPTX
Loops in C Programming
PPT
Assemblers: Ch03
PPTX
Single Pass Assembler
PPTX
Data storage and indexing
PPTX
Starting a code Club proposal
PDF
Stereo vision
PPTX
System software - macro expansion,nested macro calls
Iot based health monitoring system
Loops in C Programming
Assemblers: Ch03
Single Pass Assembler
Data storage and indexing
Starting a code Club proposal
Stereo vision
System software - macro expansion,nested macro calls

What's hot (20)

PPTX
Ch 4 linker loader
PPTX
Linking in MS-Dos System
PPTX
Unit 4 sp macro
PPTX
Language processing activity
PPTX
Linker and Loader
PPTX
Compiler vs interpreter
PPTX
Introduction to system programming
PPTX
Fundamentals of Language Processing
PPTX
Design of a two pass assembler
PPTX
Introduction to loaders
PPT
Software tools
PPT
Introduction to Compiler design
PPTX
Types of Compilers
PPTX
Fundamental design concepts
PPTX
Two pass Assembler
PDF
Lecture 01 introduction to compiler
PPTX
Compiler construction tools
PDF
Introduction to systems programming
PPTX
Loaders ( system programming )
Ch 4 linker loader
Linking in MS-Dos System
Unit 4 sp macro
Language processing activity
Linker and Loader
Compiler vs interpreter
Introduction to system programming
Fundamentals of Language Processing
Design of a two pass assembler
Introduction to loaders
Software tools
Introduction to Compiler design
Types of Compilers
Fundamental design concepts
Two pass Assembler
Lecture 01 introduction to compiler
Compiler construction tools
Introduction to systems programming
Loaders ( system programming )
Ad

Similar to Life cycle of a computer program (20)

PDF
Compilerandinterpreterghhhjjjjjjjjnnn.pdf
PPTX
basic programming introduction about java
PPTX
Introduction to Compilers
PPTX
Computer Science guide to C Unit-I Translator.pptx
PPTX
Lec 1 Compiler Construction (CC) CC.pptx
PPTX
Insight into progam execution ppt
PPTX
Introduction_to_Programming.pptx
PPTX
Introduction to Programmihhbbhhbbbng.pptx
PPT
Introduction to C for Btech 1st year.ppt
PPTX
lce1 مترجمات.pptx
PPTX
Computer language
PPTX
Intro to programming languages by 4.pptx
PPTX
COMPILER DESIGN OPTIONS
PPTX
Compiler Construction from very basic start
PPT
Compiler Design Basics
PPTX
Compiler Construction-1 for bs computer scinece.pptx
PPTX
Compiler Design Introduction
DOCX
COMPILER DESIGN.docx
DOC
Assembler
PPTX
Language processors
Compilerandinterpreterghhhjjjjjjjjnnn.pdf
basic programming introduction about java
Introduction to Compilers
Computer Science guide to C Unit-I Translator.pptx
Lec 1 Compiler Construction (CC) CC.pptx
Insight into progam execution ppt
Introduction_to_Programming.pptx
Introduction to Programmihhbbhhbbbng.pptx
Introduction to C for Btech 1st year.ppt
lce1 مترجمات.pptx
Computer language
Intro to programming languages by 4.pptx
COMPILER DESIGN OPTIONS
Compiler Construction from very basic start
Compiler Design Basics
Compiler Construction-1 for bs computer scinece.pptx
Compiler Design Introduction
COMPILER DESIGN.docx
Assembler
Language processors
Ad

Recently uploaded (20)

PDF
NewMind AI Monthly Chronicles - July 2025
PDF
KodekX | Application Modernization Development
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPT
Teaching material agriculture food technology
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Empathic Computing: Creating Shared Understanding
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
A Presentation on Artificial Intelligence
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
MYSQL Presentation for SQL database connectivity
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Modernizing your data center with Dell and AMD
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
NewMind AI Monthly Chronicles - July 2025
KodekX | Application Modernization Development
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Teaching material agriculture food technology
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
NewMind AI Weekly Chronicles - August'25 Week I
Empathic Computing: Creating Shared Understanding
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
The AUB Centre for AI in Media Proposal.docx
Spectral efficient network and resource selection model in 5G networks
A Presentation on Artificial Intelligence
Dropbox Q2 2025 Financial Results & Investor Presentation
Encapsulation_ Review paper, used for researhc scholars
MYSQL Presentation for SQL database connectivity
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Modernizing your data center with Dell and AMD
Advanced methodologies resolving dimensionality complications for autism neur...

Life cycle of a computer program

  • 1. Presentation On Topic Life cycle of a souce program Presented By - Abhay Kumar MCA IVth Semester
  • 2. Life cycle of a souce program • A computer program goes through many phases from its development to execution. From the human readable format (source code) to binary encoded computer instructions (machine code). • In life cycle of a source program the exact procedure behind the compilation task and step by step evaluation of source code are High level languages, Low level languages, Pre-processors, Translators, Compilers, Assembler, Interpreters, Linkers and Loaders.
  • 3. Input Translator Linker Loader Target Program Execution by Hardware Pre - processor Sourse Program Output High level language Pure High level language Low level language Executable Code Load the program Execution Process Life cycle of a souce program
  • 4. High level language • High level languages are similar to the human language. Unlike low level languages, high level languages are programmers friendly, easy to code, debug and maintain. • High level language provides higher level of abstraction from machine language. They do not interact directly with the hardware. Rather, they focus more on the complex arithmetic operations, optimal program efficiency and easiness in coding. • High level languages are very much closer to English language and uses English structure for program coding. • Examples of high level languages are Visual Basic, PHP, Python, Delphi, FORTRAN, COBOL, C, Pascal, C++, LISP, BASIC etc. High level language Compiled Language Interpreted Language
  • 5. Low level languages • Low level languages are languages which can be directly understand by machines. It is programming language having little or no abstraction. These languages are described as close to hardware. • Examples of low level languages are machine languages, binary language, assembly level languages and object code etc. Low level language Assembley Language Machine Language
  • 6. Source code • Source code is a plain text file containing computer instructions written in human readable format. It is simple text file written by programmers. • It contain instructions in high-level language that the programmer intended to perform by a program. Source code is later compiled and translated to Object code. # include<stdio.h> #include<conio.h> void maid() { printf(“Hello Abhay”); } getch();
  • 7. Object code • Object code is a sequence of computer instructions in an intermediate language. It is generated by compiler after the compilation process. • The compiler reads source code written in high-level language and translates it to an intermediate language. • After translation a file containing instructions encoded in some intermediate language is generated called object code. 101001010010 010101001010 101010001001 001110101001 110010010101 0010011011 # include<stdio.h> #include<conio.h> void maid() { printf(“Hello Abhay”); } getch(); Source Code Object Code Compiler
  • 8. Machine code • Machine code is a set of computer instructions written or translated in machine language. • It is the final executable file generated by compiling, assembling or linking several object files together. It is the only code executed by the CPU. 101001010010 010101001010 101010001001 001110101001 110010010101 0010011011 Machine Code
  • 9. Pre-processor • Pre-processor is a computer program that manipulates its input data in order to generate output which is ultimately used as input to some other program or compiler. • Input of pre-processor is high level languages and output of pre-processor is pure high level languages. • Pure high level language refers to the language which is having Macros in the program and File Inclusion. • Macro means some set of instructions which can be used repeatedly in the program. • Macro preprocessing task is done by pre- processor. Pre-processor allows user to include header files which may be required by program known as File Inclusion. Assembler Linker/ Loader Pre - processor High level language Pure High level language Assembley Language Executable Code Machine Code Compiler
  • 10. Translator • Translator is a program that takes input as a source program and converts it into another form as output. • Translator takes input as a high level language and convert it into low level language. • There are mainly three types of translators -  Compilers  Assemblers  Interpreters High level language Translator Low Level Language Errors
  • 11. Compiler • Compiler reads whole program at a time and generate errors (if occurred). Compiler generates intermediate code in order to generate target code. Once the whole program is checked, errors are displayed. • Example of compilers is Borland Compiler, Turbo C Compiler. Generated target code is easy to understand after the process of compilation. • The process of compilation must be done efficiently. There are mainly two parts of compilation process. Source Code Error Message Compiler Target code
  • 12. Assembler • Assembler is a translator which takes assembly language as an input and generates machine language as an output. • Output of compiler is input of assembler which is assembly language. Assembly code is mnemonic version of machine code. • Binary codes for operations are replaced by names. Binary language or relocatable machine code is generated from the assembler. • Assembler uses two passes. Pass means one complete scan of the input program. High Leve Language Assembler Compiler Low Level Language Assembley language Machine code
  • 13. Interpreter • Interpreter performs the line by line execution of source code. It takes single instruction as an input, reads the statement, analyzes it and executes it. It shows errors immediately if occur . • Interpreter is machine independent andwhich does not produces object code or intermediate code as it directly generates the target code. • Many languages can be implemented using both compilers and interpreters such as BASIC, Python, C#, Pascal, Java, and Lisp etc. • Example of interpreter is UPS Debugger. Source Code Interpreter Target code
  • 14. Linker and Loader •Linker combines two or more separate object programs. It combines target program with other library routines. •Linker links the library files and prepares single module or file. Linker also solves the external reference. •Linker allows us tocreate single program from several files. •Loader is utility program which takes object code as input and prepares it for execution. It also loads the object code into executable code. •Loader refers to initializing of execution process. Tasks done by loaders are mentioned below. Allocation Relocation Link editing Loading LinkerAssembler Loader Object Code Executable code Source Code
  • 15. Refrences - • http://www.rroij.com/open-access/life-cycle-of-source-program--compiler-design-.pdf • https://codeforwin.org/2017/05/high-level-languages-advantages-disadvantages.html