Overview: Comparison of machine language, assembly language and high level
languages, External and internal representation of instructions and data. Data allocation
structures, search structures and addressing modes. Activities and system software for
program generation, translation and execution. Editors for source code and object
code/executable code files.
Units: II
Assemblers: Assembly language specification. Machine dependent and independent
features of assembler. Classification of assemblers. Pass structure of assemblers (problem
and associated for IBM-PC.
Units: III
Loader and Linkers: Functions and classification. Machine dependent and independent
features of loaders, Design of bootstrap, absolute and relocatable loaders, Design of linker.
Case study of MS-DOS linker.
Units: IV
Macro processors: Macro definition, call and expansion. Macro processor algorithm and
data structure. Machine independent features (parameters, unique labels, conditional
expansion, nesting and recursion).Pass structure and design of microprocessor and macro
assembler, Case study of MASM macro processor.
Units: V
High level language processor: HLL specification: Grammars and parse trees, expression
and precedence. Lexical analysis: Classification of tokens, scanning methods, character
recognition, lexical ambiguity. Syntactic analysis: Operator precedence parsing, recursive
descent parsing. Symbol Table Management: Data structure for symbol table, basing
functions for symbols, overflow technique, block structure in symbol table.