목차
제1장 컴퓨터의 역사와 마이크로프로세서
   1-1 컴퓨터의 역사 ... 17
      1-1-1 제1세대 컴퓨터 ... 18
      1-1-2 제2세대 컴퓨터 ... 19
      1-1-3 제3세대 컴퓨터 ... 19
   1-2 마이크로 컴퓨터의 출현 ... 21
      1-2-1 4비트와 8비트 단일 칩 마이크로 컴퓨터 ... 23
      1-2-2 8비트 마이크로프로세서 ... 28
      1-2-3 16비트 마이크로프로세서 ... 36
   연습문제 ... 48
제2장 마이크로 컴퓨터 시스템의 구성
   2-1 마이크로 컴퓨터 시스템 설계와 응용 ... 49
      2-1-1 마이크로 컴퓨터 시스템 설계 ... 49
      2-1-2 마이크로 컴퓨터의 응용 ... 54
   2-2 마이크로 컴퓨터 시스템의 하아드웨어 ... 58
      2-2-1 마이크로 컴퓨터 시스템의 기본 구성 ... 58
      2-2-2 CPU의 핀 기능과 신호 ... 58
      2-2-3 버스의 구성 ... 63
      2-2-4 메모리 회로 구성 ... 65
      2-2-5 데이터 전송 방식에 따른 I / O설계 ... 77
      2-2-6 I/O장치 ... 80
      2-2-7 마이크로 컴퓨터 데이터 통신 ... 102
   2-3 마이크로 컴퓨터 시스템의 소프트웨어 ... 118
      2-3-1 소프트웨어 개발과 평가 ... 118
      2-3-2 소프트웨어 설계와 테스트 ... 121
   연습문제 ... 136
제3장 Z 80 CPU의 구조와 기능
   3-1 Z 80 CPU의 구조 ... 138
      3-1-1 Z 80 CPU의 특징 ... 138
      3-1-2 Z 80 CPU의 핀 기능 ... 140
      3-1-3 Z 80 CPU의 내부 구조 ... 143
      3-1-4 명령어 수행 과정 ... 145
   3-2 Z 80 CPU의 레지스터 ... 149
      3-2-1 Z 80 CPU 레지스터의 종류 ... 149
      3-2-2 어큐뮬레이터와 플래그 ... 149
      3-2-3 8비트 범용 레지스터 ... 152
      3-2-4 특수 용도 레지스터 ... 153
   3-3 Z 80 명령어 ... 154
      3-3-1 Z 80 CPU의 번지 지정 방법 ... 154
      3-3-2 Z 80 명령어 ... 164
   3-4 Z 80 CPU 타이밍 ... 194
      3-4-1 Z 80 CPU의 기본 타이밍 ... 194
      3-4-2 명령어 OP 코우드 페치 사이클 ... 195
      3-4-3 메모리 리이드/라이트 사이클 ... 197
      3-4-4 I/O 리이드/라이트 사이클 ... 198
      3-4-5 버스 요구/인정 사이클 ... 200
      3-4-6 인터럽트 요구/인정 사이클 ... 200
      3-4-7 HALT 사이클 ... 203
   연습문제 ... 204
제4장 Z 80 명령어를 사용한 기본 프로그램
   4-1 비트 단위 데이터의 처리 프로그램 ... 207
      4-1-1 비트 보수화 프로그램 ... 207
      4-1-2 비트의 AND/OR(논리적/논리합) 연산 프로그램 ... 208
      4-1-3 캐리 플래그의 처리 프로그램 ... 209
      4-1-4 제로 플래그의 처리 프로그램 ... 212
      4-1-5 사인 플래그의 처리 프로그램 ... 213
      4-1-6 패리티/오우버플로우 플래그의 처리 프로그램 ... 214
      4-1-7 비트 세트/리세트를 사용한 프로그램 ... 214
      4-1-8 비트 테스트 프로그램 ... 215
   4-2 니블 단위 데이터의 처리 프로그램 ... 216
   4-3 바이트 단위 데이터의 처리 프로그램 ... 217
      4-3-1 1바이트(8비트) 데이터의 전송 프로그램 ... 217
      4-3-2 바이트 데이터의 산술 및 논리 연산 프로그램 ... 222
   4-4 워어드 단위 데이터의 처리 프로그램 ... 224
      4-4-1 2바이트(1워어드) 데이터의 전송 및 교환 프로그램 ... 224
      4-4-2 2바이트 데이터의 산술 연산 프로그램 ... 229
   연습문제 ... 230
제5장 루우프
   5-1 루우프의 종류 ... 234
      5-1-1 무조건 GO-TO 루우프 ... 235
      5-1-2 EXIT-IF 루우프 ... 236
      5-1-3 WHILE-DO 루우프 ... 237
      5-1-4 REPEAT-UNTIL 루우프 ... 238
   5-2 메모리의 내용을 삭제시키는 프로그램 ... 240
   5-3 블록 데이터 무더기 자료의 전송 프로그램 ... 242
   5-4 블록 데이터 검색 프로그램 ... 244
   5-5 블록 데이터 중에서 음수의 갯수를 세는 프로그램 ... 245
   5-6 최대값과 최소값을 구하는 프로그램 ... 246
   5-7 데이터를 버퍼로 이동시키는 프로그램 ... 248
   5-8 N개 데이터의 총합을 구하는 프로그램 ... 249
   5-9 N개 데이터의 체크섬 계산 프로그램 ... 250
   5-10 문자열 비교 프로그램 ... 251
   연습문제 ... 252
제6장 코우드
   6-1 코우드의 종류 ... 254
      6-1-1 2진 코우드 ... 255
      6-1-2 10진 코우드 ... 258
      6-1-3 2-out of-5 코우드 ... 258
      6-1-4 그레이 코우드 ... 259
      6-1-5 7세그먼트 표시용 코우드 ... 260
      6-1-6 키이보오드용 코우드 ... 262
   6-2 BCD의 2진 변환 프로그램 ... 266
   6-3 2진수의 BCD 변환 프로그램 ... 269
   6-4 ASCII의 10진수 변환 프로그램 ... 271
   6-5 ASCII의 16진수 변환 프로그램 ... 273
   6-6 16진수의 ASCII 변환 프로그램 ... 274
   6-7 2진 코우드의 그레이 코우드 변환 프로그램 ... 276
   6-8 그레이 코우드의 2진 코우드 변환 프로그램 ... 277
   6-9 BCD 데이터 기억 형태 변환 프로그램 ... 278
   6-10 밀집형 BCD의 자리 이동에 관한 프로그램 ... 280
   연습문제 ... 280
제7장 서브루우틴(부 프로그램)
   7-1 서브루우틴의 구성과 기능 ... 282
   7-2 패턴 식별 서브루우틴 ... 288
   7-3 난수 발생 서브루우틴 ... 289
   7-4 메모리 검색 서브루우틴 ... 290
   7-5 다중 서브루우틴의 작성 ... 292
   7-6 변형된 서브루우틴의 작성 ... 295
   연습문제 ... 297
제8장 자료 구조
   8-1 여러 가지 자료 구조 ... 299
      8-1-1 포인터 ... 300
      8-1-2 리스트 ... 300
      8-1-3 검색과 분류 ... 304
   8-2 자료 구조 설계 프로그램 ... 309
      8-2-1 리스트 데이터의 표현 ... 309
      8-2-2 단순 리스트의 검색, 삽입과 제거 프로그램 ... 310
      8-2-3 알파벳 리스트의 검색과 삽입 및 제거 프로그램 ... 316
      8-2-4 연결된 리스트에 있어서의 검색, 삽입과 제거 ... 323
   8-3 테이블 검색을 이용한 코우드 변환 프로그램 ... 328
      8-3-1 ASCII를 BCD로 변환 ... 328
      8-3-2 10진수를 7세그먼트로 변환 ... 329
   8-4 버블 분류 프로그램 ... 330
   8-5 순위 결정 프로그램 ... 331
   연습문제 ... 333
제9장 산술 연산
   9-1 덧셈 ... 334
      9-1-1 N바이트 2진 덧셈 ... 335
      9-1-2 N바이트 밀집형 BCD 덧셈 ... 336
      9-1-3 N바이트 비밀집형 BCD 덧셈 ... 336
   9-2 뺄셈 ... 337
      9-2-1 N바이트 2진 뺄셈 ... 338
      9-2-2 N바이트 밀집형 BCD 뺄셈 ... 338
      9-2-3 N바이트 비밀집형 BCD 뺄셈 ... 339
   9-3 곱셈 ... 340
      9-3-1 반복 덧셈에 의한 2진 곱셈 ... 341
      9-3-2 가산 후 이동법에 의한 2진 곱셈 ... 342
   9-4 나눗셈 ... 343
      9-4-1 반복 뺄셈에 의한 나눗셈 ... 344
      9-4-2 재저장 방법에 의한 나눗셈 ... 345
      9-4-3 비재저장 방법에 의한 나눗셈 ... 346
   9-5 기타 산술 응용 프로그램 ... 348
      9-5-1 M←M*10의 연산 프로그램 ... 348
      9-5-2 상대 번지 지정 방법의 오프세트 계산 ... 348
      9-5-3 <?import namespace ... m ur
      9-5-4 <m:math xmlns ... '"htt
      9-5-5 돗수 분포표 작성 프로그램 ... 353
      9-5-6 합계와 평균을 구하는 프로그램 ... 355
   연습문제 ... 358
제10장 프로그래밍 언어
   10-1 고급 언어 개론 ... 359
      10-1-1 어셈블리어와 고급 언어의 비교 ... 359
      10-1-2 고급 언어 프로그램 작성과 실행에 필요한 프로그램 ... 360
      10-1-3 고급 언어의 종류 ... 362
   10-2 BASIC 프로그래밍 ... 363
      10-2-1 BASIC 프로그램의 구성 ... 364
      10-2-2 BASIC에 사용하는 상수와 변수 ... 364
      10-2-3 BASIC의 산술 연산자 ... 365
      10-2-4 BASIC의 관계 연산자 ... 365
      10-2-5 BASIC의 내장 함수 ... 366
      10-2-6 BASIC문의 종류 ... 366
      10-2-7 문자열과 배열 ... 371
   10-3 FORTRAN 프로그래밍 ... 373
      10-3-1 FORTRAN의 데이터 종류 ... 374
      10-3-2 FORTRAN 연산자-산술 연산자, 관계 연산자와 논리 연산자 ... 374
      10-3-3 서브루우틴과 함수 ... 375
      10-3-4 FORTRAN 프로그램 구성과 문장 종류 ... 375
   10-4 PASCAL 프로그래밍 ... 381
      10-4-1 PASCAL 프로그램의 구조 ... 381
      10-4-2 PASCAL의 선언부 ... 383
      10-4-3 PASCAL 연산자 ... 386
      10-4-4 PASCAL문 ... 386
      10-4-5 PASCAL의 데이터 입출력 ... 389
   연습문제 ... 391
제11장 메모리 회로
   11-1 메모리의 종류 ... 394
      11-1-1 메모리 소자의 특성과 성능 ... 394
      11-1-2 메모리 제조 기술 ... 396
      11-1-3 메모리 선택 기준 ... 398
   11-2 메모리의 물리적 어드레스 지정 방법 ... 399
      11-2-1 메모리의 데이터 라인과 어드레스 라인 ... 399
   11-3 EPROM을 사용한 메모리 회로 ... 403
      11-3-1 EPROM의 선택 기준 ... 403
      11-3-2 EPROM의 종류 ... 405
      11-3-3 EPROM 프로그래머 ... 405
      11-3-4 EPROM의 접속도 ... 414
   11-4 스태틱 RAM을 사용한 메모리 회로 ... 414
      11-4-1 스태틱 RAM의 I/O구성 ... 414
      11-4-2 스태틱 RAM의 비트용량 및 비트 구성에 따른 메모리 회로 ... 414
   11-5 다이내믹 RAM을 사용한 메모리 회로 ... 414
      11-5-1 다이내믹 RAM의 선택 기준 ... 425
      11-5-2 다이내믹 RAM의 종류 ... 426
      11-5-3 다이내믹 RAM의 리프레시 동작 ... 430
      11-5-4 Z 80 CPU와 다이내믹 RAM의 인터페이스 ... 431
   연습문제 ... 434
제12장 인터럽트
   12-1 마이크로 컴퓨터 인터럽트 기능의 중요성 ... 436
   12-2 인터럽트의 개념 ... 437
      12-2-1 인터럽트의 종류 ... 439
      12-2-2 인터럽트 처리 과정 ... 439
      12-2-3 인터럽트 시스템의 구성 ... 440
   12-3 Z 80 인터럽트 ... 442
      12-3-1 논 마스커블 인터럽트(NMI) ... 443
      12-3-2 Z 80 인터럽트 모우드의 종류 ... 444
      12-3-3 Z 80 리세트 핀의 기능 ... 452
      12-3-5 Z 80 인터럽트 시스템의 구성 ... 453
      12-3-6 Z 80 인터럽트 처리 과정 ... 456
   12-4 Z 80 인터럽트의 응용 프로그래밍 ... 457
      12-4-1 Z 80 논 마스커블 인터럽트 ... 457
      12-4-2 Z 80 모우드0 인터럽트 ... 458
      12-4-3 Z 80 모우드1 인터럽트 ... 459
      12-4-4 Z 80 모우드2 인터럽트 ... 460
   연습문제 ... 462
제13장 병렬 입출력
   13-1 병렬 입출력의 기능과 종류 ... 463
      13-1-1 TTL IC에 의한 병렬 입출력 ... 464
      13-1-2 범용 LSI에 의한 병렬 입출력 ... 469
   13-2 CPU와 I/O 포오트간 데이터 전송 동작 ... 471
   13-3 Z 80 PIO ... 473
   13-4 Z 80 PIO의 응용 프로그램 ... 484
      13-4-1 PIO 프로그래밍 ... 484
      13-4-2 모우드 0와 모우드 1의 응용 프로그램 ... 487
      13-4-3 모우드 2의 응용 프로그램 ... 489
      13-4-4 모우드 3의 응용 프로그램 ... 490
   13-5 PIO의 인터페이스 ... 493
      13-5-1 PIO의 리세트 ... 493
      13-5-2 CPU와의 접속 ... 494
      13-5-3 PIO를 사용한 센트로닉스 인터페이스의 설계 ... 494
      13-5-4 쌍방향 모우드(모우드2)의 응용과 그 인터페이스 ... 498
   연습 문제 ... 500
제14장 직렬 입출력
   14-1 직렬 입출력 LSI의 용도 ... 501
   14-2 직렬 데이터의 통신 방식 ... 502
      14-2-1 비동기 통신 방식 ... 502
      14-2-2 동기 통신 방식 ... 503
      14-2-3 SDLC 통신 방식 ... 504
   14-3 직렬 입출력 LSI의 구조 ... 504
      14-3-1 비동기 통신 LSI ... 504
      14-3-2 동기 통신 LSI ... 507
      14-3-3 비동기 및 동기 통신 LSI ... 507
   14-4 Z 80 SIO ... 509
      14-4-1 Z 80 SIO의 구조 ... 509
      14-4-2 Z 80 SIO 단자의 기능 ... 510
      14-4-3 Z 80 SIO의 인터럽트 ... 512
      14-4-4 SIO의 내부 레지스터 기능 ... 513
   14-5 Z 80 SIO의 비동기 통신에의 응용 ... 516
      14-5-1 RS-232C의 하아드웨어 구성 ... 516
      14-5-2 RS-232C 사용을 위한 Z80 SIO 초기 설정 프로그램 ... 517
      14-5-3 Z80 SIO의 송신 프로그램 ... 521
      14-5-4 Z80 SIO의 수신 프로그램 ... 525
   연습문제 ... 531
제15장 카운터와 타이머
   15-1 Z 80 CTC ... 533
      15-1-1 Z 80 CTC의 구조와 기능 ... 533
      15-1-2 CTC의 Z80 CPU와의 접속 ... 542
      15-1-3 CTC의 동작 ... 543
   15-2 CTC의 프로그래밍 ... 544
   15-3 CTC를 사용한 보오 레이트 제너레이터 설계 ... 547
   15-4 CTC를 사용한 시계 설계 ... 549
   연습문제 ... 553
제16장 DMA(direct memory access)
   16-1 DMA의 개요 ... 554
   16-2 Z 80 DMA ... 557
      16-2-1 Z 80 DMA의 구조와 기능 ... 557
      16-2-2 Z 80 DMA의 데이터 전송 모우드 ... 563
      16-2-3 Z 80 DMA 타이밍 ... 565
   16-3 Z 80 DMA의 초기 설정 프로그램 ... 571
   16-4 Z 80 CPU와 Z80 DMA의 인터페이스 ... 571
   16-5 Z 80 DMA와 FDC와의 인터페이스 ... 575
   연습문제 ... 586
제17장 지연 시간의 계산
   17-1 지연 시간 프로그램의 용도 ... 587
   17-2 지연 시간을 이용한 예 ... 590
      17-2-1 펄스 발생 프로그램 ... 590
      17-2-2 LED 점멸용 프로그램 ... 591
      17-2-3 교통 신호등 제어용 프로그램 ... 593
   연습문제 ... 596
제18장 LED 디스플레아와 키이보오드 인터페이스
   18-1 7-세그먼트 LED의 문자 코우드 ... 598
   18-2 다단 LED 디스플레이 ... 600
   18-3 래치를 사용한 다단 LCD 디스플레이 ... 603
   18-4 키이보오드 ... 605
      18-4-1 인코우디드 키이보오드 ... 605
      18-4-2 스캐닝 키이보오드 ... 607
      18-4-3 키이 스위치의 디바운싱 ... 612
   18-5 키이보오드와 LED 디스플레이 장치의 인터페이스 ... 615
      18-5-1 키이보오드와 LED 디스플레이 접속 회로 구성 ... 615
      18-5-2 키이보오드와 LED 디스플레이 컨트로울러 LSI8279 ... 618
   연습문제 ... 624
제19장 CRT 디스플레이
   19-1 영상 신호 발생의 기초 기술 ... 626
      19-1-1 영상 신호 ... 626
      19-1-2 컬러 TV 신호 ... 627
      19-1-3 CRT 디스플레이의 영상 신호 ... 629
      19-1-4 CRT 문자 디스플레이의 기초 기술 ... 630
   19-2 문자 디스플레이 장치의 제작 ... 635
   19-3 그래픽 디스플레이의 제작 ... 638
   19-4 그래픽 디스플레이 방식을 사용한 문자 디스플레이 ... 646
   연습문제 ... 647
제20장 카세트 인터페이스
   20-1 카세트 인터페이스를 이용한 직렬 데이터 전송 ... 649
   20-2 카세트 테이프 레코오더용 변복조 회로 ... 651
   20-3 토운 버어스트 방식을 사용한 카세트 인터페이스와 소프트웨어 ... 652
   20-4 FSK 방식을 사용한 카세트 인터페이스와 소프트웨어 ... 661
   연습문제 ... 665
제21장 D/A와 A/D 컨버어터 인터페이스
   21-1 D/A 컨버어터 ... 666
      21-1-1 저항 결합형 D/A 컨버어터 ... 667
      21-1-2 R/2R 사다리꼴 D/A 컨버어터 ... 669
      21-1-3 모놀리딕과 하이브리드 D/A 컨버어터 ... 670
   21-2 A/D 컨버어터 ... 673
      21-2-1 병렬 비교기형 A/D 컨버어터 ... 673
      21-2-2 싱글 슬로우프형 A/D 컨버어터 ... 674
      21-2-3 듀얼 슬로우프형 A/D 컨버어터 ... 675
      21-2-4 D/A 컨버어터 결합형 A/D 컨버어터 ... 676
   21-3 D/A 컨버어터의 응용 ... 679
   21-4 A/D 컨버어터의 응용 ... 681
   연습 문제 ... 684
찾아보기 ... 685
INDEX ... 691
닫기