LMC Simulator: CPU Simulator – VB.NET Version

KS3 Computer Science

11-14 Years Old

48 modules covering EVERY Computer Science topic needed for KS3 level.

GCSE Computer Science

14-16 Years Old

45 modules covering EVERY Computer Science topic needed for GCSE level.

A-Level Computer Science

16-18 Years Old

66 modules covering EVERY Computer Science topic needed for A-Level.

KS3 Low-level Programming (14-16 years)

  • An editable PowerPoint lesson presentation
  • Editable revision handouts
  • A glossary which covers the key terminologies of the module
  • Topic mindmaps for visualising the key concepts
  • Printable flashcards to help students engage active recall and confidence-based repetition
  • A quiz with accompanying answer key to test knowledge and understanding of the module

A-Level Assembly Languages (16-18 years)

  • An editable PowerPoint lesson presentation
  • Editable revision handouts
  • A glossary which covers the key terminologies of the module
  • Topic mindmaps for visualising the key concepts
  • Printable flashcards to help students engage active recall and confidence-based repetition
  • A quiz with accompanying answer key to test knowledge and understanding of the module

This MS Windows version can be downloaded with no restrictions (requires Microsoft.NET Framework 4): lmc.net.zip (version 3.3).

There is also an installation guide for a lmc.exe version that might be more suitable for school networks.

Features

  • LMC Simulator: CPU Simulator - VB.NET Version Image 1Loads and saves assembly language programs as text files.
  • Supports labels for both branching and data.
  • Supports indentation making code easier to follow.
  • Does not remove the original code when assembly takes place.
  • Features both a STEP and a RUN mode and the ability to switch between them while a program is running.
  • In STEP mode, the ‘Little Man’ explains the next instruction before it is executed.
  • Allows assembly language programs to be pasted directly into the program window.
  • Allows programs to be copied from either text window for use in reports.
  • Run mode is faster than the atkinsn.yorku.ca version.
  • Allows line annotation such as: loop LDA value1 // Start of main loop.
  • Produces an assembly language version without labels or annotation, makes it easier to understand the assembled code in RAM.
  • INPUT is via an ‘input device’ rather than the keyboard, allowing integer values in the range -999 to 999.
  • Multi-line output makes it easier to follow programs that have more than a single output.
  • ‘Machine Code’ instructions in RAM can be edited directly (the U button will update any changes to the current instruction).
LMC Simulator: A guide to the LMC screen
A guide to the LMC screen

Updates

  • version 3.3 – RESET button added making it possible to reset the program counter without having to assemble the program again.
  • version 3.2 – improved line annotation facility, any annotation can be added to the end of a line.
  • version 3.1 – implemented negative DAT and INPUT values.
  • version 3.0 – ASSEMBLE button altered to more accurately reflect what it does.
  • version 2.9 – set the overflow of numbers less than -999 to match the atkinsn.yorku.ca version
    (if accumulator < -999 Then accumulator = accumulator + 1999). Note, some LMC versions store negative numbers using the 10’s complement of the number and don’t allow negative numbers to be stored as such.
  • version 2.8 – swapped the positions of the INPUT and the OUTPUT to aid data entry.

Further Readings: