저자 머리말 ... 4 전문가 컬럼 ... 6 워밍업 ... 8 강의계획표 ... 10 강의보조자료와 참고사이트 ... 11 학습 로드맵 ... 12 Chapter 1 컴퓨터 구조 1 컴퓨터 시스템의 구성 요소 ... 24 1 하드웨어 ... 24 2 소프트웨어 ... 28 2 컴퓨터 구조의 발전 과정 ... 29 1 컴퓨터의 발전 과정 ... 29 2 컴퓨터 산업의 발전 단계 ... 32 3 컴퓨터의 분류 ... 35 1 사용 목적에 따른 분류 ... 35 2 사용 데이터에 따른 분류 ... 36 3 처리 능력에 따른 분류 ... 36 4 구조에 따른 분류 ... 38 4 컴퓨터 정보의 표현과 저장 ... 39 1 컴퓨터에서의 정보의 표현 ... 39 2 수의 진법 ... 40 3 진법 변환 ... 46 요약 ... 57 연습문제 ... 58 Chapter 2 데이터의 표현과 컴퓨터 연산 1 보수의 개념 ... 62 1 수(數)의 분류 ... 62 2 보수의 정의 ... 64 3 부호가 없는 2진수의 뺄셈 연산에서 보수의 활용 ... 66 2 데이터의 2진수 표현 ... 71 1 정수의 표현 ... 71 2 소수의 표현 ... 79 3 2진수의 연산 ... 88 1 2진수의 산술연산 ... 88 2 2진수의 논리연산 ... 99 4 문자 데이터의 표현 ... 103 1 표준 BCD 코드 ... 103 2 ASCII 코드 ... 104 요약 ... 107 연습문제 ... 110 Chapter 3 디지털 논리 1 논리 게이트 ... 114 1 AND 게이트 ... 114 2 OR 게이트 ... 116 3 NOT 게이트 ... 118 4 XOR 게이트 ... 120 5 NAND 게이트 ... 123 6 NOR 게이트 ... 125 7 XNOR 게이트 ... 126 8 범용 논리 게이트 ... 129 2 부울 대수 ... 131 1 부울 대수의 기본 법칙 ... 131 2 드모르강의 법칙 ... 135 3 부울 대수의 기본 정리 ... 136 4 부울 대수의 표준형 ... 141 3 논리식의 간략화 ... 144 1 카르노 도표 ... 144 2 카르노 도표를 이용한 부울 대수식의 간략화 ... 148 4 플립플롭 ... 154 1 래치 ... 154 2 R-S 플립플롭 ... 157 3 D 플립플롭 ... 158 4 J-K 플립플롭 ... 160 5 T 플립플롭 ... 161 요약 ... 162 연습문제 ... 166 Chapter 4 컴퓨터에서 활용되는 디지털 논리회로 1 조합 논리회로와 순차 논리회로의 개념 ... 170 2 조합 논리회로 ... 173 1 가산기 ... 173 2 감산기 ... 178 3 비교기 ... 182 4 인코더와 디코더 ... 185 5 멀티플렉서와 디멀티플렉서 ... 188 6 패리티 검사기 ... 191 3 순차 논리회로 ... 193 1 레지스터 ... 193 2 카운터 ... 204 요약 ... 214 연습문제 ... 216 Chapter 5 컴퓨터 시스템의 구성과 기능 1 컴퓨터 분해를 통한 구성장치의 분석 ... 220 1 입출력장치 ... 221 2 주변장치 ... 222 3 주회로기판에 존재하는 구성 요소 ... 223 2 컴퓨터의 구성 요소 ... 226 1 하드웨어 ... 227 2 소프트웨어 ... 235 3 펌웨어 ... 240 3 버스와 상호 연결 ... 241 1 시스템 버스의 분류 ... 241 2 시스템 버스의 방향성과 기억장치 쓰기와 읽기 시간 ... 243 3 CPU와 주병장치의 데이터 전송 ... 244 4 컴퓨터의 기능과 동작 ... 247 1 컴퓨터의 기능과 특징 ... 247 2 컴퓨터 시스템의 동작 ... 249 3 컴퓨터 사이클 ... 250 4 컴퓨터 언어를 이용한 프로그램의 작성 ... 252 요약 ... 255 연습문제 ... 258 Chapter 6 중앙처리장치의 조직과 기능 1 CPU와 마이크로프로세서의 이해 ... 262 2 CPU의 내부 구조 ... 265 1 연산장치 ... 265 2 프로세서 레지스터와 스택 ... 266 3 제어장치 ... 271 4 내부 CPU 버스 ... 272 3 CPU의 논리회로 설계 ... 273 1 레지스터 ... 273 2 연산장치 ... 280 3 하드와이어적 제어장치 ... 287 4 CPU의 기능과 동작 그리고 성능 ... 289 1 CPU의 기능과 동작 ... 289 2 CPU의 성능 요소 ... 293 요약 ... 296 연습문제 ... 298 Chapter 7 주기억장치 1 기억장치의 개요 ... 302 1 기억장치의 성능과 계층 구조 ... 303 2 기억장치의 분류 ... 305 2 주기억장치의 이해 ... 307 1 주기억장치의 구조와 동작 ... 307 2 주기억장치의 분할 ... 309 3 주기억장치의 종류 ... 314 3 임의 접근 기억장치와 읽기 전용 기억장치 ... 320 1 임의 접근 기억장치 ... 320 2 읽기 전용 기억장치 ... 328 4 기억장치의 확장 ... 335 1 워드 길이의 확장 ... 335 2 워드 용량의 확장 ... 337 3 8비트 마이크로 컴퓨터를 위한 기억장치의 설계 예 ... 339 요약 ... 341 연습문제 ... 343 Chapter 8 캐시기억장치 1 캐시기억장치의 개념 ... 346 1 컴퓨터의 기억장치 구성 ... 346 2 SRAM ... 348 2 캐시기억장치의 원리 ... 352 1 캐시기억장치의 동작 ... 352 2 적중률 ... 355 3 캐시기억장치의 설계 ... 357 1 캐시기억장치의 크기 ... 358 2 인출 방식 ... 358 3 사상 함수 ... 359 4 교체 알고리즘 ... 370 5 쓰기 정책 ... 372 6 캐시기억장치의 수 ... 373 4 캐시기억장치의 구조 ... 374 1 단일 프로세서의 캐시기억장치 구조 ... 374 2 멀티 프로세서의 캐시기억장치 구조 ... 375 요약 ... 378 연습문제 ... 379 Chapter 9 보조기억장치 1 보조기억장치의 개념 ... 382 1 기억장치 시스템에서의 보조기억장치 ... 382 2 보조기억장치의 분류 ... 384 3 보조기억장치의 평가 기준 ... 385 2 자기 기억장치 ... 387 1 자기 테이프 ... 387 2 자기 디스크 ... 389 3 플로피 디스크와 하드 디스크 ... 396 3 광 디스크 기억장치 ... 398 1 CD-ROM ... 399 2 DVD ... 403 3 블루레이 디스크 ... 404 4 기타 기억장치 ... 405 1 RAID ... 405 2 플래시 기억장치 ... 413 요약 ... 416 연습문제 ... 418 Chapter 10 입력과 출력 1 입력장치와 출력장치의 개념 ... 422 1 입력장치와 출력장치의 종류 ... 422 2 컴퓨터에서 입력장치와 출력장치의 연결 ... 427 3 입력장치와 출력장치의 동작 ... 427 2 입출력 모듈 ... 429 1 입출력 모듈의 기능 ... 429 2 입출력 모듈의 조직 ... 432 3 입출력장치의 연결과 데이터 전송 ... 434 1 입출력 모듈의 연결 ... 435 2 입출력 데이터 전송 ... 437 4 입출력 제어 기법 ... 440 1 중앙처리장치가 직접 제어하는 입출력 제어 방식 ... 440 2 직접 기억장치 액세스를 이용한 입출력 제어 방식 ... 446 3 입출력 프로세서를 이용한 입출력 제어 방식 ... 450 요약 ... 454 연습문제 ... 456 Chapter 11 시스템 버스 1 컴퓨터 버스의 개요 ... 460 1 버스의 분류 ... 460 2 버스의 폭과 대역폭 ... 464 2 시스템 버스의 개념 ... 465 1 시스템 버스의 유형별 분류 ... 466 2 시스템 버스의 기능별 분류 ... 467 3 버스의 동작과 동작 타이밍에 따른 분류 ... 470 3 다중 버스 계층 구조 ... 472 1 단일 버스 구조 ... 472 2 2계층 다중 버스 구조 ... 472 3 3계층 다중 버스 구조 ... 473 4 버스 중재 ... 475 1 버스 중재 방식의 분류 ... 475 2 병렬 중재 방식과 우선순위 방식이 조합된 버스 중재 ... 477 3 직력 중재 방식 ... 481 4 폴링 방식 ... 483 요약 ... 485 연습문제 ... 487 Chapter 12 중앙처리장치의 명령어 1 어셈블리 프로그램의 이해 ... 492 2 명령어 사이클 ... 499 1 명령어 인출 사이클 ... 500 2 명렁어 실행 사이클 ... 501 3 명령어 집합 ... 503 1 명령어 집합의 특성 ... 503 2 명령어 집합에서 연산의 종류 ... 505 3 오퍼랜드 형태와 수에 따른 명령어 분류 ... 509 4 명령어 형식이 프로그래밍에 미치는 영향 ... 512 5 명령어 형식 ... 517 4 축소 명령어 집합 컴퓨터의 개념 ... 519 1 복잡 명령어 집합 컴퓨터 ... 519 2 축소 명령어 집합 컴퓨터 ... 520 요약 ... 522 연습문제 ... 524 Chapter 13 컴퓨터 명령어를 효과적으로 실행하기 위한 기법 1 주소지정 방식 ... 528 1 직접 주소지정 방식 ... 529 2 간접 주소지정 방식 ... 530 3 묵시적 주소지정 방식 ... 531 4 즉시 주소지정 방식 ... 531 5 레지스터 주소지정 방식 ... 532 6 레지스터 간접 주소지정 방식 ... 531 7 변위 주소지정 방식 ... 533 2 인터럽트 처리 ... 536 1 인터럽트의 개념 ... 536 2 인터럽트 사이클과 마이크로 연산 ... 538 3 다중 인터럽트 ... 541 3 명령어 파이프라이닝 ... 545 1 2단계 명령어 파이프라이닝 ... 545 2 4단계 명령어 파이프라이닝 ... 546 3 6단계 명령어 파이프라이닝 ... 547 4 파이프라인에 의한 속도 향상 ... 549 4 슈퍼스칼라 프로세스 ... 552 1 슈퍼스칼라 프로세스의 조직과 구성 ... 552 2 슈퍼 파이프라인 ... 554 요약 ... 558 연습문제 ... 559 Chapter 14 마이크로 연산과 제어장치 1 제어장치의 개념 ... 564 1 제어장치의 구성 ... 564 2 제어장치에서 명령어 사이클 수행 ... 565 2 마이크로 연산 ... 567 1 마이크로 연산의 형식 ... 567 2 명령어 사이클의 마이크로 연산 ... 568 3 제어장치 모델의 구현 ... 576 1 제어장치 모델 ... 577 2 명령어 사이클에서의 제어신호 ... 578 3 제어장치의 구현 방법 ... 581 4 마이크로 프로그램을 이용한 제어 583 1 마이크로 명령어 ... 584 2 제어장치의 주조와 동작 ... 586 3 마이크로 명령어의 순서 제어 ... 590 4 마이크로 명령어의 실행 ... 591 요약 ... 593 연습문제 ... 594 Chapter 15 병렬 컴퓨터 구조 1 병렬 처리의 개념 ... 598 2 병렬 컴퓨터의 분류 ... 601 1 SISD ... 602 2 SIMD ... 603 3 MISD ... 604 4 MIMD ... 605 3 배열 프로세서와 다중 프로세서의 개념 ... 608 1 배열 프로세서 ... 608 2 다중 프로세서 ... 610 4 다중 프로세서 시스템 ... 617 1 대칭형 다중 프로세서 ... 617 2 불균일 기억장치 액세스 ... 621 3 클러스터 ... 622 요약 ... 626 연습문제 ... 628 찾아보기 ... 632