Pep-8 Simulator
Introduction
Pep/8 is a virtual computer designed by Stanley Warford that has 39 machine-language instructions.We implemented 25/39 instructions in Java.This project adopts the Model-View-Controller (MVC) design pattern and agile methology.
collaborator: Caleb Chang, Angela Seidel, Kiet Truong
what is Virtual Computer
A hypotheticalmachine designed to contain the important features of a real computer that we want to illustrate
Team Schdule(Agile)
Architecture Overview
Functional Requirements
- The simulator shall be able to interpret machine language instructions (object code) and
assembly language instructions (source code). - The simulator shall implement the seven machine language instruction of stop execution,
load operand into A register, Store the contents of the A register in the operand, add the
operand to the A register, Subtract the operand from the A register, character input to the
operand, character output from the operand that was required in PRJ#01. - The simulator shall implement no less than 30 of the 39 instructions.
- The simulator shall implement 4 of 6 addressing modes.
- The simulator GUI shall display the internal state of the machine (CPU area in original
Pep/8 Program) and shall display the state of the memory. - The project classes shall be organized using the Model-View-Controller design pattern.
- The Controller class shall be the class that connects the interactions between all Modelrelated classes and the Visual-related classes.
- The classes of the program shall mimic the von Neuman computer architecture:
- The Input Device will be represented by the Input JTextArea stored in the GUI.
- The Control Unit will be represented by the Controller class.
- The Arithmetic/Logic Unit will be represented by the Instruction Types package whose
components will be controlled by the Controller class. - The Output Device will be represented by the JTextArea stored in the GUI.
- The Number Classes requirement shall be implemented by having the Converter Class
which will manage the translation of decimal, hex, and binary values throughout the
Controller class’s manipulation of model and view objects. - The Calculator Classes requirement shall be implemented through the presence of the
Instruction Types package which will help with basic operations like addition and
subtraction of valuesFront End Design