Secondary SchoolsSome time ago, I wanted to show how a computer worked internally but did not like (or think accurate) any of the ones I found. So I wrote my own using a model computer called the LMC (Little Man Computer) as the machine code. Then some exam boards set coursework on the LMC and I suddenly
got lots of users. Particularly as you can turn the model off and just use it as a simulator to
run the LMC assembly language. You can find it here. After running it, click HELP for more information.
I was unhappy that the LMC was a model of a computer from the 1970's and wanted to do something more modern that was binary based and had multiple registers. At least one exam board is also now using an
ARM like instruction set. So I have written a very simplified ARM like RISC Simulator that you can find here. It has lots of simplifications, like 16 bit words and instructions but at least brings us into this century. After running it, click HELP for more information.
I have also produced some other simulations in conjuction with Richard Pawson.
AQA Simulation
This simulation implements "only" the instructions that the AQA exam board uses in their examinations. There are vague areas in the AQA specification and I have had to make choices - such as a 32 bit word size and using ARM instruction encodings. The only serious extension is the inclusion of an indirect addressing mode. You can find it at www.peterhigginson.co.uk/AQA. There is also a project for this simulation written by Richard Pawson Write a complete Snake game in AQA Assembly Language.
ARMlite Simulator
In 2020, I released ARMlite in conjunction with a new A-level textbook on Assembly Language Programming written by Richard Pawson. ARMlite has more memory (1 MB), a cleaner interface, an extended instruction set (interrupts, subroutines, a stack etc.) and is much higher performance (1-10 million instructions per second, depending on your browser and computer). You can get the student version of Richard's book from the ARMlite documentation page or the teachers' version by registering with CAS.
|