Back to Modules
CS106

Computer Architecture

1 CreditsTerm 2

Description

CS106 is an introductory course in computer architecture. It aims to develop an understanding of the hardware environment upon which computing is based, and the interface it provides to higher software layers. The course also introduces basic architectures and hardware-software interfaces of embedded systems. Students will understand a computer system's functional components, their characteristics, and interactions, and acquire hands-on experiences on embedded system programming. Knowledge and experience on C programming is required.

Requisites

Prerequisites: CS101 - Pre-req

Co-requisites: None

Anti-requisites: None

Attributes

Department: SCIS

Course Level: Undergraduate

Tracks: N/A

Areas: Advanced Business Technology Major Business Options Econ Major Rel/Econ Options IT Solution Development Core Information Systems Electives Social Sciences/PLE Major-related

Learning Outcomes

1. Convert among binary, hexadecimal, and decimal numbers. 2. Determine overflow in integer arithmetic. Implement functions with bitwise operations. 3. Understand addressing mode. Read and write X86-64 assembly code on data movement. 4. Translate between C and X86-64 assembly code involving if-else and loops. 5. Understand system stack and implementation of procedures in X86-64 assembly. 6. Determine cache organization, cache hit/miss. Calculate cache miss rate of C programs. 7. Understand virtual memory. Apply address translation.

Graduate Learning Outcomes

Disciplinary Knowledge, Multidisciplinary Knowledge, Interdisciplinary Knowledge, Critical thinking & problem solving, Collaboration and leadership, Communication, Self-directed learning

Competencies

Embedded Systems Integration, Security Architecture, Software Design, Systems Design, Applications Development