ICS 331: System
Software (981)
Programming Assignment # 3
Date: November  24, 1998                                                                                                 
              Due Date: December  8, 1998
 
Problem Statement:
  Design and implement a one-pass SIC/XE macro processor that reads
  an assembly program, as input, and produces an extended file, similar to the one produced
  in the textbook, as an output.
Detailed Requirements
  
  - The developed macro processor should be similar to the one in the textbook. It should
    alternate between macro definition and macro expansion.
 
  - The macro processor should read an input file "xxx.asm" and produces an output
    file "xxx1.asm". The output file should be similar to the one in the textbook.
 
Deliverable
Each team should submit, on the due date of the assignment, the
following:
  - A detailed algorithm of the loader developed similar to the one shown in the textbook on
    pp. 178-179. The algorithm should be typed. This will get 30% of the project grade 
 
  - Extra marks will be given for a flowchart of the algorithm using any drawing application
    such as ABC Flowcharter of Visio.
 
  - A print out of the "C" code for the assignment together with the input file
    and the output files. The program will get 70% of the project's grade. The program
    should be well documented. Documentation will get 14% of the project's grade. The
    program should be used and tested with the object program in Figure 4.1 in pp. 178 in the
    textbook. 
 
  - An electronic copy of the items in 1-3 above in a 3.5 floppy disk.
 
  - The team may be asked to make a demo of their system.