File

advertisement
Using the LMC
This is where you write your instructions
(code).
This is where you
can reset and run
your program. If
your program has
an “INP” (input)
command, you
will type it in this
box here.
These are all
your mailboxes
(1-100)
Getting Started
Your teacher will explain where to find the LMC
1. Clear the Message Box and all of the LMC
mailboxes - click the "Clear Messages"
button and the "Clear" button if necessary.
2. Copy the three-line program into the
Message Box
3. Click on the "Compile Program" button.
4. Click on the "Run" button.
5. When prompted, enter a three-digit number
in the "In-Box", and press the "Enter"
button.
Program:
INP
OUT
HLT
What did it do?
The first instruction (INP) asked you to input a number
into the Accumulator (calculator). The Little Man went
to mailbox 1 and found an instruction telling him to go
to the “Input” box and wait for data. When this data
arrived he put it into the Accumulator (calculator).
The second instruction (OUT) was in mailbox 2. The Little
Man went there and was told to take the number from
the Accumulator and copy it to the Outbox.
The third instruction (HLT) was in mailbox 3. The Little
Man went there and was told to stop what he was
doing.
Simple!
Learning about the
Little Man Computer (LMC)
What is it?
The Little Man
Computer models a
very simple
computer system. It
can only cope with a
small selection of
tasks: mostly input,
output, storage and
calculation.
INBOX
In the centre of the room,
there is a work area
containing a simple two
function (addition and
subtraction) calculator
known as the Accumulator.
In the CPU this is known as
the ALU.
Furthermore, there are two
mailboxes at the other end
labeled INBOX and OUTBOX
which are used for receiving
and outputting data.
OUTBOX
The Program Counter is
similar to what a
doorperson uses to keep
track of how many people
have entered a facility -- it
can count up 1, or it can be
reset to 0.
and a resettable
counter known as
the Program
Counter. In the
CPU this is known
as the control
unit.
At one end of the
room, there are 100
mailboxes (memory),
numbered 0 to 99,
that can each contain
a 3 digit instruction.
In your computer this
would be your RAM
The LMC model
is based on the
concept of a
little man locked
in a small room.
Execution Cycle
8. The
1.
2.
3.
4.
5.
6.
7.
LittleLittle
ManMan
checks
goes
decodes
then
isback
fetches
executes
goes
then
the
the
to
back
Program
told
instruction
the
Pgoram
the
to
to
instruction
data
the
instruction
either
Counter
Counter
from
mailbox
he
continue
received
the
from
for
in
and
(in
mailbox
that
the
the
this
adds
mailbox
1
from
he’s
step
case
(repeat
to the
been
(eg:
043)
thethe
Program
number
with
fetch
mailbox
and
told
cycle)
that
puts
(eg:
some
that
(so
(eg:
or
number
box
the
HALT
data
itcontains
“get
would
data
number
from
(stop).
(eg:
data
hebe
a006).
the
fetched
043
from
program
007).
“outbox”)
inmailbox
this
into
instruction
case)
it..043”).
INBOX
OUTBOX
Phew...
When shown like that it can seem very complicated.
In practice the coding for this is very simple as
there are a limited number of commands the
LMC can cope with. Here are some of them:
INP:
STA:
“Input”
STORE– the
Go to
contents
the inbox,
of the
fetch
ADD:
LDA:
OUT:
SUB:
LOAD
Adds
“Output”
Subtracts
the
the value
value
– the
Copy
stored
value
from
the mailbox
value
stored
in mailbox
from
inXX
the
accumulator
value from
(calculator)
the user (you
intotype
mailbox
in a
XX
HLT:
the
mailbox
and
toaccumulator
“Halt”
enter
whatever
XXit
–from
Stops
into
value
(calculator)
whatever
the
theisaccumulator
whole
currently
value
to
cycle.
the
on
is
number)
XX. This removes
and put itwhatever
in the accumulator
was in the
storedthe
onaccumulator
the (calculator)
Accumulator
OUTBOX.
(calculator)
(calculator)
mailbox
(calculator).
before.
Download