本书从软件工程角度出发,不仅介绍传统程序设计语言的编译技术,同时还参照国内外的一些专著和论文介绍了面向对象语言的编译技术,其内容包括语言基础知识、词法分析、语法分析、中间代码生成、运行时的存储空间组织、代码优化、目标代码生成等。作为原理性的教材,本书旨在介绍基本的理论和方法,内容的安排和取舍以软件工程专业学生的学习与认知过程为基础,与专业培养的实际需求相匹配,内容力求简明实用,概念清晰、图文并茂,各章节之间循序渐进,并在各章之后附有典型习题及详细解析,供读者学习时练习和参考。本书可作为高等院校计算机相关专业编译原理课程的教材,也可作为软件工程技术人员的参考书。