You are on page 1of 13

Presented By: Bilal Ali

Usama Naveed
Presented To: Mam Zoobia Fatima
Subject: Compiler Construction

Institution: NCBA&E
Introduce myself

Bilal Ali
Student Of BSCS
Roll No: BSCS-S20-272
Language Processing System
Introduction
This is a combination of programs such as preprocessors,
compilers, assemblers, loaders and links which work
together to convert source code written in a high level
language such as java, c++ to executable target machine
code.
Diagram of Language Processing System
Pre-Processor
High-Level Language − If a program includes #define or #include directives,
including #include or #define, it is known as HLL.

Pre-Processor −
• In preprocessing, HLL converted to pure HLL
• Preprocessor removes the preprocessor directives (#include<stdio.h>)
And will add the respective files i.e., file inclusion.

Pure HLL − It means that the program will not contain any # tags. These #
tags are also known as preprocessor directives.
Functions

A pre-processor can implement the following functions −

•Macro processing 

•File inclusion 

•Rational preprocessor 

•Language Extensions 
Introduce myself

Usama Naveed
Student Of BSCS
Roll No: BSCS-S20-273
Compiler
The compiler takes the modified code as input and produces the target
code as output.
Assembler

 The assembler takes the target code as input and


produces real locatable machine code as output.
 

Protection
Loader and Linker
Loader: The loader keeps the linked program in the main memory.
Linker: Linker or link editor is a program that takes a collection of objects
(created by assemblers and compilers) and combines them into an executable
program.
Executable code: It is low-level and machine-specific code that the machine
can easily understand. Once the job of the linker and loader is done the object
code is finally converted it into executable code. 
Any Questions

You might also like