장바구니 담기 close

장바구니에 상품을 담았습니다.

컴파일러의 이해

컴파일러의 이해

  • 박두순
  • |
  • 한빛아카데미
  • |
  • 2016-01-31 출간
  • |
  • 508페이지
  • |
  • 188 X 257 mm /1001g
  • |
  • ISBN 9791156642411
판매가

27,000원

즉시할인가

26,730

배송비

2,500원

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
26,730

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

도서 장점

① 방대한 컴파일러 이론 중 핵심만 추려 다룹니다.

컴파일러는 시스템 프로그램이기 때문에 시스템에 관련된 모든 내용을 알아야 하므로 난이도가 높은 편입니다. 하지만 이 책은 컴파일러 학습 관련 지식을 부분적으로 간단히 소개하여 쉽게 배울 수 있습니다. 총 13장으로 구성되어 있으며, 1~2장에서는 컴파일러의 개요를 훑고, 3장과 5장에서는 어휘 분석기와 구문 분석기를 설명하기 위해 형식 언어와 오토마타의 이론을, 4장과 6~12장에서는 컴파일러를 각 부분별로 다룹니다. 마지막으로 13장에서는 어휘 분석기 생성기인 렉스(플렉스)와 구문 분석기 생성기인 야크(바이슨)의 실제 사용법을 설명했습니다.

② 30년 이상 컴파일러를 강의해온 저자의 경험과 지식을 바탕으로 쉽게 설명합니다.
컴파일러의 구조나 동작에 대해 설명하기란 매우 어렵습니다. 저자 또한 30년 가까이 컴파일러를 강
의해왔지만, 어떻게 설명해야 컴파일러를 조금이라도 쉽게 이해시킬 수 있을지 고심하며 이 책을 집
필했습니다. 이 책을 통해 30년 이상 컴파일러를 강의해온 저자의 경험과 지식을 경험할 수 있을 것입니다.

③ 기본 원리뿐만 아니라 실무에서 유용한 컴파일러 후단부 기술(실행 시간 환경과 최적화)도 다룹니다.
-. 코드 최적화(10장)
-. 병렬성과 지역성을 위한 최적화(11장)
-. 목적 코드 생성(12장)
-. 플렉스와 바이슨의 설치와 실제 사용법 설명(13장)

도서의 특징

세상에는 두 종류의 프로그래머가 있다.
컴파일러를 아는 프로그래머와
컴파일러를 모르는 프로그래머!


컴파일러 이론은 방대하고 난이도가 높아 많은 학생들이 포기하기 쉬운 주제이다.
하지만 내공 있는 프로그래머가 되려면 반드시 컴파일러의 구조와 동작을 이해해야 한다.
30년에 걸쳐 컴파일러를 강의한 저자의 경험과 노하우를 바탕으로 최대한 쉽게 설명하였으므로 수준 높은 프로그래머를 꿈꾸는 많은 독자들에게 꼭 필요한 컴파일러 기본서로 자리매김할 수 있을 것이다.

목차

Chapter 01 컴파일러의 개요 * 015
01 컴파일러의 필요성 * 017
02 프로그래밍 언어 * 020
1 수치 계산용 언어 * 020
2 사무 처리용 언어 * 021
3 인공지능 언어 * 021
4 시스템 프로그래밍 언어 * 022
5 기타 언어 * 022
6 프로그래밍 언어의 기본 개념 * 024
03 번역기의 종류 * 030

Chapter 02 간단한 컴파일러의 구조 * 039
01 컴파일러의 논리적 구조 * 041
1 개요 * 041
2 논리적 구조 * 043
02 컴파일러의 물리적 구조 * 061

Chapter 03 형식 언어와 유한 오토마타 * 067
01 형식 언어 * 069
02 형식 문법 * 074
03 문법 표기법 * 086
1 정규 표현 * 086
2 문법 도표 * 089
3 BNF 표기법 * 091
4 EBNF 표기법 * 092
04 유한 오토마타 * 094
1 유한 오토마타 * 095
2 NFA에서 DFA로의 변환 * 108
3 DFA의 상태수 최소화 * 118
4 정규 문법, 정규 표현, 유한 오토마타의 동치 관계 * 122

Chapter 04 어휘 분석 * 133
01 어휘 분석의 개요 * 135
02 토큰의 인식 * 138
1 식별자의 인식 * 138
2 예약어의 인식 * 139
3 정수의 인식 * 139
4 실수 상수의 인식 * 139
5 주석 처리 * 140
03 어휘 분석기의 설계 및 구현 * 142

Chapter 05 문맥자유 문법과 푸시다운 오토마타 * 153
01 문맥자유 문법 * 155
02 파스 트리 * 156
03 모호한 문법 * 164
04 문법 변환 * 171
1 불필요한 생성 규칙의 제거 * 171
2 ε-생성 규칙의 제거 * 176
3 단일 생성 규칙의 제거 * 178
4 좌인수분해 * 181
5 좌재귀의 제거 * 182
05 푸시다운 오토마타 * 185

Chapter 06 구문 분석 * 193
01 구문 분석의 개요 * 195
02 하향식 구문 분석 * 197
1 FIRST와 FOLLOW * 199
2 재귀적 하강 구문 분석 * 209
3 예측 구문 분석 * 212
03 상향식 구문 분석 * 217
1 이동-감축 구문 분석 * 219
2 연산자 우선순위 구문 분석 * 222
3 LR 구문 분석 * 226
04 모호한 문법의 사용과 에러 처리 루틴 * 258

Chapter 07 의미 분석과 형 검사 * 273
01 의미 분석의 개요 * 275
02 기호표 * 277
03 속성 문법 * 282
04 형 검사 * 286
1 자료형의 종류 * 286
2 형 시스템 * 288
3 형 변환 * 288

Chapter 08 중간 언어와 중간 코드 생성 * 293
01 중간 언어 * 295
1 중간 언어의 개념 * 295
2 중간 언어의 종류 * 297
02 구문 지시적 번역 * 308
03 중간 코드 생성 * 312
1 논리식 * 312

2 치환문 * 318

Chapter 09 구조적 자료형과 실행 시간 환경 * 325
01 구조적 자료형 * 327
1 레코드 * 327
2 배열 * 329
02 메모리 구성 * 332
03 메모리 할당 전략 * 339
1 정적 메모리 할당 * 339
2 스택 메모리 할당 * 341
3 힙 메모리 할당 * 345
04 매개변수 전달 방법 * 347
1 값 호출 * 347
2 참조 호출 * 348
3 이름 호출 * 349
4 값-결과 호출 * 350

Chapter 10 코드 최적화 * 355
01 코드 최적화 * 357
02 기본 블록과 흐름 그래프 * 360
1 기본 블록 * 360
2 제어 흐름 그래프와 DAG * 363
3 흐름 분석 * 370
03 최적화 기법 * 372
1 핍홀 최적화 기법 * 372
2 지역 최적화 기법 * 375
3 루프 최적화 기법 * 378
4 전역 최적화 기법 * 382
5 기계 종속적 최적화 기법 * 384

Chapter 11 병렬성과 지역성을 위한 최적화 * 389
01 병렬 처리 * 391
1 병렬 처리 시스템 * 393
2 병렬 처리에 대한 여러 가지 개념 * 395
02 자료 종속과 자료 종속 분석 * 401
1 자료 종속 * 401
2 자료 종속 분석 * 405
03 루프 변환 * 410
1 루프 융합 * 410
2 루프 분리 * 412
3 루프 역순 * 414
4 루프 교환 * 415
5 루프 기울임 * 416
6 스트립 마이닝 * 418
7 루프 타일링 * 419

Chapter 12 목적 코드 생성 * 423
01 목적 코드 생성의 개념 * 425
02 트리-패턴 매칭 기법 * 428
03 목적 코드 생성 * 433
1 산술식에 대한 목적 코드 생성 * 433
2 논리식에 대한 목적 코드 생성 * 443
04 레지스터 할당과 배정 * 447
1 지역 레지스터 할당과 배정 * 448
2 전역 레지스터 할당과 배정 * 449
3 그래프 착색에 의한 레지스터 할당 * 450

Chapter 13 렉스와 야크 * 455
01 렉스와 야크 * 457
1 렉스 * 457
2 야크 * 458
02 렉스와 야크의 입력 파일 형식 * 459
1 렉스의 입력 파일 형식 * 459
2 야크의 입력 파일 형식 * 463
03 플렉스와 바이슨 설치 방법 * 466
04 플렉스 사용법 * 468
05 바이슨 사용법 * 47

저자소개

저자 박두순은 1985년부터 순천향대학교 컴퓨터 소프트웨어공학과 교수로 재직 중이며 공과대학 학장을 역임했다. 고려대학교에서 프로그래밍 언어 설계 및 병렬 컴파일러 개발 분야의 박사 학위를 취득하고, 미국 일리노이대학교 어배너 - 섐페인의 슈퍼컴퓨터센터와 콜로라도대학교 덴버 캠퍼스의 컴퓨터학과에서 객원교수를 지냈다. 현재 한국정보처리학회 회장, 순천향대학교 중앙도서관장, 순천향대학교 웰니스코칭서비스연구센터장, 한국정보기술학술단체 총연합회 부회장 등으로 국내외 컴퓨터 분야의 발전에 노력하고 있다.

관심 연구 분야는 병렬 컴파일러, 병렬 처리, 데이터 마이닝, 웰니스 컴퓨팅이고, 주요 공서로 『빅데이터 컴퓨팅 기술』(한빛아카데미, 2014), 『컴파일러 구성』(한국방송통신대학교, 2011), 『이산수학 이해』(정익사, 2010) 등이 있다. C 프로그래밍, 이산수학, 프로그래밍 언어론, 형식 언어와 오토마타, 컴파일러 등을 강의하고 있다.

도서소개

『컴파일러의 이해』는 컴파일러 학습 관련 지식을 부분적으로 간단히 소개하여 쉽게 배울 수 있다. 총 13장으로 구성되어 있으며, 1~2장에서는 컴파일러의 개요를 훑고, 3장과 5장에서는 어휘 분석기와 구문 분석기를 설명하기 위해 형식 언어와 오토마타의 이론을, 4장과 6~12장에서는 컴파일러를 각 부분별로 다룬다. 마지막으로 13장에서는 어휘 분석기 생성기인 렉스(플렉스)와 구문 분석기 생성기인 야크(바이슨)의 실제 사용법을 설명했다.

상세이미지

컴파일러의 이해(내공 있는 프로그래머로 길러주는)(IT CooKBook 198) 도서 상세이미지

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.