
구매문의 및 도서상담은 031-944-3966(매장)으로 문의해주세요.
매장전집은 전화 혹은 매장방문만 구입 가능합니다.
지은이 : 유종원
코딩 교육 열풍이다. 대부분의 학원과 기관이 단기간, 결과물, 취업을 목표로 한다. 짧은 시간 내에 유행하는 프로그래밍 언어와 최신 프레임워크의 사용법을 배우고 결과물을 만들어 취업하는 것을 목표로 한다. 이래서는 수료를 목표로 버티는 것도 고난이겠지만, 취업한 후에도 같은 고난이 반복된다. 그저 고통만이 반복되는 것은 코딩이 아니다. 코딩은 목표를 이루기 위해 끊임없이 문제와 해결 방안을 찾아 시도해보는 퍼즐과 같다. 그 과정은 기대와 설렘, 실망과 좌절의 반복이겠지만, 그 끝에는 모든 것을 상쇄하고도 남는 커다란 성취감과 보람이 찾아온다. 코딩을 하기 위해 필요한 것은 프로그래밍 언어의 해박한 문법 지식도, 최신 프레임워크의 사용법도 아니다. 가장 기본이 되는 것은 생각하는 능력과 생각을 코드로 표현하는 능력이다.『컴파일러 만들기』를 주제로 하는 이 책의 내용은 코딩의 기본을 다지기 위한 마지막 단계다. 생각을 코드로 표현할 수 있는 능력을 갖췄다면, 코드가 무엇인지 그리고 어떻게 동작하는지를 알아야 할 단계다. 꼭 컴파일러를 만들어봐야만 알 수 있는 것은 아니겠지만, 이것보다 확실한 방법이 또 어디 있겠는가. 돌아가지 말고, 컴파일러를 만들어본 적이 없다면 반드시 경험해보기 바란다. 컴파일러까지 만들어봤다면 앞으로 무엇을 하든 순조롭게 나아갈 수 있는 탄탄한 기본기를 갖춘 셈이다. 자부심을 가져도 좋다.이 책을 시작으로 코딩을 제대로 익힐 수 있는 강의 제작이나 서적 집필을 계획하고 있다. 코딩을 하는 모든 사람이 코딩의 본질을 파악하고 즐겁게 코딩을 했으면 하는 바람이다.
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 마치며
도서 DB 제공 - 알라딘 인터넷서점 (www.aladin.co.kr)