SIC Simulator

**SIC Simulator

**The SIC Simulator must run on a UNIX Based system. It must execute a SIC program that has been assembled by the SIC Assembler. It should have the following commands:

START --- S, RUN --- R, ENTER --- E, DUMP --- D, HCOUNT --- H, BREAKPOINT --- B, QUIT --- Q

P.S. The previous SIC Simulator program you completed for another user in July '03 hopefully is similar to the specifications my professor assigned below. The previous user did mention using a textbook by author: Leland Beck, which is the same my class is using "Systems Programming"...thank you for your consideration, please accept my project!!

## Deliverables

1) The project must be written using the C++ language (not Visual C++). Each software package must be designed to be user friendly and developed on a UNIX based system. All modules must be documented in the following manner.

/* Module name:


Date: Last modification date:


Module inputs:

Module outputs:

Known bugs or special requirements:


2) Installation package that will install the software (in ready-to-run condition) on the platform(s) specified in this bid request.

3) Exclusive and complete copyrights to all work purchased. (No GPL, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site).

Below are the specifications from the professor, hopefully it matches what you have already completed for the previous user:

**SIC Simulator****

**The SIC Simulator must run on a UNIX Based system. It must execute a SIC program that has been assembled by the SIC Assembler. It should have the following commands:

START --- S, RUN --- R, ENTER --- E, DUMP --- D, HCOUNT --- H, BREAKPOINT --- B, QUIT --- Q


_Enter S to cause the simulator to read 128 bytes of date from device 00 into memory, starting at address 0000.


_This command causes the simulator to begin execution of SIC machine language instructions from a program in memory.


R address

If an address is specified in the command, the next instruction to be executed is the one starting at that address. If no address is specified, the next instruction to be executed is the one following the last previously executed instruction or the instruction beginning at address 0000.

Execution continues until an error occurs or the number of instructions specified by HCOUNT have been executed or a breakpoint specified by BKPT is reached.


_This command is used to enter values into registers or memory locations. The two forms are:

E Rn xxxxxxxx

E address xxxxxxxx

Rn is a register identifier (RA, RX, RT, etc.) followed by the data to be entered into the register given in hexadecimal (two hex. digits)

In the second case, any number of bytes of data may by entered into memory, starting at the specified address. Each byte must be a hex digit.


_This command is used to display the contents of registers and memory locations. Three possible forms:


D startaddr - endaddr

D R, startaddr - endaddr

If R is specified, the contents of ALL registers are displayed in hexadecimal, along with the current value of the condition code. If startaddr - endaddr are specified, the contents of the indicated range of addresses are displayed; maximum of 320 (decimal) bytes can be dumped at one time. Memory should be displayed in rows of 16 bytes each, the actual dump may include some bytes before startaddr and some after endaddr.

## Platform


_This command is used to specify the maximum number of SIC instructions to be executed in response to a RUN command.

H n

where n is the number of given by 1 to 4 decimal digits. Maximum number is 9999. After n instructions have been executed, the simulator displays:


P = xxxxxxxx

where xxxxxxxx is the current address in the program counter. The resume execution enter R.


_This command is used to set a breakpoint to control instruction execution. The form is

BKPT xxxxxxxx

where xxxxxxxx is the address to stop execution. When you reach a breakpoint print:


p = xxxxxxxx


_This command is used to terminate the simulation.

Habilidades: Reescrever Artigos, Montagem, Programação C, Engenharia, Linux, MySQL, PHP, Research Writing, Arquitetura de software, Teste de Software, Tradução, UNIX

Veja mais: sic instruction set simulator, what to name your resume, what should a resume include, what is r programming, what is a module in programming, what is a class in programming, unix systems programming, unix programming language, the r programming language, systems programming language, systems programming, systems developed using php, r-rx, r programming class, rn resume, resume rn, ra programming, q programming language, programming what is a class, programming resume, programming language r, programming instruction, machine language programming, hex programming, h and p form

Acerca do Empregador:
( 0 comentários ) United States

ID do Projeto: #2985649

1 freelancer is bidding on average $47 for this job


See private message.

$46.75 USD in 30 dias
(8 Comentários)