성공과 실패를 결정하는 1%의 프로그래밍 작동 원리
도서명:성공과 실패를 결정하는 1%의 프로그래밍 작동 원리
저자/출판사:가와마타,아키라/성안당
쪽수:495쪽
출판일:2019-08-07
ISBN:9788931555974
목차
머리말
역자의 말
Chapter_00 이 책이 목표로 하는 것
0.1 이 책의 목적
0.2 이 책이 제공하는 에뮬레이터에 관해
0.3 에뮬레이터의 소스 코드에 관해
0.4 이 책에서 소개하는 소스 코드
Chapter_01 기본 논리 편
1.1 디지털과 아날로그
1.2 연속과 이산
1.3 그래도 디지털이 승리하는 이유
1.4 아날로그 컴퓨터는 존재하는가?
1.5 디지털 정보는 얼마나 분할하는 것이 좋은가?
1.6 조지 부울의 등장
1.7 비트
1.8 전압과 비트
1.9 비트 연산
1.10 진리표
1.11 진리표와 등가 회로
1.12 회로 기호도
1.13 논리 연산의 응답 속도
1.14 음의 논리 출력 게이트
1.15 음의 논리 입력 게이트
1.16 다입력 게이트
1.17 수치의 기저
1.18 바이트
1.19 바이트의 친구들
1.20 2진수와 비트의 공통점
1.21 2진수와 비트의 차이점
1.22 1의 보수와 2의 보수
1.23 2의 보수의 비대칭성
1.24 부호 비트
1.25 고정소수점 실수
1.26 부동소수점 실수
1.27 오차의 문제
1.28 8진수
1.29 10진수
1.30 2진화10진수
1.31 16진수
1.32 와이어드 OR
1.33 3상태
1.34 가산기
1.35 플립플롭
1.36 래치
1.37 카운터
1.38 디코더
1.39 멀티플렉서
Chapter_02 CPU 구조/명령 편
2.1 CPU란?
2.2 조상님을 부활시키자
2.3 Z80이라는 옵션
2.4 Intel 8080의 내부 구조
2.5 시분할 버스
2.6 내부 버스와 외부 버스
2.7 버스 수
2.8 레지스터/래치
2.9 8비트 레지스터와 16비트 레지스터
2.10 8비트 레지스터로 간주되는 것
2.11 16비트 레지스터로 간주되는 것
2.12 버퍼
2.13 주소 버퍼
2.14 플래그 플립플롭
2.15 리틀 엔디언과 빅 엔디언
2.16 Intel 8080 전체 명령의 상세한 설명
2.17 연산 장치
2.18 10진 보정
2.19 명령 디코더 및 기계 사이클 인코더
2.20 레지스터 배열
2.21 레지스터 선택
2.22 멀티플렉서
2.23 타이밍 및 제어
2.24 전원
2.25 CPU 패키지
2.26 인터럽트
2.27 DMA
2.28 CPU 구조 편의 나머지
2.29 CPU ?그 외의 필수 지식
Chapter_03 시스템 편
3.1 표준화된 서비스
3.2 직렬 버스와 병렬 버스
3.3 메모리(기억 장치)
3.4 교환 가능한 메모리
3.5 메모리?고쳐 쓰는 것이 가능한지의 여부
3.6 메모리 ?액세스 속도 에 따른 분류
3.7 주요한 RAM의 분류
3.8 D-RAM 리프레시
3.9 주요한 ROM의 분류
3.10 메모리 백업
3.11 캐시 메모리
3.12 뱅크 전환
3.13 뱅크 전환과 CP/M
3.14 2포트 메모리
3.15 병렬 입출력
3.16 직렬 입출력
3.17 인터럽트 제어기
3.18 DMA 제어기
3.19 디스크 제어기
3.20 CRT 제어기
3.21 수동 DMA
3.22 문자 생성기
3.23 텍스트 VRAM과 그래픽 VRAM
3.24 사운드 생성기
3.25 주소 디코더
3.26 간이 디코더와 고스트 이미지
3.27 클럭 생성기
3.28 버스 버퍼
3.29 키보드 인터페이스
3.30 마우스 인터페이스
3.31 전원
3.32 마더보드
Chapter_04 펌웨어 편
4.1 구동 스타일
4.2 구동의 역사
4.3 펌웨어와 BIOS
4.4 PC의 구동 순서
4.5 기계어 모니터와 완전히 독립한 시스템
4.6 CPU 에뮬레이터의 구현
Chapter_05 운영 체제 편
5.1 운영 체제의 역할
5.2 운영 체제의 기본 구조
5.3 CP/M의 부팅
5.4 BIOS의 내용
5.5 CP/M을 사용하여 BIOS를 개발한다면
Chapter_06 어셈블러 편
6.1 기계어를 어셈블러에서 처리
6.2 어셈블러의 기본 구조
6.3 어셈블러의 분류
6.4 LOAD 명령의 존재 의의
6.5 링커의 존재 의의
6.6 어셈블러의 장단점
6.7 에뮬레이터 EE8080의 간이 어셈블러
Chapter_07 고급 언어 편
7.1 어셈블러의 한계
7.2 문법과 규격과 구현
7.3 인터프리터와 컴파일러
7.4 간단한 고급 언어를 시험적으로 만들어보자
7.5 언어 명세의 확정
7.6 어휘 분석
7.7 구문 분석
7.8 실행 또는 코드 생성
7.9 minibf의 소스 코드
7.10 컴파일러 컴파일러
7.11 구문 트리
7.12 최적화
7.13 레지스터 변수와 레지스터 컬러링
7.14 코드 생성
Chapter_08 보****편
8.1 자기증식 프로그램은 가능한가?
8.2 무한 자기증식 프로그램은 가능한가?
8.3 악의를 가진 제삼자가 처리에 끼어들 수 있는가?
8.4 자살 프로그램은 가능한가?
8.5 프로그램이 서로를 망가뜨리는 게임은 가능한가?
Chapter_09 마무리
9.1 마법과 분간할 수 없다
9.2 과거를 보면 미래가 보인다
9.3 그리고 여러분이 사용하는 애플리케이션이 탄생했다
부록
에뮬레이터 EE8080 조작 설명
WordMaster 간이 레퍼런스
CP/M CCP 간이 레퍼런스
CP/M CALL 5 간이 레퍼런스
CP/M DDT 간이 레퍼런스
ADM-3A 간이 레퍼런스
독자를 위한 힌트
찾아보기