System software (Fall, 2025)

Course Description
In this course, we will study the lower concepts of computer systems through assembly programming. Especially, from the perspective of programmer, we will focus on assembly programming language and how a computer launches applications and stores information.

Course Texts
Randal E. Bryant and David R. O'Hallaron. Computer Systems: A Programmer's Perspective. Prentice Hall Inc.

Course Grading
Exam: 90%
Homework and etc.: 10%
* Subject to change
* Person who is absent more than 3 times will get D.

Professor
Prof. Jo, Heeseung (For more details... refer here)

Notice
조교 오픈채팅방 1분반
기말고사 - 12/10 수 15시 S4-1

Schedule
Topics Materials / Homework
Course Overview (Syllabus) Dev-Cpp 5.9.2 TDM-GCC 4.8.1 Setup.exe
Computer Architecture Review
Introduction
Representing and Manipulating Integers hw1 (Due date: 9/16 23:00)
Representing and Manipulating Floating Points hw2 (Due date: 10/2 23:00)
Byte Ordering
Machine-level Representation of Programs
Introduction to IA-32
Assembly I Basic Operations
Assembly II Control Flow
Exam.1, 10/22 수, 16시, S4-1 101, 106호
1분반 - Exam.1 results
성적확인은 사무실 전화 후 방문
Assembly III Procedures hw3 (Due date: 11/16 23:00)
Skelecton code asmsort.skelecton.zip
윈도우 64bit, IDE와 컴파일러는 첨부버전을 사용하여야 합니다.
Dev-Cpp 5.9.2 TDM-GCC 4.8.1 Setup
Homework3 results 1분반
Assembly IV Complex Data Types
Buffer Overflow hw4 (Due date 12/2 23:00)
binarypassword.exe (수정됨. 다시 받아서 수행하세요.)
1분반 제출
Linking
Optimization
Exam.2, 12/10 수, 15시, S4-1 103, 106호
* Credit: Most of slides for this lecture are based on materials provided by the textbook publisher and Prof. Jinsoo Kim.