Objectives |
Grading |
Course Schedule |
Course policies |
Instructor:
Prof. John Wright
E-mail: wrightj@juniata.edu
Office: Brumbaugh Academic
Center, C-201
Phone: 641-3592
Office Hours are kept current on my home page. See the home page or my office door for recent changes; other office hours may be arranged by appointment.
Class meeting times:
MWF 09:00am Th
08:00am BAC P223
Required:
Miller, Karen -
An Assembly Language Introduction to Computer Architecture Using the Intel
Pentium, Oxford University Press, 1999.
Book Web Site
15% Exam 1
15% Exam 2
15% Exam 3
10% Problem Assignments/Labs
20%
Programming Projects
25% Comprehensive Final
Students will study and gain understanding in:
· the organization of
a typical computing system from the high level language, machine level, and
digital logic perspectives
· the importance of mathematical systems in hardware design
· the high level programming language capabilities and limitations as they
relate to the computer hardware
· the various forms of data representation within a computer system
Students should develop or enhance skills in:
· programming in an assembly language and transferring these understandings to efficiently implement various high level language and
data structures
·
reasoning about software design in relation to hardware
· debugging techniques ranging from low level to high level language design
Prerequisites: CS110/IT116
This is a sample schedule and is subject, and very likely, to change at any time. Refer to Moodle for all assignments.
| Day | Topic | Reading |
| 8/24 | Course Introduction | |
| 8/26 | Introduction to Computer Organization (Chapter 1) | Chapter 1 |
| 8/27 | Intro to Thursdays; Blackboard; Finish up History of Computers; OO vs. Structured Prog | |
| 8/28 | Computer Basics; Memory Operation; Instruction Fetch and Execute Cycle | Chapter 2 |
| 8/31 | Performance; Assembly Lang. | Chapter 3 |
| 9/2 | Addr. Architectures; SASM Vars & Arithmetic Instructions; | |
| 9/3 | SASM Lab; Project 0 part 1 due in class | |
| 9/4 | SASM Control Structures; SASM I/O; Sample Programs; Programming Assignments Instruction | |
| 9/7 | Follow-up on SASM lab; Number Systems & Representations | Chapter 4 |
| 9/9 | Numerical Transformations | |
| 9/10 | Introduction to Digital Logic; Help with Project 0 | |
| 9/11 | Numerical Transformations | |
| 9/14 | Nonintegers; Normalization; Number Representation | Chapter 5 |
| 9/16 | Signed Magnitude, One's and Two's Complements; Project 1 assigned; Biased Representation | |
| 9/17 | Introduction to Digital Logic Cont.; Basics of Electronics; Help with Project 1 | |
| 9/18 | Sign Extension; Character Representation | |
| 9/21 | Floating Point Representation | |
| 9/23 | Exam #1 (chapters 1-5) | |
| 9/24 | E-lab: Intro, Yes, Not, And | |
| 9/25 | Logical Operations, Masking, and Bit Shifting | Chapter 6 |
| 9/28 | Arithmetic Operations: Addition/Subtraction | |
| 9/30 | Arithmetic Operations: Multiplication/Division | |
| 10/1 | E-lab: Or, Nand, Nor | Chapter 7.1 |
| 10/2 | FLOPS; Data Structures: Arrays | |
| 10/5 | Data Structures: Arrays, Stacks, Queues | Chapter 8 |
| 10/7 | Data Structures: Stacks, Queues; Instruction and Efficiency | |
| 10/8 | E-lab: continued | |
| 10/9 | Registers; Load/Store Architectures | Chapter 9 |
| 10/12 | Addressing Modes; Pentium Architecture: Registers | |
| 10/14 | Pentium Memory Model; Addressing Modes; Instruction Set | |
| 10/15 | E-lab: continued | |
| 10/16 | Pentium Instruction Set; Procedure Calls | Chapter 10 |
| 10/19 | Fall Break - No Classes | |
| 10/21 | Pentium Code Lab | |
| 10/22 | History of Transistors? | |
| 10/23 | Procedure Calls | Chapter 11 |
| 10/26 | Activation Records; Parameter Passing | |
| 10/28 | Register Saving; Pentium Procedure Calls | |
| 10/29 | Lab/Review | |
| 10/30 | Assemblers: What assemblers do | Chapter 12 |
| 11/2 | Exam #2 (chapters 6-11) | |
| 11/4 | Machine Code Format and Code Generation | |
| 11/5 | Lab | |
| 11/6 | Link and Load | |
| 11/9 | Machine Code Exercise | |
| 11/11 | Typical I/O devices;Processor-I/O Interface; DMA | Chapter 13 |
| 11/12 | Lab | |
| 11/13 | Processor-I/O Interface | |
| 11/16 | Processor-I/O Interface; DMA; Interrupts and Exception Handling | Chapter 14 |
| 11/18 | Pentium Exception Handling; Advanced Issues in Exception Handling | |
| 11/19 | Lab | |
| 11/20 | Review; Features for Architectural Performance | |
| 11/23 | Exam #3 (chapters 12-14) | |
| 11/25 | Thanksgiving Recess - No Classes | |
| 11/26 | Thanksgiving Recess - No Classes | |
| 11/27 | Thanksgiving Recess - No Classes | |
| 11/30 | Features for Architectural Performance; | Chapter 15 |
| 12/2 | Architecture in Perspective (Instruction set; CISC vs. RISC; Single-chip processors) | Chapter 16 |
| 12/3 | Put the Kingdom back together again and got it working | |
| 12/4 | Computer Organization Treasure Hunt | |
| 12/7 | Review | |
| 12/? | Comprehensive Final |