[컴퓨터구조]         과제 제출 게시판
 

·   강의 목표
프로그래머의 관점에서 컴퓨터 시스템의 하드웨어와 소프트웨어의 동작 및 구성을 이해하고, 더 좋은 프로그램 개발을 위한 컴퓨터 시스템의 관련 지식을 습득한다. 주요 내용으로 정보의 표현과 처리, 프로그램의 기계어 (어셈블리어) 수준 표현, 프로세서 및 메모리 계층 구조 등을 강의하고, 리눅스 시스템 상에서 x86 어셈블리어와 프로세서 시뮬레이터 등을 실습한다.

·   교재
컴퓨터 시스템 제 3판, R.Bryant, D. O'Hallaron 원저, 김형신 역, 퍼스트
(
Computer Systems: A Programmer’s Perspective, 3/E)

·   강의 노트  

강의 내용

실습 및 보충 내용

0. 강의 소개

 

1.  컴퓨터 시스템으로의 여행

  실습1. VirtualBox 실습 플랫폼 구축

  2-1. 정보의 표현과 처리 - 정수

2-2. 정보의 표현과 처리 - 실수

 

  3-1. 프로그램의 기계수준 표현 - 기초

실습2. GDB gdbgui

3-2. 프로그램의 기계수준 표현 - 제어문

3-3. 프로그램의 기계수준 표현 - 프로시저

 

  3-4. 프로그램의 기계수준 표현 - 데이터

 

  4-1. 프로세서 구조 - 명령어집합

실습3. Y86-64 시뮬레이터 - YAS YIS

  4-2. 프로세서 구조 - 논리설계

  4-3. 프로세서 구조 - 순차적 구현

  실습4.  Y86-64 시뮬레이터 - SEQ

  4-4. 프로세서 구조 - 파이프라인 구현 1

 

  4-5. 프로세서 구조 - 파이프라인 구현 2

  실습5.  Y86-64 시뮬레이터 - PIPE

 

·  참고 사이트
교재 관련 보충 자료
Carnegie Mellon University 강의
      15-213/18-213: Introduction to Computer Systems
      15-349: Introduction to Processor Design
GDB
gdbgui

·    평가
출석 10%, 시험 50%, 과제 40%