Course  
  Menu  
  Course  
 Description 
  Course  
  Outline  
 Assignments 
 & Doc Specs 
  Software  
  Summary  
  Class  
  Notes  
 Pseudocode 
  Modules  
  SIC/XE  
  Reference  
 Course  
 Supplement 
CNW Home
Spring Term, 2006  .
                                                                                                  
Text:
System Software: An Introduction to Systems Programming
by Beck (Addison-Wesley)
Suggested Reference:
The C Programming Language, 2/E
by Kernighan and Ritchie (Prentice-Hall)
Course Prerequisites:
COP 3503 (Computer Science II)
Description:
The purpose of this course is to provide background in fundamental types of system software, particularly assemblers, loaders, macro processors, and linkage editors. More complex examples of system software (such as compilers and operating systems) will be discussed in less detail. The course will employ a simplified instructional computer (SIC and SIC/XE) to illustrate machine level system software requirements. A working simulator for SIC is provided via the UNF Osprey system. A major objective of the course will be for students to provide a working (cross) assembler for SIC and part of SIC/XE. The SIC assembler will be constructed using C as the systems programming language. Early exercises will require hand assembling SIC (or SIC/XE) code. An operating assembler will also be used to process assembly programs for execution on the simulator. Student assemblers will be expected to produce SIC machine code ready to be loaded into the SIC simulator (via a supplied loader) to verify function. All student program submissions will conform to course documentation requirements.