A comprehensive toolkit for simulating and assembling simple assembly language instructions.
The Simple Simulator and Assembler Project provides a set of tools to assemble and simulate simple assembly language programs. This project is designed to help understand the basics of how assemblers and simulators work by providing a hands-on toolkit for assembling and simulating instructions.
Assembler: Converts assembly language instructions into machine code.
Simulator: Executes the machine code instructions and provides an environment to test and debug assembly programs.
Automated Testing: Comprehensive testing suite to validate the correctness of the assembler and simulator.
Python 3.x
Clone the repository:
git clone https://github.com/yourusername/Simple_Simulator_Assembler_Project.git
cd Simple_Simulator_Assembler_Project
cd Simple_Simulator_Assembler/Simple-Assembler
python assembler.py
cd ../SimpleSimulator
python simulator.py
Run automated tests to ensure everything is set up correctly:
cd ../automatedTesting
python run
The assembler translates assembly code into machine code. To use the assembler, provide your assembly code in the appropriate format, and run the assembler.py script.
The simulator executes machine code generated by the assembler. Run the simulator.py script to start the simulation.
Automated tests ensure the reliability and correctness of the assembler and simulator. The tests cover various scenarios and edge cases to validate the functionality of the project.
Q: What is the purpose of this project?
A: This project is designed to help users understand the basics of assemblers and simulators by providing a practical toolkit for converting and executing simple assembly language instructions.
Q: What languages are supported by the assembler?
A: The assembler supports a custom-designed simple assembly language tailored for educational purposes.
Q: How do I run tests?
A: Navigate to the automatedTesting directory and execute the run script using Python.
Q: Can I contribute to this project?
A: Yes, contributions are welcome! Please create a PR to add new features, fix bugs, or improve documentation.
Contributions are always welcome! Please create a PR to add features, fix bugs, or improve documentation.
This project is licensed under the MIT license.
Give a ⭐️ if this project helped you!