T :+251 111 275026

Computer Organization and Assembly Language Programming

Course Objectives

At the end of the course, students will

  • understand digital logic and digital systems,
  • use mathematical expressions to describe the functions of simple combinational and sequential circuits,
  • explain the basic organization of the classical von Neumann machine and its major functional units,
  • explain the basic organization of the classical Harvard Architecture and its major functional units,
  • explain how an instruction is executed in a classical microprocessor,
  • summarize how instructions are represented at both the machine level and in the context of a symbolic assembler,
  • understand details of the Intel 8086 Architecture, and
  • understand the difference between registers and memory.

Course Description

This course covers the basics of computer organization with emphasis on the lower level abstraction of a computer system including digital logic, instruction set and assembly language programming. Starting with revisions of combinational and sequential logic design concepts the course covers detailed computer system organizations for Processors, Memory and Input/output. Details of the Intel 8086 Processor Architecture will be covered and students will learn through laboratory and class based topics to write an assembly language program for the Intel 8086 microprocessor. The topics included are: Introduction, The Intel 8086 Micro Processor Architecture and Instructions Sets, Editing, Assembling and Linking an Assembly Program, Instruction Set for the 8086 Microprocessor, Microprocessor Organization, Microprocessor Organization, Memory Organization, and Input-Output Organization.

Course Content

  1. Introduction
  2. The Intel 8086 Micro Processor Architecture and Instructions Sets
  3. Editing, Assembly and Linking an Assembly program
  4. Instruction Set for the 8086 Microprocessor
  5. Microprocessor Organization
  6. Memory Organization
  7. Input/Output Organization