본문 바로가기 사이드메뉴 바로가기 대메뉴 바로가기

Computer Science

Courses

System Fundamentals I
Text code : CSE220 / Credit : 4
  • Prerequisites C or higher in CSE 214 or co-requisite CSE 260 and CSE major
  • Textbook information C Programming: A Modern Approach, 2nd ed. by K. N. King. W. W. Norton & Company, 2008.

Credits 4
Course Coordinator

Amos Omondi

Description Introduces systems-level programming concepts using the C language and assembly language, and explores the correspondence of programming constructs in these languages. Topics include internal data representation, basic instructions and control structures, bitwise operations, arithmetic operations, memory management, pointers, function calls and parameter passing, linking, and loading. Included is an overview of computer architecture and organization topics, including von Neumann architecture, the memory hierarchy, and basics of pipelining.
Prerequisite C or higher in CSE 214 or co-requisite CSE 260 and CSE major
Course Outcomes
  • An ability to determine the machine-level representations of primitive and structured data types. 
  • An ability to determine the corespondence of program constructs written in C and in assembly language. 
  • An ability to implement non-trivial algorithms, and both static and dynamic data structures, in the C programming language. 
Textbook

Required:

  • C Programming: A Modern Approach, 2nd ed. by K. N. King. W. W. Norton & Company, 2008.

References:

  • C Programming Language, 2nd ed. by Brian W. Kernighan and Dennis M. Ritchie. Pearson, 1998. 978-0131103627.
  • Digital Design and Computer Architecture, 2nd ed. by David Harris and Sarah Harris. Morgan Kaufmann, 2013. ISBN-13: 978-0-12-394424-5.
Major Topics Covered in Course
  • Basic of computer architecture and organization
  • Machine-level representations of data
  • Basics of C programming
  • Low-level programming in C
  • C functions and program structure
  • C I/O; Linking and loading
  • C pointers and arrays
  • Fundamental data structures in C
  • MIPS architecture and assembly language basics
  • MIPS assembly memory management
  • MIPS assembly functions
  • C/MIPS correspondence and cross-compilation
  • Modern computer architectures
Course Webpage

Brightspace

 

Amos Omondi img
Amos Omondi
  • PositionTeaching Professor / Undergraduate Program Director / Associate Chair
  • OfficeRoom B422