본문

서브메뉴

컴파일러 구조와 원리
컴파일러 구조와 원리 / 아오키 미네로우 지음 ; 이영희 옮김
컴파일러 구조와 원리

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


    New Books MORE
    Related books MORE
    Statistics for the past 3 years. Go to brief
    Recommend

    Detail Info.

    • Reservation
    • Book Loan Request Service
    • My Folder
    Material
    Reg No. Call No. Location Status Lend Info
    H097765 005.133 미194ㅋ 서고(데스크 문의) 대출가능 대출가능
    대출신청 My Folder

    * Reservations are available in the borrowing book. To make reservations, Please click the reservation button

    Books borrowed together with this book

    Related books

    Related Popular Books

    도서위치

    * 자료 이용 안내 *
    '서고'에 소장중인 자료의 열람(또는 대출)을 희망할 경우, 종합자료실 데스크로 문의바랍니다.