Preaload Image

Compiler Design

Compiler design

 Compiler Design

 Prerequisite for studying this subject are Data Structures, Theoretical computer science, Operating system. Computer Organization and Architecture, Microprocessor. Course Objectives of the subject Compiler Design are to understand the role and functioning of various system programs over application program.

To understand basic concepts and designing of assembler, Macro processor and role of static and dynamic loaders and linkers. To understand the need to follow the syntax in writing an application program and to learn the how the analysis phase of compiler is designed to understand the programmer‘s requirements without ambiguity. To synthesize the analysis phase outcomes to produce the object code that is efficient in terms of space and execution time. Course Outcomes of the subject System Programming and Compiler Construction are on successful completion of course learner will be able to identify the relevance of different system programs. Describe the various data structures and passes of assembler design. Identify the need for different features and designing of macros. Distinguish different loaders and linkers and their contribution in developing efficient user applications. Construct different parsers for given context free grammars. Justify the need synthesis phase to produce object code optimized in terms of high execution speed and less memory usage.

A system programming language is a programming language used for system programming; such languages are designed for writing system software, which usually requires different development approaches when compared with application software. Edsger Dijkstra refers to these language as Machine Oriented High Order Languages, or mohol. General-purpose programming languages tend to focus on generic features to allow programs written in the language to use the same code on different platforms. Examples of such languages include ALGOL and Pascal. This generic quality typically comes at the cost of denying direct access to the machine’s internal workings, and this often has negative effects on performance. In computing, a compiler is a computer program that translates computer code written in one programming language (the source language) into another language (the target language). The name “compiler” is primarily used for programs that translate source code from a high-level programming language to a lower level language (e.g., assembly language, object code, or machine code) to create an executable program.

Module Introduction to System Software consists of the following subtopics such as  Concept of System Software, Goals of system softwares, system program and system programming, Introduction to various system programs such as Assembler, Macro processor, Loader, Linker, Compiler, Interpreter, Device Drivers, Operating system, Editors, Debuggers. Module Assemblers consists of the following subtopics such as Elements of Assembly Language programming, Assembly scheme, pass structure of assembler, Assembler Design: Two pass assembler Design and single pass Assembler Design for Hypothetical / X86 family processor, data structures used. Module Macros and Macro Processor consists of the following subtopics such as Introduction, Macro definition and call, Features of Macro facility: Simple, parameterized, conditional and nested. Design of single pass macro processor, data structures used. Module Loaders and Linkers consists of the following subtopics such as Introduction, functions of loaders, Relocation and Linking concept, Different loading schemes: Relocating loader, Direct Linking Loader, Dynamic linking and loading. Module Compilers: Analysis Phase consists of the following subtopics such as Introduction to compilers, Phases of compilers: Lexical Analysis- Role of Finite State Automata in Lexical Analysis, Design of Lexical analyser, data structures used . Syntax Analysis- Role of Context Free Grammar in Syntax analysis, Types of Parsers: Top down parser- LL(1), Bottom up parser- Operator precedence parser, SLR Semantic Analysis, Syntax directed definitions. Module Compilers: Synthesis phase consists of the following subtopics such as Intermediate Code Generation: Types of Intermediate codes: Syntax tree, Postfix notation, Three address codes: Triples and Quadruples. Code Optimization: Need and sources of optimization, Code optimization techniques: Machine Dependent and Machine Independent. Code Generation: Issues in the design of code generator, code generation algorithm. Basic block and flow graph.


Prepare For Your Placements: https://lastmomenttuitions.com/courses/placement-preparation/

/ Youtube Channel: https://www.youtube.com/channel/UCGFNZxMqKLsqWERX_N2f08Q

Follow For Latest Updates, Study Tips & More Content!


/ Last Moment Tuitions

/ lastmomentdost

Course Features

  • Lectures 22
  • Quizzes 0
  • Duration 50 hours
  • Skill level All levels
  • Language English
  • Students 362
  • Certificate No
  • Assessments Yes


Average Rating

0 rating

Detailed Rating

5 Star
4 Star
3 Star
2 Star
1 Star

    1 Comment

  1. 1906950100028
    August 17, 2022


Leave A Reply

error: Content is protected !!