Skip to content

Instantly share code, notes, and snippets.

View balaji-venkatesh's full-sized avatar

Balaji Venkatesh balaji-venkatesh

View GitHub Profile
@balaji-venkatesh
balaji-venkatesh / assembler.py
Last active December 4, 2022 06:17
ECE253 Project Assembler
import sys, re # written by Balaji Venkatesh
DEPTH = 256
DUAL_REG_INSTR = {'LOAD': 0b0000, 'STORE': 0b0010, 'ADD': 0b0100, 'SUB':0b0110, 'NAND': 0b1000,
'VLOAD': 0b1010, 'VADD': 0b1110, 'VSTORE': 0b1100}
BRANCH_INSTR = {'BZ':0b0101, 'BNZ':0b1001, 'BPZ':0b1101}
NAMESPACE = ['LOAD','STORE','ADD','SUB','VLOAD','VADD','VSTORE','NAND','BZ','BNZ','BPZ','ORI',
'SHIFT','SHIFTL','SHIFTR','STOP','NOP','K0','K1','K2','K3','V0','V1','V2','V3','DB','ORG']
def assembler(inFilename, outFilename, memFilename): # main assembler