Skip to content

Simple pass 1 and pass 2 of SIC two-pass Assembler made in C

License

Notifications You must be signed in to change notification settings

chimms1/SIC-Assembler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SIC-Assembler

This is a naïve implementation of two-pass SIC Assembler by Shreyas Joshi and Yash Deshpande done as part of System Software course during Undergrad.

Theory and algorithms are referred from the book 'System Software - An introduction to Systems Programming' by Leland L. Beck

Along with the final version, various iterations of development are also included which can be used as a reference by the interested ones.

Usage

The program can be used in the following steps:

  1. Keep the SIC input assembly program in input.txt and OPTABLE in OPTAB.txt
  2. Run the pass1/pass2 code which will generate corresponding output files (intermediate for pass1 and object-program for pass2).
Pass1 of few machine independent features of SIC such as Program Blocks, ORG, EQU... are achieved by modifications in the main program.
Similarly, SIC assembler code is changed to SICXE assembler

Note:- We have used the bruteforce approach while programming the algorithms, which can also be implemented in various efficient ways. The code may also lack documentation in few places and might contain some workarounds to resolve errors which can be handled in a better way

Releases

No releases published

Packages

No packages published

Languages