System Programming: As per CE, CSE, IT and ICT - B.E 5th semester syllabus
ISBN: 9789351198161
436 pages
eBook also available for institutional users
For more information write to us at: acadmktg@wiley.com
Description
This book provides information about language processors and introduces you to design and implementation of various types of software, such as assemblers, macros, loaders and linkers. Apart from these, you will also learn about compilers, aspects of compilation, memory allocation, compilation of expression and control structure, code optimization and interpreters.
Chapter 1: Overview of System Software
1.1 Software
1.2 Software Hierarchy
1.3 System Programming
1.4 Machine Structure
1.5 Interfaces
1.6 Address Space
1.7 Computer Languages
1.8 Life Cycle of a Source Program
1.9 System Software Development
1.10 Levels of System Software
Chapter 2: Overview of Language Processors
2.1 Programming Languages and Language Processors
2.2 Language Processing Activities
2.3 Fundamentals of Language Processing
2.4 Symbol Tables
2.5 Data Structures for Language Processing
Chapter 3: Assemblers
3.1 Assemblers
3.2 Elements of Assembly Language Programming
3.3 Design of Assembler
3.4 Assembler Design Criteria
3.5 Types of Assemblers
3.6 Assembler for Intel x86
3.7 Algorithm for Single-Pass and Multi-Pass Assemblers
3.8 Advanced Assembly Process
3.9 Variants of Assemblers
3.10 Design of Two-pass Assembler
Chapter 4: Macro and Macro Processors
4.1 Macro and Macro Processors
4.2 Macro Definition and Call
4.3 Macro Expansion
4.4 Nested Macro Facility
4.5 Advanced Macro Facilities
4.6 Design of Macro Preprocessor
4.7 Design of Macro Assembler
4.8 Functions of Macro Processor
4.9 Basic Tasks of Macro Processor
4.10 Design Features and Issues of Macro Processor
4.11 Macro Processor Design Options
4.12 Two-pass Macro Processors
4.13 One-pass Macro Processors
Chapter 5: Linkers and Loaders
5.1 Basic Linker and Loader Functions
5.2 Relocation and Linking Concepts
5.3 Design of Linker
5.4 Relocating and Self-Relocating Programs
5.5 Linking in MS DOS
5.6 Linking of Overlay Structured Programs
5.7 Dynamic Linking Loaders
5.8 Different Loading Schemes
5.9 Design of Absolute Loaders
5.10 Design of Direct-Linking Loaders
Chapter 6: Scanning and Parsing
6.1 Programming Language Grammar
6.2 Classification of Grammar
6.3 Ambiguity in Grammar Specifications
6.4 Scanning
6.5 Parsing
6.6 Top-down Parsing
6.7 Bottom-up Parser
6.8 Language Processor Development Tools
Chapter 7: Compilers
7.1 Compilers
7.2 Causes of Large Semantic Gap
7.3 Binding and Binding Time
7.4 Scope Rules
7.5 Data Structures Used in Compiling
7.6 Memory Allocation
7.7 Compilation of Expressions
7.8 Compilation of Control Structure
7.9 Code Optimization
Chapter 8: Interpreters and Debuggers
8.1 Overview of Interpretation
8.2 Benefits of Interpretation
8.3 Java Language Environment
8.4 Java Virtual Machine
8.5 Types of Errors
8.6 Debugging Procedures
8.7 Classification of Debugging
Summary
Key Terms
Review Exercise
True or False
Multiple Choice Questions
Descriptive Questions