서브메뉴
검색
컴파일러 구조와 원리
컴파일러 구조와 원리
Detailed Information
- Material Type
- 단행본
- ISBN
- 9788979147681
- UDC
- 681.3.01
- DDC
- 005.133 미194ㅋ-23
- Callnumber
- 005.133 미194ㅋ
- Author
- 아오키 미네로우 지음
- Title/Author
- 컴파일러 구조와 원리 / 아오키 미네로우 지음 ; 이영희 옮김
- Publish Info
- 서울 : 한빛미디어(주), 2010
- Material Info
- 616p. : 삽도 ; 24cm
- General Note
- 대한민국학술원 선정 "2011 우수학술도서"
- Formatted Contents Note
- 완전내용(1. 컴파일러를 만들어 보자)완전내용1.1 이 책의 개요부분내용32완전내용1.2 컴파일 과정부분내용39완전내용1.3 Cb 컴파일러로 컴파일하기부분내용44완전내용(2. Cb 과 cbc)완전내용2.1 Cb 언어의 개요부분내용48완전내용2.2 Cb 컴파일러 cbc의 구성부분내용52완전내용(1부 소스 코드 해석)완전내용(3. 구문 해석의 개요)완전내용3.1 구문 해석 방법부분내용6200완전내용3.2 파서 제너레이터부분내용6811완전내용3.3 JavaCC의 개요부분내용7122완전내용(4. 어휘 해석)33완전내용4.1 JavaCC에 의한 스캐너 작성부분내용8044완전내용4.2 구조가 없는 단어의 스캔부분내용8655완전내용4.3 토큰을 생성하지 않는 단어의 스캔부분내용9166완전내용4.4 구조를 포함한 단어의 스캔부분내용9477완전내용(5. JavaCC로 파서 작성하기)88완전내용5.1 EBNF로 문법 작성하기부분내용10299완전내용5.2 애매한 문법과 토큰 미리 보기부분내용10800완전내용(6. 구문 해석)11완전내용6.1 정의의 해석부분내용11822완전내용6.2 문장의 해석부분내용13133완전내용6.3 식의 해석부분내용13644완전내용6.4 항의 해석부분내용14255완전내용(2부 추상 구문 트리와 중간 표현)66완전내용(7. JavaCC의 Action과 추상 구문 트리)77완전내용7.1 JavaCC의 액션부분내용14888완전내용7.2 추상 구문 트리와 노드부분내용16199완전내용(8. 추상 구문 트리 작성)00완전내용8.1 식의 추상 구문 트리부분내용17211완전내용8.2 문장의 추상 구문트리부분내용18522완전내용8.3 선언의 추상 구문 트리부분내용19033완전내용8.4 cbc 파서의 실행부분내용19944완전내용(9. 의미 해석(1) 참조 해결)55완전내용9.1 의미 해석의 개요부분내용20466완전내용9.2 변수 참조의 해결부분내용21477완전내용9.3 타입 참조의 해결부분내용22688완전내용(10. 의미 해석(2) 정적 타입 체크)99완전내용10.1 타입 정의 체크부분내용23400완전내용10.2 식의 타당성 체크부분내용24011완전내용10.3 정적 타입 체크부분내용24722완전내용(11. 중간 표현의 변환)33완전내용11.1 cbc의 중간 표현부분내용25844완전내용11.2 IRGenerator 클래스의 개요부분내용26655완전내용11.3 제어 구조의 변환부분내용27066완전내용11.4 부작용이 없는 식의 변환부분내용27977완전내용11.5 좌변값의 변환부분내용28588완전내용11.6 부작용이 있는 식의 변환부분내용29399완전내용(3부 어셈블리 코드의 생성)00완전내용(12. x86 아키텍처의 개요)11완전내용12.1 컴퓨터 구조부분내용30622완전내용12.2 x86계 CPU의 역사부분내용31433완전내용12.3 IA-32의 개요부분내용31944완전내용12.4 데이터 표현과 배치부분내용32955완전내용(13. x86 어셈블러 프로그래밍)66완전내용13.1 GNU 어셈블러에 의한 프로그래밍부분내용33677완전내용13.2 GNU 어셈블러의 문법부분내용34088완전내용13.3 전송 명령부분내용34899완전내용13.4 산술 연산 명령부분내용35500완전내용13.5 비트 연산 명령부분내용36111완전내용13.6 연산의 제어부분내용36622완전내용(14. 함수 호출과 변수)33완전내용14.1 호출 규약부분내용37444완전내용14.2 Linux/x86에서의 함수 호출부분내용37655완전내용14.3 Linux/x86에서 함수 호출의 상세부분내용38366완전내용(15. 식과 문의 컴파일)77완전내용15.1 컴파일 결과 확인부분내용39088완전내용15.2 x86 어셈블리의 오브젝트 표현과 DSL부분내용39399완전내용15.3 cbc의 x86 어셈블리 DSL부분내용39700완전내용15.4 CodeGenerator 클래스의 개요부분내용40311완전내용15.5 단순한 식의 컴파일부분내용40822완전내용15.6 2항 연상의 컴파일부분내용41333완전내용15.7 변수 참조와 대입부분내용41744완전내용15.8 점프문의 컴파일부분내용42255완전내용(16. 스택 프레임 할당)66완전내용16.1 머신 스택의 실행부분내용42877완전내용16.2 인수와 로컬 변수의 메모리 참조 할당부분내용43288완전내용16.3 가상 스택으로 임시 변수 할당부분내용44099완전내용16.4 머신 스택 액세스의 오프셋 조정부분내용44600완전내용16.5 프롤로그, 에필로그의 생성부분내용45111완전내용16.6 alloca의 구축부분내용45422완전내용(17. 최적화 방법)33완전내용17.1 최적화의 의미부분내용46044완전내용17.2 최적화의 분류부분내용46455완전내용17.3 cbc에서의 최적화부분내용46766완전내용17.4 더욱 강력한 최적화부분내용46977완전내용(4부 링크와 로드)88완전내용(18. 오브젝트 파일의 생성)99완전내용18.1 ELF 파일의 구조부분내용47600완전내용18.2 ELF 파일에서의 글로벌 변수 표현부분내용48511완전내용18.3 글로벌 변수의 컴파일부분내용49322완전내용18.4 오브젝트 파일의 생성부분내용50333완전내용(19. 링크와 라이브러리)44완전내용19.1 링크의 개요부분내용50655완전내용19.2 링크부분내용51366완전내용19.3 다이내믹 링크와 스태틱 링크부분내용51777완전내용19.4 라이브러리의 작성부분내용52288완전내용(20. 프로그램의 로드)99완전내용20.1 ELF 세그먼트의 로드부분내용5280000완전내용20.2 다이내믹 링크의 과정부분내용5370101완전내용20.3 동적 로드부분내용5490202완전내용20.4 GNU Id에 의한 링크부분내용5520303완전내용(21. 위치 독립 코드의 생성)0404완전내용21.1 위치 독립 코드부분내용5580505완전내용21.2 글로벌 변수 참조의 구축부분내용5670606완전내용21.3 링커 호출의 구축부분내용5770707완전내용21.4 프로그램 해석부터 실행까지부분내용5810808완전내용(22. 이 책을 모두 읽고 나서)0909완전내용22.1 서적 소개부분내용5901010완전내용22.2 링크, 로드에 대해부분내용5931111완전내용22.3 다양한 언어 기능부분내용5941212완전내용(부록)1313완전내용A.1 참고 문헌부분내용6001414완전내용A.2 온라인 도큐먼트부분내용6041515완전내용A.3 소스 코드부분내용6051616
- Price Info
- -30,000
- Control Number
- gtec:33533
- 책소개
-
언어 처리 시스템의 동작원리를 해부하여 배우는 컴파일러!
실제적인 컴파일러 가이드 『컴파일러 구조와 원리』. 컴파일러를 실제로 구축하기 위한 과정을 설명한 책으로, 프로그램언어로 쓰인 소스 코드가 컴퓨터 안에서 어떻게 실행되는지 순차적으로 설명하고 있다. 컴파일러 프로그래밍 언어의 실행 환경 등 컴파일러를 중심적으로 다루고 있으며, 그 뿐만 아니라 어셈블러, 링커, 하드웨어, 실행 환경까지 모두 다루고 있다. 컴파일러나 인터프리터의 내부 구조가 어떻게 되는지 살펴보고, C언어 프로그램이 동작하는 구조에 대해 알려준다. 더불어 x86 CUP의 구조를 이해하며, Linux에서의 링크, 로드와 라이브러리에 대해 살펴본다.
MARC
008120822s2010 ulka 000 kor■020 ▼a9788979147681
■0801 ▼a681.3.01
■082 ▼a005.133▼b미194ㅋ▼223
■090 ▼a005.133▼b미194ㅋ
■1001 ▼a아오키 미네로우 지음
■24510▼a컴파일러 구조와 원리▼d아오키 미네로우 지음▼e이영희 옮김
■260 ▼a서울▼b한빛미디어(주)▼c2010
■300 ▼a616p.▼b삽도▼c24cm
■500 ▼a대한민국학술원 선정 "2011 우수학술도서"
■505 ▼a(1. 컴파일러를 만들어 보자)▼a1.1 이 책의 개요▼c32▼a1.2 컴파일 과정▼c39▼a1.3 Cb 컴파일러로 컴파일하기▼c44▼a(2. Cb 과 cbc)▼a2.1 Cb 언어의 개요▼c48▼a2.2 Cb 컴파일러 cbc의 구성▼c52▼a(1부 소스 코드 해석)▼a(3. 구문 해석의 개요)▼a3.1 구문 해석 방법▼c6200▼a3.2 파서 제너레이터▼c6811▼a3.3 JavaCC의 개요▼c7122▼a(4. 어휘 해석)33▼a4.1 JavaCC에 의한 스캐너 작성▼c8044▼a4.2 구조가 없는 단어의 스캔▼c8655▼a4.3 토큰을 생성하지 않는 단어의 스캔▼c9166▼a4.4 구조를 포함한 단어의 스캔▼c9477▼a(5. JavaCC로 파서 작성하기)88▼a5.1 EBNF로 문법 작성하기▼c10299▼a5.2 애매한 문법과 토큰 미리 보기▼c10800▼a(6. 구문 해석)11▼a6.1 정의의 해석▼c11822▼a6.2 문장의 해석▼c13133▼a6.3 식의 해석▼c13644▼a6.4 항의 해석▼c14255▼a(2부 추상 구문 트리와 중간 표현)66▼a(7. JavaCC의 Action과 추상 구문 트리)77▼a7.1 JavaCC의 액션▼c14888▼a7.2 추상 구문 트리와 노드▼c16199▼a(8. 추상 구문 트리 작성)00▼a8.1 식의 추상 구문 트리▼c17211▼a8.2 문장의 추상 구문트리▼c18522▼a8.3 선언의 추상 구문 트리▼c19033▼a8.4 cbc 파서의 실행▼c19944▼a(9. 의미 해석(1) 참조 해결)55▼a9.1 의미 해석의 개요▼c20466▼a9.2 변수 참조의 해결▼c21477▼a9.3 타입 참조의 해결▼c22688▼a(10. 의미 해석(2) 정적 타입 체크)99▼a10.1 타입 정의 체크▼c23400▼a10.2 식의 타당성 체크▼c24011▼a10.3 정적 타입 체크▼c24722▼a(11. 중간 표현의 변환)33▼a11.1 cbc의 중간 표현▼c25844▼a11.2 IRGenerator 클래스의 개요▼c26655▼a11.3 제어 구조의 변환▼c27066▼a11.4 부작용이 없는 식의 변환▼c27977▼a11.5 좌변값의 변환▼c28588▼a11.6 부작용이 있는 식의 변환▼c29399▼a(3부 어셈블리 코드의 생성)00▼a(12. x86 아키텍처의 개요)11▼a12.1 컴퓨터 구조▼c30622▼a12.2 x86계 CPU의 역사▼c31433▼a12.3 IA-32의 개요▼c31944▼a12.4 데이터 표현과 배치▼c32955▼a(13. x86 어셈블러 프로그래밍)66▼a13.1 GNU 어셈블러에 의한 프로그래밍▼c33677▼a13.2 GNU 어셈블러의 문법▼c34088▼a13.3 전송 명령▼c34899▼a13.4 산술 연산 명령▼c35500▼a13.5 비트 연산 명령▼c36111▼a13.6 연산의 제어▼c36622▼a(14. 함수 호출과 변수)33▼a14.1 호출 규약▼c37444▼a14.2 Linux/x86에서의 함수 호출▼c37655▼a14.3 Linux/x86에서 함수 호출의 상세▼c38366▼a(15. 식과 문의 컴파일)77▼a15.1 컴파일 결과 확인▼c39088▼a15.2 x86 어셈블리의 오브젝트 표현과 DSL▼c39399▼a15.3 cbc의 x86 어셈블리 DSL▼c39700▼a15.4 CodeGenerator 클래스의 개요▼c40311▼a15.5 단순한 식의 컴파일▼c40822▼a15.6 2항 연상의 컴파일▼c41333▼a15.7 변수 참조와 대입▼c41744▼a15.8 점프문의 컴파일▼c42255▼a(16. 스택 프레임 할당)66▼a16.1 머신 스택의 실행▼c42877▼a16.2 인수와 로컬 변수의 메모리 참조 할당▼c43288▼a16.3 가상 스택으로 임시 변수 할당▼c44099▼a16.4 머신 스택 액세스의 오프셋 조정▼c44600▼a16.5 프롤로그, 에필로그의 생성▼c45111▼a16.6 alloca의 구축▼c45422▼a(17. 최적화 방법)33▼a17.1 최적화의 의미▼c46044▼a17.2 최적화의 분류▼c46455▼a17.3 cbc에서의 최적화▼c46766▼a17.4 더욱 강력한 최적화▼c46977▼a(4부 링크와 로드)88▼a(18. 오브젝트 파일의 생성)99▼a18.1 ELF 파일의 구조▼c47600▼a18.2 ELF 파일에서의 글로벌 변수 표현▼c48511▼a18.3 글로벌 변수의 컴파일▼c49322▼a18.4 오브젝트 파일의 생성▼c50333▼a(19. 링크와 라이브러리)44▼a19.1 링크의 개요▼c50655▼a19.2 링크▼c51366▼a19.3 다이내믹 링크와 스태틱 링크▼c51777▼a19.4 라이브러리의 작성▼c52288▼a(20. 프로그램의 로드)99▼a20.1 ELF 세그먼트의 로드▼c5280000▼a20.2 다이내믹 링크의 과정▼c5370101▼a20.3 동적 로드▼c5490202▼a20.4 GNU Id에 의한 링크▼c5520303▼a(21. 위치 독립 코드의 생성)0404▼a21.1 위치 독립 코드▼c5580505▼a21.2 글로벌 변수 참조의 구축▼c5670606▼a21.3 링커 호출의 구축▼c5770707▼a21.4 프로그램 해석부터 실행까지▼c5810808▼a(22. 이 책을 모두 읽고 나서)0909▼a22.1 서적 소개▼c5901010▼a22.2 링크, 로드에 대해▼c5931111▼a22.3 다양한 언어 기능▼c5941212▼a(부록)1313▼aA.1 참고 문헌▼c6001414▼aA.2 온라인 도큐먼트▼c6041515▼aA.3 소스 코드▼c6051616
■9500 ▼c30,000
Preview
Export
ChatGPT Discussion
AI Recommended Related Books
Detail Info.
- Reservation
- Book Loan Request Service
- My Folder
도서위치
* 자료 이용 안내 *
'서고'에 소장중인 자료의 열람(또는 대출)을 희망할 경우, 종합자료실 데스크로 문의바랍니다.
'서고'에 소장중인 자료의 열람(또는 대출)을 희망할 경우, 종합자료실 데스크로 문의바랍니다.


