Home
posts:
CV Courses Publications Experience Projects

Computer System

Course Information

[Course Outline]
[Korean Version]
본 수업은 프로그래머의 관점에서 컴퓨터 시스템의 동작 원리를 이해하고 컴퓨터 시스템을 효과적이고 효율적으로 프로그래밍하는 방법을 학습하는 것이 목표이다. 따라서 본 수업은 컴퓨터에서 데이터를 표현법. C언어 프로그램을 머신 수준으로 표현하는 방법, 프로그램 최적화, 프로그램 링킹, 메모리 할당/해제, 디버깅방법 등의 주제를 다룬다. 또한 이러한 주제를 포괄하는 프로그래밍 과제를 수행하여 컴퓨터 시스템의 동작 원리와 효율적 프로그래밍 방법을 이해하고 실습한다. 본 수업은 운영 체제, 컴퓨터 구조, 컴파일러, 프로그래밍 언어, 컴퓨터 네트워크, 임베디드 시스템 등의 컴퓨터 시스템 심화 과목의 기초가 된다.
[English Version]
This course aims to help students understand how computer systems operate from a programmer’s perspective and to learn how to program effectively and efficiently on such systems. The course covers topics such as data representation in computers, expressing C language programs at the machine level, program optimization, program linking, memory allocation/deallocation, debugging techniques, and more. Students will also work on programming assignments that encompass these topics to gain a practical understanding of how computer systems function and how to program efficiently. This course serves as a foundation for advanced subjects in computer systems, such as operating systems, computer architecture, compilers, programming languages, computer networks, and embedded systems.

Homework

[Homework 1]float-integer conversion - 6 problems about conversion

[Homework 2]bomb lab

[Homework 3]attack lab

[Homework 4]make a best code to calculate the largest number of calculations(ops/s) - optimizing matrix multiplcation via code optimization