National University of Computer and Emerging Sciences
Course Outline Fall Semester 2011
Course Code: EE218 Course Title: Computer Organization and Assembly Language (coal) Course Level: BS(CS) Core Course 4 Credit Hrs Instructor: Engr Syed Asim Mahmud, https://sites.google.com/a/nu.edu.pk/sam/
[email protected]Description:
The objective of this course is to enable students to understand: One of our goal is to help students approach programming problems with machine-level mind set,It is important to think of CPU as an interactive tool, and learn to monitor each actions as directly as possible. The physical organization of a computer including its registers, data flow, micro operations and control functions How software is executed on a processor including Instruction cycle, memory reference, interrupts Functionality of other important components of computer system including external memory, input/output interface How to write efficient software for a processor including machine representation of data and instructions; machine language and assembly language programming; computer arithmetic, addressing modes; interrupts and input/output programming.
This course will cover the following areas: Micro operations Organization and design of Basic Computer (Accumulator Based) Programming the Basic Computer Instructions: Language of the Computer Arithmetic for Computers Data Path and Control Input/Output Programming the Intel x86 Family o IA-32 Processor Architecture o Data Transfer, Addressing o Integer Arithmetic o Conditional Processing o Procedure, Stack Frames o Software Interrupts
Text Book:
William stalling, Computer Organization and Architecture, Principles of Structure and Function, M. Morris Mano, Computer System Architecture (3rd Ed), Pearson 1993
David A. Patterson and John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface (3rd Ed), Morgan Kaufman 2006 Kip R. Irvine, Assembly Language for Intel-Based Computers (4th Ed), Pearson 2003
Reference Material:
Lecture Notes/Handouts
Pre-Requisite:
EE109: Digital Logic Design
Marks distribution
50% final exam 25 % (2 Mid-terms) 16% labs (2%mid + 3%project + 11% lab work) 4.5% + 4.5% Assignments + Quizzes Guidelines : minimum 5 quizzes, and at least 3 assignments.
Proposed Course Plan:
Topic Class Introduction Register Transfer and Microoperations Basic Computer Organization and Design Programming the Basic Computer Instructions Language of the Computer Project Proposal Submission Arithmetic for Computers Datapath and Control Interface between Processor, Memory and I/O IA-32 Architecture Intel Assembly Lang. Fundamentals: Addressing, Data Transfer Project Mid-Term Report Submission Procedures, Stack Frames Conditional Processing Integer Arithmetic Software Interrupts/ Input-Output Project Demos and Viva Project Final Report Submission Chapter Lectures 4(Mano,stalling) 2 5(Mano stalling) 6 6(Mano stalling) 4 2(P & H) 3 3(P & H) 5(P & H stalling) 8(P & H,stalling 2(Irvine) 3,4 (Irvine) 5,8(Irvine) 6(Irvine) 7(Irvine) 13(Irvine) 4 6 6 4 4 Week 1 1,2 3 4 5 6 7,8 8,9 10 11 12 Assessment
Assignment 1
Midterm 1
Midterm 2 Assignment 2
4 3 3 6
13 14 14,15 15,16
Assignment 3 Final