1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

컴파일러 만들기-컴퓨터 프로그램의 구조와 원리
저자 : 유종원 ㅣ 출판사 : 에이콘출판

2021.08.30 ㅣ 216p ㅣ ISBN-13 : 9791161755564

정가20,000
판매가19,000(5% 할인)
적립금 800원 (4%)
배송일정 04월 23일 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 컴퓨터언어 > 기타언어/언어일반/...
현대 소프트웨어는 하드웨어의 성능 발전에 힘입어 많은 부분에서 추성화된 덕택에 코딩에 입문하기도 쉬워졌고 원하는 프로그램을 만들기도 쉬워졌다. 하지만 컴퓨터를 더 잘 이해하고 싶고 프로그래밍을 더 잘 하고 싶은 사람들에게는 불투명한 벽이 생긴 셈이다. 이 책은 그 어떤 다른 도구나 라이브러리를 사용하지 않고 인터프리터, 컴파일러, 가상머신을 직접 구현해보며 추상화라는 벽 뒤에서 실제로 일어나고 있는 일들을 이해할 수 있도록 돕는다.
펼쳐보기

[목 차]

1장. 시작하며

1.1 프로그래밍 언어

1.2 컴파일러

1.3 예제 컴파일러

1.4 마치며



2장. 어휘 분석 29

2.1 어휘와 토큰

2.2 어휘 분석기

2.2.1 소스 코드 문자열

2.2.2 어휘의 시작 문자

2.2.3 숫자 리터럴의 시작 문자

2.2.4 문자열 리터럴의 시작 문자

2.2.5 식별자와 키워드의 시작 문자

2.2.6 연산자와 구분자의 시작 문자

2.2.7 숫자 리터럴 어휘

2.2.8 문자열 리터럴 어휘

2.2.9 식별자와 키워드 어휘

2.2.10 연산자와 구분자 어휘

2.3 마치며



3장. 구문 분석

3..1 구문 트리와 노드

3.2 문 분석기

3.2.1 선언 영역

3.2.2 함수의 정의

3.2.3 본문

3.2.4 변수의 선언

3.2.5 본문의 식

3.2.6 식

3.2.7 대입 연산자

3.2.8 논리 or 연산자

3.3 마치며



4장.. 인터프리터

4.1 구문 트리 순회

4.2 구문 트리 실행기

4.2.1 엔트리 포인트 함수 호출

4.2.2 함수

4.2.3 print문

4.2.4 데이터 타입

4.2.5 문자열 리터럴

4.2.6 산술 연산

4.2.7 논리 연산

4.2.8 변수의 선언과 참조

4.2.9 for문

4.2.10 if문

4.2.11 continue문

4.2.12 함수 호출

4.2.13 함수호출 인자

4..2.14 return문

4.2.15 내장 함수

4.2.16 배열 리터럴

4.2.17 원소값 참조

4.2.18 원소값 변경

4.3 마치며



5장. 코드 생성

5..1 명령어와 목적 코드

5.2 코드 생성기

5.2.1 엔트리 포인트 함수 호출

5.2.2 함수

5.2.3 print문

5.2.4 문자열 리터럴

5.2.5 산술 연산자

5.2.6 식의 결과값

5.2.7 논리 or 연산자

5.2.8 변수 선언

5.2.9 변수 참조

5.2.10 for문

5.2.11 if문

5.2.12 continue문

5.2.13 함수 호출

5.2.14 배열 리터럴

5.2..15 원소값 참조

5.2.16 원소값 수정

5.3 마치며



6장. 가상 머신

6.1 스택 프레임과 콜 스택

6.2 코드 실행기

6..2.1 실행과 종료

6.2.2 함수의 주소

6.2.3 함수 호출

6.2.4 메모리 할당

6.2.5 문자열 리터럴

6.2.6 콘솔 출력

6.2.7 return문

6.2.8 덧셈 연산

6.2.9 논리 or 연산

6.2.10 변수 참조

6.2.11 for문과 if문

6.2.12 내장 함수

6.2.13 배열 리터럴

6..2.14 원소값 참조

6.2.15 원소값 변경

6.2.16 가비지 컬렉터

6..3 마치며



7장. 부록: 어셈블리

7.1 레지스터 머신

7.1.1 식의 계산

7.1.2 흐름 제어

7.1.3 함수의 호출과 종료

7.1.4 함수 호출 인자

7.1.5 매개변수와 지역변수

7.2 마치며



펼쳐보기
◈ 이 책에서 다루는 내용 ◈

◆ 소스 코드 문자열 분석 방법
◆ 소스 코드의 구조 분석 방법
◆ 인터프리터 구현 방법
◆ 컴파일러 구현 방법
◆ 가상머신 구현 방법
◆ 가비지 컬렉터 구현 방법
◆ 어셈블리로 배우는 컴퓨터의 동작 방식


◈ 이 책의 대상 독자 ◈


◆ 컴퓨터를 더 잘 알고 싶고 프로그래밍을 더 잘하고 싶은 사람
◆ 인터프리터, 컴파일러, 가상머신을 만들어보고 싶은 사람
◆ 나만의 프로그래밍 언어를 만들어보고 싶은 사람


◈ 이 책의 구성 ◈


◆ 1장: 이 책을 학습하는 데 필요한 내용을 다룬다.
◆ 2장: 소스 코드의 문자열을 분석하는 방법을 다룬다.
◆ 3장: 소스 코드의 구조를 분석하는 방법을 다룬다.
◆ 4장: 소스 코드를 실행하는 인터프리터의 구현 방법을 다룬다.
◆ 5장: 목적 코드를 생성하는 방법을 다룬다.
◆ 6장: 목적 코드를 실행하는 가상 머신의 구현 방법을 다룬다. 또한 동적 메모리를 관리하기 위해 마크 앤 스윕이라는 가비지 컬렉터도 간단하게 구현해본다.
◆ 부록: 어셈블리를 통해 컴퓨터의 동작 방식을 알아본다. CPU의 레지스터와 메모리를 직접 조작해 계산해보고 함수도 호출해본다.
◆ 자료: 이 책은 온전히 동작하는 예제 코드를 제공한다. 2장부터 6장까지 각 장에서 다루는 어휘 분석기, 구문 분석기, 인터프리터, 코드 생성기, 가상 머신 프로젝트를 제공한다.


펼쳐보기
유종원

코딩 교육 열풍이다. 대부분의 학원과 기관이 단기간, 결과물, 취업을 목표로 한다. 짧은 시간 내에 유행하는 프로그래밍 언어와 최신 프레임워크의 사용법을 배우고 결과물을 만들어 취업하는 것을 목표로 한다. 이래서는 수료를 목표로 버티는 것도 고난이겠지만, 취업한 후에도 같은 고난이 반복된다. 그저 고통만이 반복되는 것은 코딩이 아니다. 코딩은 목표를 이루기 위해 끊임없이 문제와 해결 방안을 찾아 시도해보는 퍼즐과 같다. 그 과정은 기대와 설렘, 실망과 좌절의 반복이겠지만, 그 끝에는 모든 것을 상쇄하고도 남는 커다란 성취감과 보람이 찾아온다. 코딩을 하기 위해 필요한 것은 프로그래밍 언어의 해박한 문법 지식도, 최신 프레임워크의 사용법도 아니다. 가장 기본이 되는 것은 생각하는 능력과 이를 바탕으로 생각을 코드로 표현하는 능력이다.

컴파일러를 만드는 이 책은 코딩의 기본을 다지기 위한 마지막 단계다. 생각을 코드로 표현할 수 있는 능력을 갖췄다면, 코드가 무엇인지 그리고 어떻게 동작하는지를 알아야 할 단계다. 꼭 컴파일러를 만들어 봐야만 알 수 있는 것은 아니겠지만, 이것보다 확실한 방법이 또 어디 있겠는가. 돌아가지 말고 컴파일러를 만들어 본 적이 없다면 반드시 경험해 보기 바란다. 컴파일러까지 만들어 봤다면 앞으로 무엇을 하든 순조롭게 나아갈 수 있는 탄탄한 기본기를 갖춘 셈이다. 자부심을 가져도 좋다.

이 책을 시작으로 코딩을 제대로 익힐 수 있는 강의 제작이나 서적 집필을 계획하고 있다. 코딩을 하는 모든 사람이 코딩의 본질을 파악하고 즐겁게 코딩을 했으면 하는 바람이다.

펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기