As a part of "The C Programming Language" course, creating a two pass assembler for a fictional computer running on a 15 Bit per byte basis. The project required fundamental knowledge of Hash Tables, Linked Lists, Digital Design, Encapsulation and Number System Conversions, Struct, Union, Bitfields and Working with Files.
Project Description: Create an assembler for a standard assembly language while maintaining proper control of the input, output and errors. The project was entirely written in C with C90 protocols using Ubunto 16.04 (running on Linux).
Final Grade: 95 Points