자료검색 > 상세페이지

저자

발행처

발행년도

KDC 카테고리

KDC : 005.1
도서 성공과 실패를 결정하는 1%의 프로그래밍 원리

소장정보

소장정보
구분 KM0000023701
낱권정보
자료실 /
청구기호
[강화]종합자료실
005.1-히51성
자료상태 대출가능
반납예정일 -
예약 예약불가
상호대차 신청하기
소장정보
구분 낱권정보 자료실 / 청구기호 자료상태 반납예정일 예약 상호대차
KM0000023701 [강화]종합자료실
005.1-히51성
대출가능 - 예약불가 신청하기
상호대차서비스 신청은 대출가능 소장도서만 가능합니다.

상세정보

2001, 2002 일본 컴퓨터 부분 베스트셀러 1위를 기록한 책. 이 책은 프로그래밍의 응용력을 키우고자 하는 프로그래머와 프로그래밍의 기초를 굳히고 싶은 사람들, 그리고 프로그래밍을 시작하려는 사람들을 위한 책이다. 프로그램의 구조와 동작 원리, 즉 메모리에 로드된 프로그램이 CPU로 해석, 실행되는 구조를...

도서정보 상세보기[NAVER 제공]

상세정보

성공과 실패를 결정하는 1%의 프로그래밍 원리 - 야자와 히사오 지음, 예승철 옮김, 이향선 감수
2001, 2002 일본 컴퓨터 부분 베스트셀러 1위를 기록한 책. 프로그래밍의 응용력을 키우고자 하는 프로그래머와 프로그래밍의 기초를 굳히고 싶은 사람들, 프로그래밍을 시작하려는 사람들을 위한 책. 프로그램의 구조와 동작 원리를 알기 쉽게 설명한다.

목차

제1장 CPU를 알면 프로그래밍이 보여요!

1. CPU의 내부를 자세히 살펴보자!
2. 레지스터로 이루어진 CPU의 세계
3. 프로그램의 흐름은 프로그램 카운터가 책임진다!
4. 알고 보면 재미있는 조건 분기와 반복의 원리
5. 함수 호출의 베일을 벗겨보자!
6. 찰떡궁합! 베이스 레지스터와 인덱스 레지스터
7. CPU는 정말 단순한 작업만 수행할 수 있다?

제2장 컴퓨터는 2진수만 사용한다구요!

1. 컴퓨터가 2진수로 변환된 데이터만 취급하는 숨겨진 비밀
2. 아리송한 2진수의 진정한 의미
3. 자리를 자유자재로 옮겨다니는 시프트 연산!
4. 보수는 1과 0의 반전 후 +1을 하라!
5. 논리·산술 오른쪽 시프트의 작지만 큰 차이
6. 그림으로 풀어보는 논리연산!
별페이지 인터넷으로 프로그래밍 정복하기!

제3장 컴퓨터도 계산을 잘못할 수 있다!

1. 0.1을 100번 더해도 10이 되지 않는다?
2. 2진수 소수를 10진수로 변환하는 방법은?
3. 컴퓨터가 계산을 틀리게 하는 이유
4. 부동 소수 표현 방법을 알아보자!
5. 정규 표현과 익세스 표현 마스터하기
6. 궁금했던 단정도 부동 소수 표현 방법 찜하기
7. 컴퓨터의 계산 실수를 예방하는 방법 두 가지
8. 뚱뚱한 2진수 대신 날씬한 16진수를 사용하자!

{에피소드} CPU는 2진수, 0과 1로 표현한다!

제4장 네모난 메모리를 동그랗게 사용하자!

1. 메모리 IC로 채워진 메모리 구조 살펴보기
2. 메모리는 데이터를 저장하는 빌딩
3. 메모리 어드레스를 저장하는 변수, 포인터!
4. 배열로 메모리를 효율적으로 사용하자!
5. 스택과 큐로 메모리를 렌트하자!
6. 리스트가 있어 데이터 추가 삭제가 쉬어진다!
7. 리스트의 업그레이드, 바이너리 서치 트리!
별페이지 내게 힘을 주는 나만의 자격증 선택하기!

제5장 메모리와 디스크의 친밀한 관계

1. 프로그램은 디스크 → 메모리 → CPU 순으로 진행된다!
2. 디스크의 액세스 속도를 증가시키는 '디스크 캐시'
3. 디스크를 메모리처럼 사용하자! '가상 메모리'
4. 메모리를 절약하는 프로그래밍 기법 노하우
5. 디스크의 하드웨어적인 구조를 알아보자!

제6장 데이터 압축의 비밀을 파헤쳐라!

1. 파일은 바이트 단위로 기록된다
2. 데이터×반복 횟수로 압축하는 런 렝스 코딩
3. 런 렝스 코딩의 단점을 알아보자!
4. 모스 부호를 닮은 허프만 코딩
5. 허프만 코딩의 단점을 보완해주는 허프만 트리
6. 허프만 코딩으로 2배의 압축률을 체험하자!
7. 그림 파일을 압축할 때는 손실 압축을 사용하자!

{에피소드} 'Loading' 뒤에 숨겨진 메모리와 디스크의 관계

제7장 프로그램은 어떤 환경에서 살아가는가?

1. OS와 하드웨어가 프로그램의 작동 환경을 결정한다
2. 하드웨어의 차이를 뛰어넘은 윈도우
3. API는 OS마다 다르다!
4. 마이크로프로세서의 차이까지도 극복한 FreeBSD의 Ports
5. 에뮬레이터로 다른 OS용 프로그램을 즐겨보자!
6. Java가 어떤 OS와 하드웨어도 두렵지 않은 이유
7. OS를 실행해주는 부트 스트랩

제8장 소스 파일로부터 실행 파일이 만들어지기까지...

1. 컴퓨터는 네이티브 코드만 실행할 수 있다!
2. 네이티브 코드 자세히 들여다보기
3. 소스 코드를 네이티브 코드로 번역해주는 컴파일러
4. 컴파일 한 후 EXE 파일이 만들어지기까지
5. 참! 좋다! 스타트업과 라이브러리 파일
6. 컴파일과 링크의 구조를 정리해 보자!
7. EXE 파일이 실행되는 원리를 알아보자!
8. 메모리 영역을 Support 하는 스택과 힙
속 시원하게 풀어주는 Q&A

제9장 OS와 애플리케이션의 관계

1. 역사를 통해 살펴본 OS의 기능
2. 위대한 OS의 존재를 의식하자!
3. 시스템 호출과 고급 언어의 이식성을 알아보자!
4. OS와 고급 언어가 하드웨어를 간접적으로 제어한다
5. 윈도우의 특징 7가지 제대로 분석하기
6. 배치 파일이라고 불리는 셸 스크립트

{에피소드} OS는 애플리케이션을 경영한다!

제10장 어셈블리어에서 프로그램의 참모습을 발견한다!

1. 어셈블리어는 네이티브 코드와 1:1로 대응된다
2. 컴파일러로 어셈블리어 소스 코드 만들기
3. 네이티브 코드로 변환되지 않는 의사 명령어
4. 어셈블리어의 형식 = 옵코드 + 오퍼랜드
5. 어셈블리어에서 가장 많이 사용하는 mov 명령어
6. Push와 Pop으로 데이터 저장과 읽기를 해결하는 스택
7. 함수 호출의 원리를 낯낯이 밝혀보자!
8. 쿵탕쿵탕! 함수의 내부에서 이루어지는 작업들
9. 외부 변수를 위한 영역은 언제나 확보되어 있다!
10. 내부 변수를 위한 영역은 일시적으로 확보된다!
11. 어셈블리어로 반복 루틴을 구현하는 방법
12. 어셈블리어로 조건 분기를 구현하는 방법
13. 어셈블리어를 이용한 버그 때려잡기
14. VB용 프로그램을 어셈블리어 소스 코드로 변환하는 방법

제11장 프로그래밍으로 하드웨어를 제어해 보자!

1. 애플리케이션은 하드웨어와 무관하다?
2. 윈도우가 하드웨어를 제어할 때 사용하는 IN·OUT 명령어
3. PC 스피커를 제어하는 프로그램을 만들어 보자!
4. 도표로 알아보는 인터럽트 처리과정
5. 실시간 데이터 처리를 가능하게 하는 인터럽트
6. 주변기기와 메인 메모리를 직접 연결해주는 DMA
7. 모니터에 문자나 그래픽이 표시되는 원리

{에피소드} 모니터와 텔레비전 그 작지만 큰 차이

제12장 스스로 생각할 수 있는 컴퓨터를 만들려면?

1. '도구'로 사용하는 프로그램과 '생각'하기 위한 프로그램
2. 사람의 사고 방식을 프로그램으로 표현해 보자!
3. '버릇'을 가진 프로그램 만들기
4. 프로그래밍으로 난수를 활용하는 방법
5. 기억 능력을 이용한 프로그래밍 기법
6. 사고 패턴을 프로그램으로 나타내자!

{에피소드} 프로그램 = 생각하는 순서

맺음말
용어 모음집
INDEX

[인터넷서점 알라딘 제공]