Itech 1000

profilesaifu3446
ch061.ppt

CHAPTER 6:
The Little Man Computer

The Architecture of Computer Hardware, Systems Software & Networking:
An Information Technology Approach

5th Edition, Irv Englander

John Wiley and Sons 2013

PowerPoint slides authored by Angela Clark, University of South Alabama

PowerPoint slides for the 4th edition were authored by Wilson Wong, Bentley University

Copyright 2013 John Wiley & Sons, Inc.

6-*

The Little Man Computer

Copyright 2013 John Wiley & Sons, Inc.

*

Copyright 2013 John Wiley & Sons, Inc.

6-*

Mailboxes: Address vs. Content

  • Addresses are consecutive starting at 00 and ending at 99
  • Content may be
  • Data, a three digit number, or
  • Instructions
Address Content

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Content: Instructions

  • Op code
  • In LMC, represented by a single digit
  • Operation code
  • Arbitrary mnemonic
  • Operand
  • In LMC, represented by two digits following the op code
  • Object to be manipulated

Data or

Address of data

Address Content
Op code Operand

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Magic!

  • Load program into memory
  • Put data into In Basket

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Assembly Language

  • Specific to a CPU
  • 1 to 1 correspondence between assembly language instruction and binary (machine) language instruction
  • Mnemonics (short character sequence) represent instructions
  • Used when programmer needs precise control over hardware, e.g., device drivers

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Instruction Set

Arithmetic 1xx ADD
2xx SUB
Data Movement 3xx STORE
5xx LOAD
Input/Output 901 INPUT
902 Output
Machine Control (coffee break) 000 HALT COB

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Input/Output

  • Move data between calculator and in/out baskets
Content
Op Code Operand (address)
IN (input) 9 01
OUT (output) 9 02

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

LMC Input/Output

IN

OUT

Copyright 2013 John Wiley & Sons, Inc.

*

Copyright 2013 John Wiley & Sons, Inc.

6-*

Internal Data Movement

  • Between mailbox and calculator
Content
Op Code Operand (address)
STO (store) 3 xx
LDA (load) 5 xx

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

LMC Internal Data

LDA

STO

Copyright 2013 John Wiley & Sons, Inc.

*

Copyright 2013 John Wiley & Sons, Inc.

6-*

Arithmetic Instructions

  • Read mailbox
  • Perform operation in the calculator
Content
Op Code Operand (address)
ADD 1 xx
SUB 2 xx

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

LMC Arithmetic Instructions

ADD

SUB

Copyright 2013 John Wiley & Sons, Inc.

*

Copyright 2013 John Wiley & Sons, Inc.

6-*

Data storage location

  • Physically identical to instruction mailbox
  • Not located in instruction sequence
  • Identified by DAT mnemonic

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Simple Program: Add 2 Numbers

  • Assume data is stored
    in mailboxes with
    addresses >90
  • Write instructions

Input a #

Store the #

Input a #

Add

Output the

number

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Program to Add 2 Numbers

Mailbox Code Instruction Description
00 901 ;input 1st Number
01 399 ;store data
02 901 ;input 2nd Number
03 199 ;add 1st # to 2nd #
04 902 ;output result
05 000 ;stop
99 000 ;data

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Program to Add 2 Numbers:
Using Mnemonics

Mailbox Mnemonic Instruction Description
00 IN ;input 1st Number
01 STO 99 ;store data
02 IN ;input 2nd Number
03 ADD 99 ;add 1st # to 2nd #
04 OUT ;output result
05 COB ;stop
99 DAT 00 ;data

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Program Control

  • Branching (executing an instruction out of sequence)
  • Changes the address in the counter
  • Halt
Content
Op Code Operand (address)
BR (Jump) 6 xx
BRZ (Branch on 0) 7 xx
BRP (Branch on +) 8 xx
COB (stop) 0 (ignore)

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

LMC Instruction Set

Arithmetic 1xx ADD
2xx SUB
Data Movement 3xx STORE
5xx LOAD
BR 6xx JUMP
BRZ 7xx BRANCH ON 0
BRP 8xx BRANCH ON +
Input/Output 901 INPUT
902 OUTPUT
Machine Control (coffee break) 000 HALT COB

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Find Positive Difference of 2 Numbers

00 IN 901
01 STO 10 310
02 IN 901
03 STO 11 311
04 SUB 10 210
05 BRP 08 808 ;test
06 LDA 10 510 ;if negative, reverse order
07 SUB 11 211
08 OUT 902 ;print result and
09 COB 000 ;stop
10 DAT 00 000 ;used for data
11 DAT 00 000 ;used for data

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Instruction Cycle

  • Fetch: Little Man finds out what instruction he is to execute
  • Execute: Little Man performs the work

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Fetch Portion of
Fetch and Execute Cycle

1. Little Man reads the address from the location counter

2. He walks over to the mailbox that corresponds to the location counter

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Fetch, cont.

3. And reads the number on the slip of paper (he puts the slip back in case he needs to read it again later)

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Execute Portion

1. The Little Man goes to the mailbox address specified in the instruction he just fetched

2. He reads the number in that mailbox (he remembers to replace it in case he needs it later)

Copyright 2013 John Wiley & Sons, Inc.

*

Copyright 2013 John Wiley & Sons, Inc.

6-*

Execute, cont.

3. He walks over to the calculator and punches the number in

4. He walks over to the location counter and clicks it, which gets him ready to fetch the next instruction

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

von Neumann Architecture (1945)

Stored program concept

Memory is addressed linearly

Memory is addressed by location number without regard to content

Copyright 2013 John Wiley & Sons, Inc.

Copyright 2013 John Wiley & Sons, Inc.

6-*

Copyright 2013 John Wiley & Sons

All rights reserved. Reproduction or translation of this work beyond that permitted in section 117 of the 1976 United States Copyright Act without express permission of the copyright owner is unlawful. Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The purchaser may make back-up copies for his/her own use only and not for distribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages caused by the use of these programs or from the use of the information contained herein.”

Copyright 2013 John Wiley & Sons, Inc.