Simplified Instructional Computer (SIC). SIC Architecture Two versions: SIC and SIC/XE (extra equipments). SIC program can be executed on SIC/XE. Memory.

Slides:



Advertisements
Similar presentations
Introduction – This book introduces to the design and implementation of System Software
Advertisements

Chapter Outline Chapter 1 of Beck’s “System Software” book
System Programming Design and Implementation of system software.
Princess Sumaya Univ. Computer Engineering Dept. Chapter 2: IT Students.
系 統 程 式 System Programming
2.3) Example of program execution 1. instruction  B25 8 Op-code B means to change the value of the program counter if the contents of the indicated register.
Welcome to Systems Software The purpose of this course is to provide background in fundamental types of system software, particularly assemblers, loaders,
1 System Programming System Software, pp Chia-Hui Chang, Assistant Professor Dept. of Computer Science & Information Engineering National Central.
The Simplified Instructional Computer (SIC/SICXE)
1: Background1 System Programming ( 系統程式 ) Main goal: r What is a system software? m Compiler m Assembler m Loader and Linker m Debugger… r To design and.
SYSTEM SOFTWARE Dr.A.KANNAN, PROFESSOR & HEAD, DEPARTMENT OF IST CS2304.
Machine-Dependent Assembler Features (SIC/XE Assembler) Instruction Formats, Addressing Modes, and Program Relocation.
System Software by Leland L. Beck chapter 1, pp.1-20.
Chapter 1 Background System Software Chih-Shun Hsu
1 Chapter 1 Background Professor Gwan-Hwan Hwang Dept. Computer Science and Information Engineering National Taiwan Normal University 9/17/2009.
1 The Simplified Instructional Computer (SIC) Hsiang-Fu Yu National Taipei University of Education.
System Programming System Software:
System Software.
System Software by Leland L. Beck chapter 1, pp.1-20.
Chapter 6: Machine dependent Assembler Features
System Programming Chih-Hung Wang Chapter 1: Background (Part-1) 參考書目
1 Lecture-2 CSIT-120 Spring 2001 Revision of Lecture-1 Introducing Computer Architecture The FOUR Main Elements Fetch-Execute Cycle A Look Under the Hood.
Midterm Wednesday Chapter 1-3: Number /character representation and conversion Number arithmetic Combinational logic elements and design (DeMorgan’s Law)
CSCE 121, Sec 200, 507, 508 Fall 2010 Prof. Jennifer L. Welch.
System Programming System Software:
1 Lecture-2 CS-120 Fall 2000 Revision of Lecture-1 Introducing Computer Architecture The FOUR Main Elements Fetch-Execute Cycle A Look Under the Hood.
Overview The von Neumann Machine - the programmable digital computer Introducing the LC-3 Computer - A “toy” computer for us to learn from Computer machine.
CS2422 Assembly Language & System Programming November 21, 2006.
1 RISC Machines l RISC system »instruction –standard, fixed instruction format –single-cycle execution of most instructions –memory access is available.
Chih-Hung Wang Chapter 1: Background (Part-1) 參考書目 Leland L. Beck, System Software: An Introduction to Systems Programming (3rd), Addison-Wesley, 1997.
Chapters 4 & 5: LC-3 Computer Architecture Machine Instructions Assembly language Programming in Machine and Assembly Language.
Assembler (Basic Functions)
Overview von Neumann Model Components of a Computer Some Computer Organization Models The Computer Bus An Example Organization: The LC-3.
Assembly & Machine Languages
Background. Outlines Brief introduction to system software System software and machine architecture Simplified Instructional Computer (SIC) –Architecture.
Machine Instruction Characteristics
Computer Architecture and Organization
1/23/20067CPS4200 System Programming Spring 1 Systems Programming Chapter 1 Background III.
September 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 2: Implementation of a Simplified Computer Jeremy R. Johnson Wednesday,
UConn CSE CSE241: Instruction Level Architecture Base CPU/Memory Architecture Registers Fetch-Execute Cycle Instructions Addressing Modes.
Dale & Lewis Chapter 5 Computing components
What is a program? A sequence of steps
Ass. Prof. Dr Masri Ayob TK 2123 Lecture 14: Instruction Set Architecture Level (Level 2)
Jeremy R. Johnson William M. Mongan
CC410: System Programming Dr. Manal Helal – Fall 2014 – Lecture 10 – Loaders.
CPS4200 System Programming Spring 1 Systems Programming Chapter 1 Background I.
CC410: System Programming Dr. Manal Helal – Fall 2014 – Lecture 4 - Assembler 1.
김길용 교수 분산처리연구실 시스템 프로그래밍 김길용 교수 분산처리연구실
Machine dependent Assembler Features
Immediate Addressing Mode
CC410: System Programming
Prof . Ki-Dong Chung Pusan Nat’l University
System Programming and administration
System Programming Design and Implementation of system software.
SYSTEM SOFTWARE - UNIT II
THE sic mACHINE CSCI/CMPE 3334 David Egle.
Assemblers - 2 CSCI/CMPE 3334 David Egle.
Simplified Instructional Computer (SIC)
Chapter 1 Background Professor Gwan-Hwan Hwang
ECEG-3202 Computer Architecture and Organization
Simplified Instructional Computer (SIC)
ultraSPARC과 SIC/XE Machine 비교
ECEG-3202 Computer Architecture and Organization
Assemblers CSCI/CMPE 3334 David Egle.
Welcome to Systems Software
Loaders and Linkers.
SYSTEM SOFTWARE CS2304 Dr.A.KANNAN, PROFESSOR & HEAD,
CS501 Advanced Computer Architecture
Lecture 1: SIC Architecture
Presentation transcript:

Simplified Instructional Computer (SIC)

SIC Architecture Two versions: SIC and SIC/XE (extra equipments). SIC program can be executed on SIC/XE. Memory consists of 8-bit bytes. 3 consecutive bytes form a word (24 bits) In total, there are 2^15 bytes in the memory. There are 5 registers. Each is 24 bits in length.

Five Registers

Data Format Integers are stored as 24-bit binary numbers; 2’s complement representation is used for negative numbers. Characters are store using their 8-bit ASCII codes. There is no floating-point hardware on SIC.

Instruction Format All machine instructions on SIC has the following 24-bit format. X is used to indicate indexed-addressing mode.

Addressing Modes Only two modes are supported: –Direct –Indexed () are used to indicate the content of a register.

Instruction Set Load and store registers (LDA, LDX, STA, STX) Integer arithmetic (ADD, SUB, MUL, DIV), all involve register A and a word in memory. Comparison (COMP), involve register A and a word in memory. Conditional jump (JLE, JEQ, JGT, etc.) Subroutine linkage (JSUB, RSUB)

Input and Output One byte at a time to or from the rightmost 8 bits of register A. Each device has a unique 8-bit ID code. Test device (TD): test if a device is ready to send or receive a byte of data. Read data (RD): read a byte from the device to register A Write data (WD): write a byte from register A to the device.

SIC/XE Architecture Memory: 1 megabytes (2^20 bytes) Additional Registers

Data Format The same as that of SIC. There is a floating-point data type with the following format: The value represented by the above format is (-1)^s * f * 2 ^(e – 1024) Must be 1 Between 0 and 1

Instruction Formats e = 0 e = 1

Addressing Mode Two additional modes are introduced for format 3: In format 3, if both bits b and p are set to 0, the disp (or address) is taken as the target address. This is called direct addressing mode. Both modes can be combined with indexed addressing – if bit x is set to 1, the value of register X is added in the target Address calculation.

Addressing Modes (i =1, n = 0): immediate addressing mode. The target address is used as the operand. (i = 0, n = 1): indirect addressing mode. The word at the location given by the target address is fetched; the value contained in this word is then used as the address of the operand value. (i = 0, n = 0) used by SIC, (i=1, n=1) used by SIC/XE: simple addressing mode. The target address is taken as the location of the operand. Indexing mode cannot be used with immediate or indirect modes. For format 3 and 4:

Example All of these instructions are LDA.

Instruction Set LDB and STB Floating-point operations (ADDF, SUBF, MULF, DIVF) Register move (RMO) Register-to-register operations (ADDR, SUBR, MULR, DIVR) Supervisor call (SVC) for generating system calls into the operating system. I/O channel operation (SIO: start, TIO: test, HIO: halt), similar to DMA.

Complete Instruction Set P: privileged instruction X: available Only on XE F: floating- Point Instruction C: condition code CC set to indicate result of operation

SIC Programming Example (1) SIC instruction sets SIC/XE instruction sets Use immediate mode will make the program run faster because it need not fetch five from the memory.

SIC Programming Example (2.a) BETA <- (ALPHA + INCR - 1) DELTA <- (GAMMA + INCR - 1)

SIC Programming Example (2.b) This program will execute faster because it need not load INCR from memory each time when INCR is needed.

SIC Programming Example (3.a)

SIC Programming Example (3.b) This program will execute faster because TIXR need not compare the index value to a memory variable.

SIC Programming Example (4.a) Gamma [] <- Alpha [] + Beta []

SIC Programming Example (4.b) This program will execute faster because it uses register-to-register add to reduce memory accesses.

Input and Output Examples

Subroutine Call Example (5.a) Read 100 words into the record buffer

Subroutine Call Example (5.b) Use TIXR makes this program run faster