HOME > 상세정보

상세정보

(성공과 실패를 결정하는) 1%의 프로그래밍 작동 원리 (2회 대출)

자료유형
단행본
개인저자
川俣晶, 1964- 권기태, 역
서명 / 저자사항
(성공과 실패를 결정하는) 1%의 프로그래밍 작동 원리 / 가와마타 아키라 지음 ; 권기태 옮김
발행사항
서울 :   BM성안당,   2019  
형태사항
495 p. : 삽화 ; 24 cm
원표제
コンピュータプログラムはどのように動くのか : アタマとカラダで理解する! 特別提供エミュレータで学ぶ内部処理のABC
ISBN
9788931555974
일반주기
부록: 1. 에뮬레이터 EE8080 조작 설명, 2. WordMaster 간이 레퍼런스, 3. CP/M CCP 간이 레퍼런스 외  
색인수록  
000 00000cam c2200205 c 4500
001 000046017300
005 20200214092541
007 ta
008 200212s2019 ulka 001c kor
020 ▼a 9788931555974 ▼g 13000
035 ▼a (KERIS)BIB000015348810
040 ▼a 247009 ▼c 247009 ▼d 211009
041 1 ▼a kor ▼h jpn
082 0 4 ▼a 005.1 ▼2 23
085 ▼a 005.1 ▼2 DDCK
090 ▼a 005.1 ▼b 2019z21
100 1 ▼a 川俣晶, ▼d 1964-
245 2 0 ▼a (성공과 실패를 결정하는) 1%의 프로그래밍 작동 원리 / ▼d 가와마타 아키라 지음 ; ▼e 권기태 옮김
246 1 9 ▼a コンピュータプログラムはどのように動くのか : ▼b アタマとカラダで理解する! 特別提供エミュレータで学ぶ内部処理のABC
246 3 ▼a Konpyūta puroguramu wa donoyōni ugoku noka : ▼b atama to karada de rikai suru tokubetsu teikyō emyurēta de manabu naibu shori no ēbīshī
260 ▼a 서울 : ▼b BM성안당, ▼c 2019
300 ▼a 495 p. : ▼b 삽화 ; ▼c 24 cm
500 ▼a 부록: 1. 에뮬레이터 EE8080 조작 설명, 2. WordMaster 간이 레퍼런스, 3. CP/M CCP 간이 레퍼런스 외
500 ▼a 색인수록
700 1 ▼a 권기태, ▼e
900 1 0 ▼a 가와마타 아키라, ▼e
900 1 0 ▼a Kawamata, Akira, ▼e
945 ▼a KLPA

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 과학도서관/Sci-Info(1층서고)/ 청구기호 005.1 2019z21 등록번호 121252296 도서상태 대출가능 반납예정일 예약 서비스 B M

컨텐츠정보

책소개

프로그래밍을 시작하고 싶어하는 사람과 프로그램 능력을 키우고 싶어하는 프로그래머 및 컴퓨터 사용자를 위해 하드웨어의 구조 및 프로그램이 작동하는 원리를 9장에 나누어 설명하고 있다. 알기 쉬운 대화형 해설과 풍부한 사진 자료 및 실제 코딩 소스를 통해 자연스럽게 따라할 수 있도록 구성하였다. 또한 부록에는 에뮬레이터 EE8080의 조작 설명은 물론, 본문에서 다룬 보충 설명을 정리하여 구성하였다.

이 책만큼 하드웨어 기반의 프로그래밍 구조와 작동 원리에 대해 체계적으로 설명한 책은 없다!

최근 코딩 교육에 대한 관심이 뜨겁다. 선진국들은 이미 코딩을 정규 교육과정에 편입시켜 교육 중이며, 우리나라도 전국 초?중?고교에서 소프트웨어 교육을 의무화하고 있다. 간단한 퍼즐이나 블록 맞추기 등을 비롯해, 파이썬, 자바, C와 같은 소프트웨어 관련 교육을 받고 있다. 그러나 이에 앞서 소프트웨어 교육 효과를 극대화하기 위해서는 프로그래밍 교육과 함께 소프트웨어가 실행되는 컴퓨터 시스템 자체를 이해할 수 있는 동작 원리를 이해하고, 프로그램이 컴퓨터상에서 실행되는 과정을 이해하는 것이 효과적인 소프트웨어의 첫걸음이다.

이 책은 프로그래밍을 시작하고 싶어하는 사람과 프로그램 능력을 키우고 싶어하는 프로그래머 및 컴퓨터 사용자를 위해 하드웨어의 구조 및 프로그램이 작동하는 원리를 9장에 나누어 설명하고 있다. 알기 쉬운 대화형 해설과 풍부한 사진 자료 및 실제 코딩 소스를 통해 자연스럽게 따라할 수 있도록 구성하였다. 또한 부록에는 에뮬레이터 EE8080의 조작 설명은 물론, 본문에서 다룬 보충 설명을 정리하여 구성하였다.

종래의 컴퓨터공학 개론 강의는 세 가지 유형, 즉 특정 언어를 실습하는 프로그래밍 입문 과정, 컴퓨터공학과의 각 전공 내용을 조금씩 다루는 과정, MS 오피스 프로그램을 주로 다루는 과정으로 구분된다.
이 책은 컴퓨터공학 개론 과목의 성격에 가장 부합하는 책으로, 비트 수준의 기본 로직부터 CPU 구조와 명령, 아키텍처, 운영 체제와 어셈블러, 고급 언어의 컴파일 과정 등과 같은 다양한 주제를 알기 쉽게 다루고 있으며, 자기증식 프로그램, 자살 프로그램 등의 흥미 있는 주제까지 아우른다. 또한 저자가 직접 개발한 에뮬레이터를 이용해 직접 실습하면서 원리를 깨우칠 수 있다.
이 책을 공부하는 데 필요한 자료는 저자의 깃허브(github)에 공개하고 있으며, 강의를 위한 실습 자료 또는 독학을 위한 유용한 자료가 될 것이다.


정보제공 : Aladin

목차

머리말
역자의 말

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 간이 레퍼런스
독자를 위한 힌트

찾아보기

관련분야 신착자료