Introduction to Computer Architecture

The objective of this course is to understand the basic principles and hardware structures of computer systems including personal computers and workstations, and to learn how to design computers. This course covers data representation, CPU organization, instruction classification, language processing of assemblers and compilers, pipelining for performance enhancement, memory hierarchy, cache memory, and IO peripheral devices. In addition, high-performance computer systems are to be introduced.


  • This course is to provide EE students with understanding and ability for design and implementation of data structure for problems solving in the EE area using computer programming. It deals with information representation using data abstraction, object-oriented programming, Algorithm analysis. Basic data structures to be covered are Array and Linked list, Stack and Queue, Tree, Graph, Sorting, and Hashing. Applications of such basic structures in EE problems using C++ are also covered.

  • Much of the basic discrete mathematical tools useful in electrical and computer engineering will be presented, with applications. Students will learn actively the art of creating real-world proofs in these areas, preparing them for diverse regions of electrical and computer engineering such as communication, architecture, networking, algorithms, cryptography, etc.

  • This goal of this course is to understand the basic principles of digital logic circuit, and the fundamental concepts, components and operations of digital system.

Show List