打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DMIS5.0高级语言编程

1变量变量是计算机内存中的一个区域,用来储存信息(数据),使用变量的过程分3步:

1、生成一个变量,这个过程称为声明或定义:

2、存储数据到变量,这个过程称为赋值:

3、把变量应用到特定的程序中,这个过程称为调用:

1.1变量声明在使用变量存储数据前必须用'DECL,语句来定义,定义变量可以确定变量的三个属性:适用范围、变量类型、变量名。

变量定义语句的结构如下:

DECL/【范围】,变量类型,变量名称 注意:DMIS中的逗号一律用英文小写

1.1.1变量范围

指定哪些程序或模块可以访问变量,有三种:LOCAL,GLOBAL,COMMON;

1.1.2变量类型

变量类型用来确定变量存储数据的格式,不同的数据格式需要不同的内存空间。每种类型的存储空间上下限值取决于操作系统。

1.1.3变量名称

变量名称相当于给变量中的数据贴上一个可识别的门牌号。变量名称由1到16个字母、数字或下划线构成,首字母必须是英文字母。变量名称中不能包含DMIS保留字。

软件里,在需要定义的变量类型上鼠标右键,输入名称和数值后点击确认就会自学习生成变量定义语句。

1.2变量赋值

变量定义后就可以给它分配数据。DMIS语言中可用于赋值的命令包括:ASSIGN,VALUEPROMPT,READ.

注意:每执行一次赋值命令,变量中存储的原数据都会被覆盖掉。

1.2.1 ASSIGN命令说明

命令的格式如下:

Name=ASSIGN/expression

Name:已经定义的变量名称;

Expression:可以是变量、数字、字符、计算公式、逻辑表达式、函数

案例1:把一个变量里的数据拷贝到另一个变量里!

rNewDiam-ASSIGN/rOldDiam

案例2:把数字输入变量

rNumber=ASSIGN/3

案例3:把字符输入变量

rAlpha=ASSIGN/'ABcd' $$注意用单引号

如果字符串赋值要写到单引号里面

如果想转换变量类型需要调用一些特殊函数,可以在变量数值输入框里右键就会弹出各种函数

1.2.2 VALUE命令说明

Name=VALUE/label,expression

Name:已经定义的变量名称;

label:实际元素名称、公差

expression:关键字,如PTDATA,ACT、DEV,AMT等,控制输出项目

案例1:读取曲线测量点数到整数变量里

GCV1_PTDATA = VALUE/FA(GCV1),PTDATA

将实际曲线拖放到整数标签上自学习下自动生成value语句

案例2:读取公差的实际值、偏差值、超差值到变量里

TCLD2 ACT = VALUE/TA(TCLD2),ACT

TCLD2 DEV = VALUE/TA(TCLD2),DEV

TCLD2_AMT = VALUE/TA(TCLD2),AMT

将公差拖放到实数标签上

1.2.3 OBTAIN命令说明

Name= OBTAIN/label,ordinal

Name:已经定义的变量名称;

label:实际元素、公差的名称

ordinal:数字编号

用法与value相似

案例:将圆的x、Y.Z.D值输出到变量

CIR1 X= OBTAIN/F(CIR1),4

CIR1 Y= OBTAIN/F(CIR1),5

CIR1_2= OBTAIN/F(CIR1),6

CIR1_D = OBTAIN/F(CIR1),10

拖放实际圆到实数

各元素输出项目与编号对应关系

1.2.3 PROMPT命令说明

PROMPT赋值语句主要包括3种形式。

1,输入数据:

name = PROMPT/expression,lower,upper KNPTR1变量名称,必须是实数型或整数型;expression提示文本;lower下限、upper上限。

变量名称右键,输入各参数后点击确认后生成自学习语句

运行语句会弹出对话框,输入数值就会将数值赋给变量。

2.输入字符:

name = PROMPT/expression name

字符型变量;expression提示文本;

运行语句,在提示框内输入字符串,字符就被赋给了变量。

3.prompt复合语句

用一个语句实现多种变量类型同时输入。

程序编辑区右键点击其他功能,再点击Prompt提示,弹出一个复合语句编辑器,在prompt类型里选择要赋值的变量类型,再添加文本提示,然后点击绿色箭头添加到Prompt条目里,最后再点击DMIS,就会在DMIS编辑区生成自学习语句。

运行生成的程序产生的效果如下,这样点击按钮、激活选项、输入数据操作后都会将不同类型的数据赋给相应的变量。

也可以这样:

KNPTNI =PROMPT/TITLE,多行输入,TEXT,第一行:,EDIT,KNPTC1,TEXT,S第二行:'EDIT,KPTC2,TEXT,三行:,EDIT,KPTC3运行后的结果是这样

1.3数组的定义与赋值所谓数组,就是相同数据类型的元素按一定顺序排列的集合,就是把有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合。

数组分一维数组和二维数组,定义格式如下:

DECL/REAL,cData【10】

ss一维数组,可以储存10个数据

DECL/REAL,cData【10,10】

ss二维数组,可以储存10x10-100个数据数组变量的赋值操作与普通变量相同,只是在在变量名称后面添加 并设置数组编号即可。

如下:

Number【2】-ASSIGN/3 ss一维数组赋值

rNumber【1,2】-ASSIGN/3 ss 二维数组赋值

2宏和外部文件

宏是一组DMIS命令,能够完成特定任务,可以被程序反复使用。使用宏可以省去编写重复代码的麻烦。

宏的应用分两步:

1,定义宏语句,称之为'声明.

2,使用宏,称之为'调用。

外部文件不同于主程序,它可以是DMIS程序、DMIS宏,也可以是Windows程序或DME文件。

2.1宏声明

宏声明的结构如下:

M(Name)=MARCO/arguments

Statments

ENDMAC

Name:宏名称

Arguments:变量列表,宏将使用这些变量将数据导入宏。

Statements:DMIS语句组。

案例,输出两个数之和

2.2宏调用

调用宏要使用Call命令,格式如下:

CALL/M(Name),arguments

Name:宏名称。

Arguments:变量列表。

案例,调用上面求和的宏CALL/M(ADD),12,32 ss ADD已经声明的宏名称

或者使用变量调用宏DECL/REAL,ADD1,ADD2

ADD1=ASSIGN/12

ADD1=ASSIGN/32

CALL/M(ADD),ADD1,ADD2

2.3 RationalDMIS预定义宏

RationalDMIS变量数据区保存了一些定义好的的宏,方便用户调用。

其中:MINMAX的功能分别是求最大直径、最大弧度、最大×坐标误差、最大Y坐标误差、最大z坐标误差。

将多个元素拖放到宏标签上就可以调用宏并计算最终结果。

2.4外部文件调用

3 ASCII文件输入和输出

DMIS语句可以获取(读取)储存在ASCIl(text)文件里的数据。一旦数据被输入(读到)变量里,它就可以被程序所用。当把数据写到文本文件里时旧的数据或者被覆盖,或者把新的数据叠加到旧的数据后面。有专门的语句来读写这些具有固定格式的数据。

读写ASCIl文件的过程分4步

1,定义ASCII文件的位置和名称,称作设备定义。

2·建立与文件的连接并设置输入/输出属性,称作打开文件。

3,从文件读、写数据。

4·中断与文件的连接,称作关闭文件。

自学习方式生成设备定义语句

软件中在输出设置窗口,设备定义点击右键弹出设备定义窗口

在设备ID中输入设备名称,选择文件类型,点击打开文件按钮,弹出输出文件对话框,,输入文件名后选择保存类型,再点击保存,最后点击确认。在自学习模式下会生成设备定义语句。

同时在文件目录下生成一个设备标签

3.2建立ASCII文件连接

主要使用打开OPEN语句

OPEN/DID(label),format,mode,method Label:已定义的设备名

Format:读写文件数据格式

Mode:输入还是输出

Method:输出方式,覆盖还是累加

手写打开语句格式如下:

OPEN/DID(my file),DIRECT,INPUT

ss 直接读取文件数据

OPEN/DID(my_file),DIRECT,OUTPUT

sS 直接写数据到文件

软件自学习open语句格式如下:

OPEN/DID(clabel),FDATA,V(DEFAULTFORMAT),OUTPUT,OVERWR

ss 以覆盖方式将数据写入文件

OPEN/DID(clabel),FDATA,V(DEFAULTFORMAT),OUTPUT,APPEND

ss 以累加方式将数据写入文件

操作过程如下:

在上一步生成的设备标签上右键点击,再点击打开存储设备,设置设备参数后点击确认

设备标签显示打开,同时生成自学习程序。

3.3从ASCII文件读取数据

目前从ASCII文件读取数据的语句只能手动编辑,无法自学习生成,而且打开语句必须使用下面的形式:

OPEN/DID(my file),DIRECT,INPUT

读取数据命令格式如下:

READ/DID(label),variable

Label:设备名称

Variable:变量列表

案例1假设数据保存在txt文件里,格式如下,每一行有三列数据,共三行

4分支结构

一般来说程序是按行来运行的,第一行开始最后一行结束,而应用DMIS的一些高级语句就可以直接跳转到某一行,或跳过一些行;可以重复运行几行程序固定次数或可变次数;也可以清除报错,如误触发。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
全国计算机等级考试二级C考试大纲
全国计算机二级考试各科目大纲(2008年12月更新)
《高级语言程序设计》自考知识点总结
全国计算机二级考试大纲
【真相】江苏省计算机二级笔试机试只隔一天
Python从零单排!按照这进度!不出两月我就能拿到8K了!
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服