April 14, 2007CCSC-Central Plains Region1 Use of a Simulator and an Assembler in Teaching Input-Output Processing and Interrupt Handling Soe Than Department.

Slides:



Advertisements
Similar presentations
Chapter 2 Machine Language.
Advertisements

Cpe 252: Computer Organization1 Lo’ai Tawalbeh Programming The Basic Computer Chapter 6:
Lab6 – Debug Assembly Language Lab
Chapter 2 Machine Language. Machine language The only language a computer can understand directly. Each type of computer has its own unique machine language.
Basic Computer Organization and Design
Assemblers Dr. Monther Aldwairi 10/21/20071Dr. Monther Aldwairi.
5 Computer Organization
Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2009
Computer Architecture I: Digital Design Dr. Robert D. Kent Computer Architecture Machine & Assembly Language Programming.
Chapter 6: Programming The Basic Computer CPIT 210
Review We introduced registers
An Interactive Web-Based Simulation of a General Computer Architecture
Computer System Architecture ESGD2204
Chapter No 5 Basic Computer Organization And Design.
1 Basic Computer Organization & Design Computer Organization Computer Architectures Lab BASIC COMPUTER ORGANIZATION AND DESIGN Instruction Codes Computer.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Bus Architecture Memory unit AR PC DR E ALU AC INPR 16-bit Bus IR TR
Exam2 Review Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2009.
Chapter # 6 PROGRAMING THE BASIC COMPUTER.
PROGRAMMING THE BASIC COMPUTER
1 Purpose of This Chapter In this chapter we introduce a basic computer and show how its operation can be specified with register transfer statements.
M. Mateen Yaqoob The University of Lahore Spring 2014.
Lec 5 Basic Computer Organization
Computer Organization CSC 405 (VSC) Very Simple Computer.
M. Mateen Yaqoob The University of Lahore Spring 2014
© GCSE Computing Candidates should be able to:  describe the characteristics of an assembler Slide 1.
Represents different voltage levels High: 5 Volts Low: 0 Volts At this raw level a digital computer is instructed to carry out instructions.
1 Basic Computer Organization & Design Computer Organization Prof. H. Yoon BASIC COMPUTER ORGANIZATION AND DESIGN Instruction Codes Computer Registers.
Instruction.
Ch5. 기본 컴퓨터의 구조와 설계.
Basic architecture.
Introduction A computer system includes both hardware and software. The designer should be familiar with both of them. This chapter introduces some basic.
1 M. Morris Mano Computer System Architecture Chapter 6: Programming the Basic Computer 박 찬식 교육관 325 호,
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Basic Computer Organization - Part 2 Designing your first computer
1 BASIC COMPUTER ORGANIZATION AND DESIGN Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference.
Chapter 5 Computer Organization TIT 304/TCS 303. Purpose of This Chapter In this chapter we introduce a basic computer and show how its operation can.
Computer Organization Exam Review CS345 David Monismith.
PROGRAMMING THE BASIC COMPUTER
Seminar On 8085 microprocessor
UNIT 2 REGISTER TRANSFER AND MICROOPERATIONS
Basic Computer Organization and Design
PROGRAMMING THE BASIC COMPUTER
COMPUTER ARCHITECTURE
Symbol Hex Code Description I=0 I=1
Operating Systems (CS 340 D)
PROGRAMMING THE BASIC COMPUTER
Computer Organization and Design
BASIC COMPUTER ORGANIZATION AND DESIGN
Overview Instruction Codes Computer Registers Computer Instructions
BASIC COMPUTER ORGANIZATION AND DESIGN
BASIC COMPUTER ORGANIZATION AND DESIGN
By: A. H. Abdul Hafez CAO, by Dr. A.H. Abdul Hafez, CE Dept. HKU
سازمان و طراحي کامپيوتر پايه.
Assembler CASE Tool.
PROGRAMMING THE BASIC COMPUTER
Programming The Basic Computer
Chap. 6 Programming the Basic Computer
Instruction and Control II
Programming The Basic Computer
Computer Architecture and Organization: L11: Design Control Lines
ECEG-3202 Computer Architecture and Organization
By: A. H. Abdul Hafez Computer Architecture and Organization: L06: Stored program and Instruction code.
Computer Architecture and Organization: L07: Control Sequence
PROGRAMMING THE BASIC COMPUTER
MARIE: An Introduction to a Simple Computer
CPU has 6 special locations called registers
Chapter 6 Programming the basic computer
A Level Computer Science Topic 5: Computer Architecture and Assembly
Presentation transcript:

April 14, 2007CCSC-Central Plains Region1 Use of a Simulator and an Assembler in Teaching Input-Output Processing and Interrupt Handling Soe Than Department of Math & Computer Science Virginia Military Institute

April 14, 2007CCSC-Central Plains Region2 The Simulator and Assembler

April 14, 2007CCSC-Central Plains Region3 Teaching Assembly Language  Teach assembly language as part of computer systems course  Not a semester-long course on assembly language programming  To convey various concepts in CS through the assembly language  To explore inner workings of a basic computer

April 14, 2007CCSC-Central Plains Region4 Organization of The Computer  Computer System Arch., 3/e by Mano  Single Accumulator (16 bits)  4096 words x 16 bits  4 bits for Opcode, 12 bits for Operand  1 st bit of Opcode indicates indirect addr  8 bit I/O registers connected to AC in parallel, and to I/O devices in serial  I/O Flags to indicate availability of I/O registers

April 14, 2007CCSC-Central Plains Region5 The Simulator and Assembler

April 14, 2007CCSC-Central Plains Region6 Assembly Language  Memory-reference instructions AND, ADD, LDA, STA, BUN, BSA, ISZ  Register-reference instructions CLA, CLE, CMA, CIR, CIL, INC, SPA, HLT  Input-output instructions INP, OUT, SKI, SKO, ION, IOF  Pseudo-instructions ORG, DEC, HEX, END

April 14, 2007CCSC-Central Plains Region7 Purpose of Developing The Assembler  To provide a safe and enjoyable environment for assembly language programming (I.e., to avoid manual tracing / execution of assembly language programs)  To illustrate the first pass and the second pass of compilation process  To demonstrate the inner workings of the computer system

April 14, 2007CCSC-Central Plains Region8 Development of The Assembler  Java Application as well as Applet  Simulator, Assembler, and GUI  Interactive Development Environment  1600 lines in 14 source program files  18 Classes

April 14, 2007CCSC-Central Plains Region9 Development Environment  Integrated Development Environment for editing, compilation, and execution  A window for error messages  Facility to Save / Open the source program files  Ability to run the program completely, or to execute one instruction at a time  Possible to abort a (run away) program

April 14, 2007CCSC-Central Plains Region10 Development Environment

April 14, 2007CCSC-Central Plains Region11 Learning Environment  On screen display of assembling process showing source program symbol table object code, and errors, if any

April 14, 2007CCSC-Central Plains Region12 Source Program & Object Program

April 14, 2007CCSC-Central Plains Region13 Window for Error Messages

April 14, 2007CCSC-Central Plains Region14 Learning Environment  Demonstrate execution of the program by showing step-by-step changes and historical records of the program counter the instruction register the accumulator other key registers, and input/output flags

April 14, 2007CCSC-Central Plains Region15 View of the Computer System

April 14, 2007CCSC-Central Plains Region16 Learning Environment  Current contents of non-zero memory units are displayed  Current contents Input Register (INPR) and Output Register (OUTR) are shown  Remaining contents of input stream and current contents of output stream are shown  Step-by-step (Walk) or Run

April 14, 2007CCSC-Central Plains Region17 Current Contents of Memory

April 14, 2007CCSC-Central Plains Region18 Features of The Assembler  Input/Output facilities with I/O flags  Interrupt facility implemented  Use delays to represent slow speeds of transferring data between I/O devices and I/O registers  Enter input data before execution or during execution

April 14, 2007CCSC-Central Plains Region19 I/O Streams and I/O Registers

April 14, 2007CCSC-Central Plains Region20 Features of The Assembler  Menu item to load a complete demo source program  Help menu items to display how to compile / run a program, and a review of the assembly language instructions

April 14, 2007CCSC-Central Plains Region21 Use of The Assembler  Ability to Check and Trace programs  Assembling Process and Symbol Table  Parameter Passing Scheme  Character coding and digit values  Speed of CPU vs. speeds of I/O devices  Input / Output processing  Interrupt Handling

April 14, 2007CCSC-Central Plains Region22 Input-Output without Interrupt

April 14, 2007CCSC-Central Plains Region23 Input a Decimal Integer

April 14, 2007CCSC-Central Plains Region24 Convert Lowercase to Uppercase

April 14, 2007CCSC-Central Plains Region25 Interrupting Handling

April 14, 2007CCSC-Central Plains Region26 Interrupting Handling – Cont.