저자 머리말 ... 4 워밍업 ... 6 강의 계획표 ... 8 숲과 나무 이야기 ... 10 강의 보조 자료와 참고사이트 ... 12 Part 01 컴퓨터 구조의 개요 Chapter 01 컴퓨터 구조 ... 23 01. 컴퓨터의 구성장치와 기본 구조 ... 25 하드웨어 ... 26 소프트웨어 ... 29 02. 정보의 표현과 저장 ... 30 컴퓨터에서의 정보의 표현 ... 30 수의 진법 ... 31 간단한 진법 변환 ... 33 03. 컴퓨터 구조의 발전 과정 ... 37 04. 컴퓨터의 분류 ... 40 처리 성능과 규모에 따른 분리 ... 40 구조에 따른 분리 ... 42 요약 ... 43 연습문제 ... 45 Part 02 컴퓨터에서의 디지털 시스템 Chapter 02 디지털 논리회로 ... 49 01. 논리 게이트 ... 51 AND 게이트 ... 51 OR 게이트 ... 52 NOT 게이트 ... 54 XOR 게이트 ... 55 NAND 게이트 ... 56 NOR 게이트 ... 58 XNOR 게이트 ... 59 유니버설 게이트 ... 60 02. 부울 대수 ... 62 부울 대수의 기본 법칙 ... 62 드모르강의 정리 ... 67 부울 함수의 표준형 ... 67 함수식을 이용한 부울 함수의 간소화 ... 69 Karnaugh Map을 이용한 부울 함수의 간소화 ... 71 03. 조합 논리회로 ... 78 가산기 ... 78 감산기 ... 82 멀티플렉서 ... 85 디멀티플렉서 ... 86 04. 순차 논리회로 ... 88 플립플롭 ... 88 R-S 플립플롭 ... 89 D 플립플롭 ... 90 J-K 플립플롭 ... 91 T 플립플롭 ... 92 요약 ... 93 연습문제 ... 97 Chapter 03 데이터의 표현과 컴퓨터 연산 ... 99 01. 개념으로 살펴본 CPU 속의 산술 논리 연산장치 살펴보기 ... 101 02. 진법과 진법 변환 ... 103 진법 ... 103 진법 변환 ... 105 03. 연산과 보수 ... 108 보수 ... 108 04. 데이터의 표현 ... 112 정수 표현 ... 112 부동소수점 표현 ... 119 05. 산술 연산 ... 125 정수의 산술 ... 125 부동소수점 수의 산술 ... 137 06. 논리 연산 ... 140 기본적인 논리 연산 ... 140 컴퓨터 응용 논리 연산 ... 141 요약 ... 144 연습문제 ... 147 Part 03 컴퓨터 시스템 Chapter 04 컴퓨터 시스템의 구성과 기능 ... 151 01. 컴퓨터 분해를 통한 본체 살펴보기 ... 153 02. 컴퓨터 구성 요소 ... 155 소프트웨어 ... 156 펌웨어 ... 158 하드웨어 ... 159 03. 컴퓨터의 기능 ... 161 레지스터 ... 162 정보의 표현과 컴퓨터 언어 ... 163 명령어 사이클 ... 166 04. 버스와 상호 연결 ... 170 시스템 버스 ... 170 요약 ... 176 연습문제 ... 179 Chapter 05 캐시 기억장치 ... 181 01. 컴퓨터 본체에서 기억장치 위치 살펴보기 ... 183 02. 컴퓨터 기억장치의 계층적 구조 ... 184 03. 캐시 기억장치 원리 ... 186 캐시 기억장치의 동작 원리 ... 186 적중률 ... 189 04. 캐시 기억장치의 설계 ... 190 캐시 기억장치의 크기 ... 190 인출 방식 ... 190 사상함수 ... 191 교체 알고리즘 ... 196 쓰기 정책 ... 197 캐시의 수 ... 198 05. 다중 프로세서를 사용하는 시스템에서의 캐시 기억장치 ... 201 즉시 쓰기 정책에서의 데이터 불일치 상태 ... 201 나중 쓰기 정책에서의 데이터 불일치 상태 ... 202 캐시 기억장치의 데이터 일관성 유지 방법 ... 203 요약 ... 204 연습문제 ... 207 Chapter 06 주기억장치 ... 209 01. 컴퓨터 본체에서 주기억장치 살펴보기 ... 211 02. 컴퓨터 기억장치 시스템의 개요 ... 212 기억장치 시스템의 특성 ... 212 기억장치 액세스의 유형 ... 212 기억장치의 유형 ... 213 03. 반도체를 사용한 주기억장치 ... 214 RAM ... 214 ROM ... 217 기억소자 구조와 메모리 동작 원리 ... 221 칩 논리 ... 223 칩 패키징 ... 226 04. 가상 기억장치 ... 228 페이지에 의한 매핑 ... 229 세그먼트에 의한 매핑 ... 231 05. 기억장치 모듈 설계 ... 233 1K×8bit RAM 칩들을 이용한 1K×32bit 기억장치 모듈 설계 ... 233 1K×8bit RAM 칩들을 이용한 4K×8bit 기억장치 모듈 설계 ... 233 8bit 마이크로 컴퓨터를 위한 기억장치의 설계 예 ... 235 05. 오류 정정 ... 237 오류 정정 회로의 구성 ... 237 해밍코드 ... 238 07. 기능 향상된 반도체 기억장치 ... 242 요약 ... 244 연습문제 ... 247 Chapter 07 보조기억장치 ... 249 01. 컴퓨터 본체와 보조기억장치 연결 ... 251 02. 자기 디스크 기억장치 ... 253 데이터 조직 ... 254 디스크 포맷팅 ... 256 자기 디스크의 물리적 특징 ... 256 디스크의 성능과 파라미터 ... 258 타이밍의 비교 ... 260 03. RAID ... 261 RAID 레벨 0 ... 261 RAID 레벨 1 ... 263 RAID 레벨 2 ... 264 RAID 레벨 3 ... 265 RAID 레벨 4 ... 266 RAID 레벨 5 ... 268 RAID 레벨 6 ... 268 04. 광 기억장치 ... 270 CD ... 270 CD-ROM ... 271 CD-R ... 272 CD-RW ... 273 DVD ... 274 자기 광 디스크 ... 275 자기 테이프 ... 275 요약 ... 277 연습문제 ... 280 Chapter 08 입력/출력 ... 281 01. 컴퓨터 본체와 입출력장치와의 연결 살펴보기 ... 283 02. 입출력장치 ... 285 입력장치 ... 285 출력장치 ... 286 03. 입출력 모듈 ... 287 입출력 모듈의 기능 ... 287 입출력 모듈의 조직 ... 289 04. 입출력 동작의 처리 기법 ... 291 프로그램 입출력 ... 291 입터럽트-구동 입출력 ... 294 직접 기억장치 액세스 ... 297 요약 ... 303 연습문제 ... 306 Part 04 중앙처리장치 Chapter 09 중앙처리장치의 조직과 기능 ... 309 01. 컴퓨터의 본체에서 CPU의 위치 살펴보기 ... 311 02. CPU의 성능 ... 312 CPU 성능 측정 요소 ... 312 03. CPU의 기능 ... 315 04. CPU의 조직 ... 316 CPU 내부 구조 ... 316 CPU의 동작 ... 318 제어장치의 기본 동작 ... 319 05. 레지스터의 조직 ... 320 사용자에게 보이는 레지스터 ... 320 제어 및 상태 레지스터 ... 321 06. 명령어 사이클 ... 323 명령어 인출 사이클 ... 323 명령어 실행 사이클 ... 325 07. 명령어 파이프라이닝 ... 327 2단계 명령어 파이프라인 ... 327 4단계 명령어 파이프라인 ... 328 6단계 명령어 파이프라인 ... 329 파이프라인에 의한 속도 향상 ... 330 요약 ... 334 연습문제 ... 338 Chapter 10 중앙처리장치의 명령어 ... 341 01. 컴퓨터에서 마이크로 프로세서 유형 보기 ... 343 02. 어셈블리 프로그램의 이해 ... 344 03. 인터럽트 ... 351 인터럽트 사이클 ... 352 인터럽트 사이클의 마이크로 연산 ... 353 다중 인터럽트 ... 355 04. 명령어 세트 ... 358 명령어 세트의 특성 ... 358 오퍼랜드 형태와 수에 따른 명령어 분류 ... 360 명령어 형식이 프로그래밍에 미치는 영향 ... 362 명령어 세트에서 연산의 종류 ... 368 명령어 형식 ... 372 05. 주소 지정 방식 ... 375 직접 주소 지정 방식 ... 375 간접 주소 지정 방식 ... 376 묵시적 주소 지정 방식 ... 377 즉치 주소 지정 방식 ... 377 레지스터 주소 지정 방식 ... 378 레지스터 간접 주소 지정 방식 ... 378 변위 주소 지정 방식 ... 379 간접 사이클 ... 381 요약 ... 383 연습문제 ... 386 Chapter 11 축소 명령어 세트 컴퓨터와 수퍼스칼라 ... 391 01. RISC 마이크로 프로세스 ... 393 02. 축소 명령어 세트 컴퓨터의 개요 ... 394 축소 명령어 세트 컴퓨터의 등장 배경 ... 394 명령어 실행의 특성 분석 ... 395 03. 레지스터를 이용한 명령어 처리 ... 397 04. 축소 명령어 세트 컴퓨터 ... 401 RISC 파이프라이닝 ... 402 파이프라이닝의 최적화 ... 405 RISC와 CISC의 비교 ... 407 05. 수퍼스칼라 프로세스 ... 408 수퍼스칼라의 조직과 구성 ... 408 수퍼 파이프라인 ... 411 요약 ... 415 연습문제 ... 419 Part 05 제어장치와 시스템 버스 Chapter 12 제어장치 ... 425 01. 개념으로 살펴보는 CPU 속의 제어장치 ... 427 02. 마이크로 연산 ... 428 인출 사이클의 마이크로 연산 ... 429 간접 사이클의 마이크로 연산 ... 430 실행 사이클의 마이크로 연산 ... 431 인터럽트 사이클의 마이크로 연산 ... 433 명령어 사이클 코드 ... 434 03. 제어장치의 동작 ... 436 제어장치 모델 ... 436 명령어 사이클에서의 제어 신호 ... 437 제어장치의 구현 방법 ... 440 04. 마이크로 프로그램을 이용한 제어 ... 443 마이크로 명령어 ... 443 제어장치의 구조와 동작 ... 446 마이크로 명령어의 순서 제어 ... 449 마이크로 명령어의 실행 ... 453 요약 ... 456 연습문제 ... 460 Chapter 13 시스템 버스 ... 463 01. 시스템 버스의 연결 보기 ... 465 02. 버스 ... 466 버스 대역폭 ... 466 버스의 유형별 분류 ... 466 버스의 기능별 분류 ... 467 버스의 동작과 동작 타이밍에 따른 분류 ... 470 03. 다중 버스 계층 구조 ... 472 단일 버스 구조 ... 472 전통적인 계층적 다중 버스 ... 472 3계층의 계층적 다중 버스 ... 473 04. 버스 중재 ... 475 버스 중재 방식의 분류 ... 475 병렬 중재 방식 ... 476 직렬 중재 방식 ... 480 폴링 방식 ... 482 요약 ... 484 연습문제 ... 487 Part 06 병렬 조직 Chapter 14 병렬 컴퓨터 구조 ... 493 01. 병렬 프로세서 개념 ... 495 02. 병렬 처리와 병렬 컴퓨터의 분류 ... 496 SISD ... 498 SIMD ... 498 MISD ... 499 MIMD ... 500 03. 배열 프로세서와 다중 프로세서의 개념 ... 503 배열 프로세서 ... 503 다중 프로세서 ... 505 04. 다중 프로세서 시스템 ... 509 대칭적 다중 프로세서 ... 509 비균일 기억장치 액세스 ... 514 클러스터 ... 516 요약 ... 519 연습문제 ... 522 찾아보기 ... 525