Computer Organization and Assembly Language for BS Program

Objectives of this course: 

The main objective of this course is to introduce the organization of computer systems and usage of assembly language for optimization and control. Emphasis is given to expose the low-level logic employed for problem solving while using assembly language as a tool.
At the end of the course the students should be capable of writing moderately complex assembly language subroutines and interfacing them to any high level language.

Things you will cover in this  course:

  • Microprocessor Bus Structure
  • Addressing
  • Data and Control
  • Memory Organization and Structure (Segmented and Linear Models)
  • Introduction to Registers and Flags
  • Data Movement
  • Arithmetic and Logic
  • Program Control
  • Subroutines
  • Stack and its operation
  • Peripheral Control Interrupts
  • Interfacing with high level languages
  • Real-time application
    Objectives and Perspectives of Assembly Language
  • Addressing Modes
  • Introduction to the Assembler and Debugger
  • Manipulate and translate machine and assembly code
  • Describe actions inside the processing chip
  • Discuss operations performed by an instruction set
  • Write a fully documented program
  • Using an assembler of choice

Reference material:

1. "Computer Organization & Architecture", 7th ed, W. Stallings, Prentice Hall, 2006.
2. “Assembly Language for Intel-based Computers”, 5th ed, Irvine, Prentice Hall, 2007.
3. “Computer Organization and Design, The Hardware/Software Interface”, 4th ed, David A. Patterson and John L. Hennessy, 2008. Elsevier Publishers.

Other Information:

Course code:  CS208

Prerequisites: Digital Logic Design

Credit Hours: 3

Lectures: 2

Labs:      1   

      
Reactions

Post a Comment

0 Comments