logo
分类于: 人工智能 职场办公

简介

lex与yacc

lex与yacc 7.8分

资源最后更新于 2020-08-21 15:10:02

作者:[美] John R.Levine

译者:杨作梅

出版社:机械工业出版社

出版日期:2003-01

ISBN:9787111107217

文件格式: pdf

标签: 编译原理 yacc lex 词法分析 计算机 语法分析 编程 Compiler

简介· · · · · ·

《lex与yacc》(第二版)是惟一一本专门介绍这两个重要的UNIX编程工具的书。这本新版本是完全的修订版,并以很多新的扩充示例代替了旧的示例。几个介绍性章节已经完全重写,还有一章专门介绍实现SQL语法,给出了有经验的程序员希望看到的各种细节。

本书对lex和yacc的重要主题提供了详尽的参考。对所有主要的lex和yacc的MS-DOS和UNIX版本,本书都进行了介绍,包括AT&T lex和yacc、Berkeley yacc、Berkeley/Gnu flex、Gnu bison、MKS lex和yacc、Abraxas PCYACC等等。

“太棒了!我已经读完《lex与yacc》的第二版……总而言之,这是一件伟大的作品 —— 这本书比第一版充实很多,详实而透彻。阅读的过程中,我经历了无数次的惊喜,心里总想‘可惜了,他们已经错过了也许是细微而精妙的...

想要: 点击会收藏到你的 我的收藏,可以在这里查看

已收: 表示已经收藏

Tips: 注册一个用户 可以通过用户中心得到电子书更新的通知哦

目录

前言
第一章 lex和yacc
最简单的lex程序
用lex识别单词
语法
运行lex和yacc
lex和手写的词法分析程序
练习
第二章 使用lex
正则表达式
单词计数程序
分析命令行
C源代码分析程序
小结
练习
第三章 使用yacc
语法
移进/归约分析
yacc语法分析程序
词法分析程序
算术表达式和歧义性
变量和有类型的标记
符号表
函数和保留字
用make构建语法分析程序
小结
练习
第四章 菜单生成语言
MGL的概述
开发MGL
构建MGL
屏幕处理
结束
MGL代码示例
练习
第五章 分析SQL
SQL的要点概述
语法检查程序
语法分析程序
嵌入式SQL
练习
第六章 lex规范参考
lex规范的结构
BEGIN
程序错误
字符变换
上下文相关
定义(替换)
ECHO
包含操作(文件的逻辑嵌套)
从字符串中输入
input()
内部表(%N声明)
lex库
行号和yylineno
文字块
一个程序中的多个词法分析程序
output()
lex 词法分析程序的可移植性
正则表达式语法
REJECT
从yylex()中返回值
起始状态
unput()
yyinput()、yyoutput()、yyunput()
yyleng
yyless()
yylex()
yymore()
yytext
yywrap()
第七章 yacc语法参考
yacc语法的结构
动作
歧义和冲突
yacc中的程序错误
结束标记
错误标记和错误恢复
%ident 声明
继承的属性($0)
词汇的反馈
文字块
文字标记
yacc语法分析程序的可移植性
优先级、结合性和操作符声明
递归规则
规则
特殊字符
开始声明
符号值
标记
%type声明
%union声明
变体和多重语法
y.output文件
yacc库
YYABORT
YYACCEPT
YYBACKUP
yyclearin
yydebug和YYDEBUG
yyerrok
YYERROR
yyerror()
yyparse()
YYRECOVERING()
第八章 yacc歧义和冲突
指针模型和冲突
冲突的普通示例
如何修复冲突
小结
练习
第九章 错误报告和恢复
错误报告
错误恢复
练习
附录一 AT&T lex
附录二 AT&T yacc
附录三 Berkeley yacc
附录四 GNU bison
附录五 flex
附录六 MKS lex和yacc
附录七 Abraxas lex和yacc
附录八 POSIX lex和yacc
附录九 MGL编译程序代码
附录十 SQL分析程序代码
参考文献
词汇表