Implementation of One pass MASM Assembler
The goal of our project is to Implement 'one pass assembler' for MASM, This assembler generates the symbol table and object code for execution. We use Windows or Linux Operating System and c\c++ languagess. An assembler must perform certain functions such as translating opcodes to their machine equiliant and assigning machine addresses to symbolic labls useed by the programers An MASM(Microsoft's Assembler) assembler languages program is written as a collection of segments, each segments is defined as belonging to a perticular class corresponding to it's contents, commonly used classes are CODE DATA CONST STACK
It only generates the object code and the machine can't directly execute it, the object code module is linked with separately assembled module and the linker softwar is required .
Requirments to Implement the Assembler
Language Tool: -C\C++ Operating System: -Linux Input For Assembler: - .asm file output of the Assembler: -Symbol table, opcod table,and Object -code,along with header,text,and end records,
Submited By: Shanmukha Swamy : 1SI11CS417 Mallu : 1SI11CS405
Steps in this program development and execution can be understood using the following block daigram.
ALP Written in Text editor
Assembler
Object Code Modules
Linker
Linked Modules
Loader