一种参数可扩展程序组织单元的执行方法、装置和设备与流程

文档序号:29692105发布日期:2022-04-16 12:03阅读:126来源:国知局
一种参数可扩展程序组织单元的执行方法、装置和设备与流程

1.本发明实施例涉及编译器技术领域,尤其涉及一种参数可扩展单元的执行方法、装置和设备。


背景技术:

2.iec61131-3是第一个为工业自动化控制系统的软件设计提供标准化编程语言的国际标准,并定义了五种编程语言。程序组织单元(programming organisation unit,pou)是标准中定义的五种语言的通用模型,是程序、功能和功能快的统称,用户使用五种语言的任一种进行编程的行为,都是针对pou来进行和展开的。
3.但是目前pou中的功能或功能块通常是无法进行参数扩展的,国内市场中的可编程逻辑控制器(programmable logic controller,plc)还没有支持参数可扩展的功能或功能块的plc编程软件,这样会显著增加用户编程的复杂度并降低编译器执行效率。


技术实现要素:

4.本发明实例提供了一种参数可扩展程序组织单元的执行方法、装置和设备,以实现程序组织单元的可扩展特性,降低编程复杂度以及提高编译效率。
5.第一方面,本发明实施例提供了一种参数可扩展程序组织单元的执行方法,包括:
6.对参数可扩展程序组织单元进行编译声明获取第一目标文件,其中,第一目标文件中包含可扩展程序组织单元的形参;
7.对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件,其中,第二目标文件中包含与形参所匹配的实参;
8.将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
9.第二方面,本发明实施例提供了一种参数可扩展程序组织单元的执行装置,包括:
10.第一目标文件获取模块,用于对参数可扩展程序组织单元进行编译声明获取第一目标文件,其中,第一目标文件中包含可扩展程序组织单元的形参;
11.第二目标文件获取模块,用于对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件,其中,第二目标文件中包含与形参所匹配的实参;
12.执行文件获取模块,用于将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
13.第三方面,本发明实施例提供了一种电子设备,电子设备包括:
14.一个或多个处理器;
15.存储装置,用于存储一个或多个程序,
16.当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上所述的方法。
17.第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上所述的方法。
18.本发明实施例的技术方案,通过预先对参数可扩展程序组织单元进行编译声明,并在执行编译语言时通过调用参数可扩展程序组织单元,以使得编译器实现程序组织单元的可扩展特性,从而降低编程复杂度并提高编译效率。
附图说明
19.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
20.图1a是本发明实施例一提供的参数可扩展程序组织单元的执行方法流程图;
21.图1b是本发明实施例一提供的参数可扩展程序组织单元的应用示例图;
22.图2是本发明实施例二提供的参数可扩展程序组织单元的执行方法流程图;
23.图3是本发明实施例三提供的参数可扩展程序组织单元的执行装置的结构示意图;
24.图4是本发明实施例四提供的一种电子设备的结构示意图。
具体实施方式
25.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
26.在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、软件实现、硬件实现等等。
27.实施例一
28.图1a是本发明实施例提供的参数可扩展程序组织单元的执行方法流程图,本实施例可适用于编译器基于iec61131-3编程语言实现程序组织单元的可扩展特性的情况,该方法可以由本发明实施例中的参数可扩展承租组织单元的执行装置来执行,该装置可以采用软件和/或硬件的方式实现。如图1a所示,该方法具体包括如下操作:
29.步骤s101,对参数可扩展程序组织单元进行编译声明获取第一目标文件。
30.其中,在第一目标文件中包含可扩展程序组织单元的形参,而程序组织单元可以包括功能或功能块,因此本实施方式中的参数可扩展程序组织单元具体可以包括:参数可扩展的功能或参数可扩展的功能块,例如,参数可扩展的功能可以包括:add-加法功能模块,mul-乘法功能模块,and-逻辑与功能模块,or-逻辑或功能模块,xor-逻辑异或功能模块,max-逻辑最大功能模块,min-逻辑最小功能模块。
31.具体的说,本实施方式中主要是编译器基于iec61131-3的编程语言进行编译,而
iec61131-3编程语言标准中有5种编程语言:顺序功能图(sequential function chart,sfc)、梯形图(ladder diagram,ld)、功能块图(function block diagram,fbd)、指令表(instruction list,il)和结构文本(structured text,st),本实施方式中并不对编译器编程语言的具体形式进行限定,只要是iec61131-3标准所定义的五种语言都是在本技术的保护范围内。
32.需要说明的是,本实施方式中在编译器在进行编译之前,会进行编译准备工作,包括对参数可扩展组织单元的结构体进行设计定义,在编译器的开头位置会预留一个四字节整数,用于作为上述所描述的有效可变参数个数的形参变量repcount,即针对fbd语言表示用户编译时实际连了几个可变的参数,针对st语言表示用户编译时实际使用了几个可变的参数,并且编译器将repcount作为普通成员变量。
33.例如,针对add-加法功能模块,不具有参数扩展功能的加法功能模块的结构体定义为:
34.而本实施方式中具有参数扩展功能的加法功能模块的结构体定义为:
[0035][0036][0037]
由上述编译语言可以看出,原有的不具有参数扩展功能的加法功能模块仅能实现两个变量参数的相加求和,而本实施方式中具有参数扩展功能的加法功能模块则可以实现多个变量参数的相加求和,只要变量参数的个数不超过所设置的最大阈值64就可以。当然,本实施方式中仅以加法功能模块的参数扩展功能的定义进行举例说明,对于其他功能模块
的参数扩展的定义方式与此大致相同,本实施方式中不再进行赘述说明。
[0038]
可选的,对参数可扩展程序组织单元进行编译声明获取第一目标文件,可以包括:通过编译器对当前编译语言进行语法检测获取到参数可扩展程序组织单元;确定参数可扩展组织单元中的形参部分和组织单元自身代码部分,其中,形参部分包括固定输入参数、可扩展输入参数和输出参数;根据形参部分和组织单元自身代码部分生成第一抽象语法树,并基于第一抽象语法树获取第一目标文件。
[0039]
其中,编译器在对当前编译语言进行语法检测时获取到参数可扩展程序组织单元,确定参数可扩展组织单元中的形参部分和组织单元自身代码部分。在确定参数可扩展组织单元中的形参部分时,具体是自动生成结构体中包含:有效可变参数个数的形参变量用_repcount表示,使能en、不使能en0,包含固定输入参数和可扩展输入参数的输入参数,以及输出参数,并且输入参数和输出参数都属于形参。然后根据形参部分和组织单元自身代码部分生成第一抽象语法树,在第一抽象语法树中包含当前编译语言的语法关系以及参数变量关系,并基于第一抽象语法树通过后端编译成机器可识别的第一目标文件,因此在第一目标文件中包含可扩展程序组织单元的形参。
[0040]
可选的,可扩展输入参数包括基础数据类型或类属数据类型。在准备工作中,针对类属数据类型,可由编译器开发人员或使用c语言的二次开发人员,例如使用libdeveloper+c语言的二次开发人员,用c语言实现类属数据对应地每一种数据类型,之后在后续编译过程中根据待执行编译语言上下文分辨具体类型进行调用。例如,针对具有参数扩展功能的加法功能模块编译器开发人员对add(any,any,

)实现时,其中,any表示类属数据类型的参数,通常需要事先使用c语言实现add_int64(int,int

),64表示可扩展参数数量最多支持64个,add_real64(real,real,

),add_udint64(udint,udint,

)等包含多种数据类型的add,待编译过程选择性调用。
[0041]
步骤s102,对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件。
[0042]
其中,第二目标文件中包含与形参所匹配的实参。
[0043]
可选的,对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件之前,还包括:获取程序组织单元描述文件,程序组织单元描述文件包括程序组织单元名称以及属性标识,属性标识包括可扩展或不可扩展。
[0044]
需要说明的是,本实施方式中在根据待执行编译语言获取第二目标文件之前,所进行的准备工作还包括:对所重新定义的参数可扩展程序组织单元进行记录保存,获取程序组织单元的描述文件,而在程序组织单元描述文件中包括程序组织单元名称以及属性标识,通过属性标识标记哪些组织单元是参数可扩展的,哪些是不可扩展的,并且描述文件的格式具体可以json格式,本实施方式中并不限定描述文件的具体格式类型。
[0045]
其中,属性标识为可扩展程序组织单元的来源场景包括三种,第一种场景:开发环境内嵌标准的可扩展程序组织单元;第二种场景:基于用户指令新建的可扩展程序组织单元;第三种场景:基于指定开发工具新建的可扩展程序组织单元。并且针对第一种场景和第三种场景,仅使用静态的描述文件记录是否可扩展属性即可,但对于第二种场景,还需要将可扩展属性记录到用户编程工程文件里,以对用户所新建的可扩展程序组织单元记录,以便于用户使用时查看。
[0046]
可选的,对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件,包括:对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,基于程序组织单元描述文件根据待执行编译语言获取第二文件。
[0047]
可选的,基于程序组织单元描述文件根据待执行编译语言获取第二文件,包括:对待执行编译语言进行语法解析或图形解析,获取程序组织单元的名称、所包含的实参以及待执行编译语言自身代码;根据程序组织单元的名称从程序组织单元描述文件中进行查询,获取查询结果;根据查询结果确定程序组织单元的属性标识为可扩展,并且实参的数目未超过预设阈值,则根据实参和待执行编译语言自身代码生成第二抽象语法树,并基于第二抽象语法树获取第二目标文件。
[0048]
具体的说,在确定待执行编译语言采用的是st语言时,会采用语法分析对待执行编译语言进行解析,在确定待执行编译语言采用的是fbd或ld语言时,会采用图形分析对待执行编译语言进行解析,并根据解析结果获取程序组织单元的名称、所包含的实参以及待执行编译语言自身代码,由于在编译准备工作过程中已经获取到程序组织单元的描述文件,并且在该文件中保存了每个程序组织单元的名称以及是否可扩展的属性标识,因此根据所获取的程序组织单元的名称从描述文件中进行查询,如果确定该程序组织单元的属性标识为可扩展,并且确定实参的个数未超过预设阈值,则根据所获取的实参和待执行编译语言自身代码生成第二抽象语法树,在第二抽象语法树中包含待执行编译语言的语法关系以及参数变量关系,并基于第二抽象语法树通过后端编译成机器可识别的第二目标文件,因此在第二目标文件中包含与形参所匹配的实参。
[0049]
需要说明的是,本实施方式中针对支持类属数据类型的参数可扩展程序组织单元,st编译器在对待执行编译语言进行解析时,还需要推断出类属数据实际对应的数据类型,根据所确定的数据类型调用准备工作过程中每一种数据类型所确定的具体实现方式。
[0050]
步骤s103,将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
[0051]
具体的说,本实施方式中在获取到第一目标文件和第二目标文件之后,可以根据第二目标文件的实参对第一目标文件的形参进行赋值以获取执行文件,并基于所获取的执行文件执行参数可扩展程序组织单元。
[0052]
例如,如图1b所示为参数可扩展程序组织单元的应用示例图,具体是以fbd语言的add功能为例进行说明,x参数为固定输入参数,in1至in10为可扩展输入参数,并且可扩展输入参数的位置必须在输入参数的列表最后,由示例图可以得知,由于针对一个参数可扩展的add所对应的输入至少为三个,因此通过一个功能就可以实现对十一个输入参数的相加,相对采用多个不具有参数可扩展的add相连以实现对十一个输入参数的顺序求和来说,能够显著降低编程复杂度以及提高编译效率。
[0053]
需要说明的是,本实施方式中对编译器所使用的编译软件的要求主要有:在调用参数可扩展程序组织单元时,针对fbd编程语言会自动隐藏repcount;在使用iec语言实现参数可扩展程序组织单元时,用户所编写的参数可扩展程序组织单元的源代码是可见的,即用户可以在iec语言参数可扩展程序组织单元的实现代码里使用repcount作为普通变量参与计算,从而获取实际传入的可扩展参数个数。
[0054]
本发明实施例的技术方案,通过预先对参数可扩展程序组织单元进行编译声明,并在执行编译语言时通过调用参数可扩展程序组织单元,以使得编译器实现程序组织单元的可扩展特性,从而降低编程复杂度并提高编译效率。
[0055]
实施例二
[0056]
图2是本发明实施例提供的参数可扩展程序组织单元的执行方法的流程图,本实施例以上述实施例为基础,在将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元之后还包括:对参数可扩展程序组织单元的执行结果进行检测。相应的,本实施例的方法具体包括如下操作:
[0057]
步骤s201,对参数可扩展程序组织单元进行编译声明获取第一目标文件。
[0058]
可选的,对参数可扩展程序组织单元进行编译声明获取第一目标文件,可以包括:通过编译器对当前编译语言进行语法检测获取到参数可扩展程序组织单元;确定参数可扩展组织单元中的形参部分和组织单元自身代码部分,其中,形参部分包括固定输入参数、可扩展输入参数和输出参数;根据形参部分和组织单元自身代码部分生成第一抽象语法树,并基于第一抽象语法树获取第一目标文件。
[0059]
步骤s202,对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件。
[0060]
可选的,对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件之前,还包括:获取程序组织单元描述文件,程序组织单元描述文件包括程序组织单元名称以及属性标识,属性标识包括可扩展或不可扩展。
[0061]
可选的,基于程序组织单元描述文件根据待执行编译语言获取第二文件,包括:对待执行编译语言进行语法解析或图形解析,获取程序组织单元的名称、所包含的实参以及待执行编译语言自身代码;根据程序组织单元的名称从程序组织单元描述文件中进行查询,获取查询结果;根据查询结果确定程序组织单元的属性标识为可扩展,并且实参的数目未超过预设阈值,则根据实参和待执行编译语言自身代码生成第二抽象语法树,并基于第二抽象语法树获取第二目标文件。
[0062]
步骤s203,将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
[0063]
步骤s204,对参数可扩展程序组织单元的执行结果进行检测。
[0064]
具体的说,本实施方式中在基于执行文件执行参数可扩展程序组织单元之后,检测执行结果中是否有出现报错的情况,或者检测参数可扩展程序组织单元的执行结果是否正确,如果出现报错或者执行结果明显错误的情况,则可能是可扩展程序组织单元自身内部结构设计出现问题,或者是运行环境配置出现问题,此时会进行报错提示,以便于运营开发人员及时进行检修处理。
[0065]
本发明实施例的技术方案,通过预先对参数可扩展程序组织单元进行编译声明,并在执行编译语言时通过调用参数可扩展程序组织单元,以使得编译器实现程序组织单元的可扩展特性,从而降低编程复杂度并提高编译效率。并且通过对参数可扩展程序组织单元的执行结果进行检测,并在执行结果错误的情况下进行报警提示,从而便于用户及时进行检修处理,从而进一步提高编译效率。
[0066]
实施例三
[0067]
图3是本发明实施例提供的参数可扩展程序组织单元的执行装置的结构示意图,该装置包括:第一目标文件获取模块310、第二目标文件获取模块320和执行文件获取模块330。
[0068]
第一目标文件获取模块310,用于对参数可扩展程序组织单元进行编译声明获取第一目标文件,其中,第一目标文件中包含可扩展程序组织单元的形参;
[0069]
第二目标文件获取模块320,用于对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件,其中,第二目标文件中包含与形参所匹配的实参;
[0070]
执行文件获取模块330,用于将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
[0071]
可选的,程序组织单元包括:功能或功能块。
[0072]
可选的,第一目标文件获取模块,具体用于通过编译器对当前编译语言进行语法检测获取到参数可扩展程序组织单元;
[0073]
确定参数可扩展组织单元中的形参部分和组织单元自身代码部分,其中,形参部分包括固定输入参数、可扩展输入参数和输出参数;
[0074]
根据形参部分和组织单元自身代码部分生成第一抽象语法树,并基于第一抽象语法树获取第一目标文件。
[0075]
可选的,装置还包括程序组织单元描述文件获取模块,用于获取程序组织单元描述文件,程序组织单元描述文件包括程序组织单元名称以及属性标识,属性标识包括可扩展或不可扩展;
[0076]
第二目标文件获取模块,具体用于对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,基于程序组织单元描述文件根据待执行编译语言获取第二文件。
[0077]
可选的,第二目标文件获取模块,用于对待执行编译语言进行语法解析或图形解析,获取程序组织单元的名称、所包含的实参以及待执行编译语言自身代码;
[0078]
根据程序组织单元的名称从程序组织单元描述文件中进行查询,获取查询结果;
[0079]
根据查询结果确定程序组织单元的属性标识为可扩展,并且实参的数目未超过预设阈值,则根据实参和待执行编译语言自身代码生成第二抽象语法树,并基于第二抽象语法树获取第二目标文件。
[0080]
可选的,执行文件获取模块,用于根据第二目标文件的实参对第一目标文件的形参进行赋值获取执行文件。
[0081]
可选的,可扩展输入参数包括基础数据类型或类属数据类型。
[0082]
上述装置可执行本发明任意实施例所提供的参数可扩展程序组织单元的执行方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的方法。
[0083]
实施例四
[0084]
图4是本发明实施例提供的一种电子设备的结构示意图。图4示出了适用于用来实现本发明实施方式的示例性电子设备412的框图。图4显示的电子设备412仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
[0085]
如图4所示,电子设备412以通用计算设备的形式出现。电子设备412的组件可以包
括但不限于:一个或者多个处理器416,存储器428,连接不同系统组件(包括存储器428和处理器416)的总线418。
[0086]
总线418表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
[0087]
电子设备412典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备412访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0088]
存储器428用于存储指令。存储器428可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)430和/或高速缓存存储器432。电子设备412可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统434可以用于读写不可移动的、非易失性磁介质(图4未显示,通常称为“硬盘驱动器”)。尽管图4中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线418相连。存储器428可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
[0089]
具有一组(至少一个)程序模块442的程序/实用工具440,可以存储在例如存储器428中,这样的程序模块442包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块442通常执行本发明所描述的实施例中的功能和/或方法。
[0090]
电子设备412也可以与一个或多个外部设备414(例如键盘、指向设备、显示器424等)通信,还可与一个或者多个使得用户能与该电子设备412交互的设备通信,和/或与使得该电子设备412能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口422进行。并且,电子设备412还可以通过网络适配器420与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器420通过总线418与电子设备412的其它模块通信。应当明白,尽管图4中未示出,可以结合电子设备412使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0091]
处理器416通过运行存储在存储器428中的指令,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的参数可扩展程序组织单元的执行方法,包括:对参数可扩展程序组织单元进行编译声明获取第一目标文件,其中,第一目标文件中包含可扩展程序组织单元的形参;对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件,其中,第二目标文件中包含与形参所匹配的实参;将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
[0092]
实施例五
[0093]
本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序
被处理器执行时实现如本技术所有发明实施例提供的参数可扩展程序组织单元的执行方法:
[0094]
对参数可扩展程序组织单元进行编译声明获取第一目标文件,其中,第一目标文件中包含可扩展程序组织单元的形参;对待执行编译语言进行解析确定需要调用参数可扩展程序组织单元时,根据待执行编译语言获取第二目标文件,其中,第二目标文件中包含与形参所匹配的实参;将第一目标文件和第二目标文件进行链接获取执行文件,并基于执行文件执行参数可扩展程序组织单元。
[0095]
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0096]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0097]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0098]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言诸如java、smalltalk、c++,还包括常规的过程式程序设计语言诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(lan)或广域网(wan)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0099]
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1