用LEX构造数控编译器词法分析程序的研究

用LEX构造数控编译器词法分析程序的研究

ID:36518104

大小:213.19 KB

页数:4页

时间:2019-05-11

用LEX构造数控编译器词法分析程序的研究_第1页
用LEX构造数控编译器词法分析程序的研究_第2页
用LEX构造数控编译器词法分析程序的研究_第3页
用LEX构造数控编译器词法分析程序的研究_第4页
资源描述:

《用LEX构造数控编译器词法分析程序的研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、数控技术研究机电工程技术!""#年第$%卷第!期用&’(构造数控编译器词法分析程序的研究陈辉,郭艳玲(东北林业大学机电工程学院,黑龙江哈尔滨)%""*")摘要:词法分析程序是数控程序编译器中不可缺少的部分,目前一般采用高级语言直接开发。本文介绍一种新的方法,它利用词法分析程序的自动构造工具&’((+,-./0+010+23,4)构造数控程序编译器的词法分析程序。作为一种专用的编译工具,&’(的源程序简单,编译后生成的词法分析程序效率高。在数控编译器的开发中,使用&’(简化了编程序过程,是一种高效的程序设计方法。关键词:数控程序;编译器;词法分析;&’(中图分类号:56$)*文献标识码

2、:7文章编号:)""898*8!:!""#;"!9""!<9"$)引言译为一个BC7(非确定的有限自动机)进而转换为相应的数控系统包括数控硬件系统和软件系统。数控系统的DC7(确定的有限自动机),这个DC7正是识别该正规式正常运行除了要有稳定的硬件设备外,软件的稳定和高效所表示语句的识别器。&’(就是基于这种方法来构造词法也是不可缺少的。目前广泛应用高级语言如=、=>>、分析程序的工具。?7@A=等开发数控软件系统,降低了数控软件的开发难!&’(介绍度,缩短了开发周期。数控软件系统中程序编译器是每个&’(是一个数控系统都必需具有的功能。目前开发程序编译器的方法词法分析程序的主要有两种

3、:一种是直接用高级语言开发,另一种是用词自动产生系统。法分析程序的自动构造工具&’(生成词法分析程序。本文&’(的源程序是介绍如何用&’(构造词法分析程序。用一种面向问题程序编译器是由词法分析、语法分析、目标代码生成的语言写成的。和出错处理等几部分组成。词法分析是编译的第一个阶这个语言的核心段,它的主要任务是从左至右逐个字符地对源程序进行扫是正规表达式,描,产生一个个单词序列,用以语法分析。通常将词法分用它描述输入串析程序设计成一个子程序,每当语法分析程序需要一个单的词法结构。词时,则调用该子程序。&’(并不是一个图)数控编译程序的结构图图)为数控编译程序的结构图。其编译采用一趟扫描

4、完整的语言,它方式,它是以语法分析程序为核心,词法分析程序和代码只是某种高级语生成程序都作为一个独立的过程,当语法分析需要读单词言(称为&’(的宿主语言)的扩充。所以当识别出一个词时就调用词法分析程序。词法分析程序每调用一次,便从时,用户需要用宿主语言描述要完成的动作。&’(自动地数控程序文件中读入一些字符,直到识别出一个单词,并把表示输入串词法结构的正规式及相应的动作转换成一个返回给语法分析。词法也是语法的一部分,将词法分析作宿主语言的程序员,即词法分析程序,它有一个固定的名为一个独立的阶段可以使整个编译程序的结构更简洁、清字22+,-,它是一个=语言的程序[$]。晰和条理化。&’

5、(源程序的格式:多数程序设计语言的单词的语法都能用正规文法来描E辅助定义部分F述。正规文法可以转换成对应的正规式,把一个正规式编GG收稿日期:!""%—"8—"%!<机电工程技术!""#年第$%卷第!期数控技术研究&识别规则部分’它们单词自身的值是数值型的。上面的数控程序段经过词((法分析后输出的单词符号和它们的表示如下[!]:&用户子程序部分’程序段序号;"!"(;,‘"!"’)其中用花括号括起来的各部分都不是必须有的。识别准备功能指令=""(=,‘""’)规则部分是)*+源程序的核心。它是一张表,左边一列是坐标地址+!$H#(+,!$H#)正规式,右边一列是相应的动作。下面是一条

6、典型的识别坐标地址BG!#(B,G!#)规则:主轴转速?#$"(?,#$"),-./0/121,-.3(“345-67/89416:;<”);刀具功能

7、式即正规式。得到的数控程序是由字母&;,=,>,个词法分析器的工程T8U/V/1,它为我们提供了一个基本的?,<,@,+,A,+,B,:,C,D,E⋯⋯’和数字构成)*+程序框架。包括一个T8U/V/1HU文件,它由两个部分组的。它的单词形式为字母F数字。根据数控程序的单词规成:则写出它的正规表达式。有了正规式,我们还要写出输入!辅助定义部分,我们需要在这部分定义一些符号和串与正规式匹配后相应的动作,其中包括一些错误处理和变量。W:=:<表示"XY之间的任

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。