表格格式编程方法

文档序号:6610750阅读:231来源:国知局
专利名称:表格格式编程方法
技术领域
本发明涉及一种通过填写不同种类的表格来实现编程功能和便于控制 程序流的对计算设备进行编程的方法。本发明通常涉及一种编程工具,该编程工具被设计^^呈序员与计算机 之间的接口 。这种编程方法工具广泛使用表格^达程序员的逻辑思维过程并使编程过程更易于为他人所理解。因此,这些改进提高了编程效率, 减少了出现程序故障和结构4fi吴的机会。另外, 一个程序员学习这种编程 方法所需的培训成本是最低的。将来^f可程序员都能够很容易地读懂和维 护依据本发明而编写的程序。
背景技术
传统的编程语言定义一组编程指令和编程规则。诸如BASIC、 C和JAVA 之类的通用编程语言是按照从上到下逐行顺序列表的形式编写程序。在很 多应用程序中,需要编写几百页代码来描述要求的作业功能。要求一个程 序员从很长的程序列表中指出一个程序的逻辑^^呈是非常困难的。因此, 程序的长短为将来的维护工作带来了困难。除此以外,多页充满了代码行 序列的程序4W,被以前没有涉Ajt匕作业的其4^f呈序员所理解。虽然已经利 用了大量的压缩指令或编程符号,但以不同编程语言编写而成的程序的长 短仍超出了一个专业程序员能够容易理解的范围。在很多情况下, 一个程
序的原作者会发现经过了 一个较长的时期之后,他^M艮难理解他或她本人 所编写的程序。压缩指令集的要求与可读性是彼此矛盾的。因此非常需要 一种编程方法,该方法能够提供压缩的程序长度并易于被其他程序员及非 专业人员所理解。每次发明一种新的编程语言时,都定义编码符号和指令集来描述一个 程序功能。还定义规则来限制如何使用编程指令以便计算设备能够翻译和 #^亍利用该方法编写而成的程序。在很多情况下,为了确证所有这些指令 集并向程序员讲述编程规则,用以描述一种编程语言的指4^册超过了两 英寸厚。利用几个月来培训一个程序员学会所有的指令集并理解一种新编 程语言的所有编程规则是非同 一般的。通常是通过数年的编程经验而学到 更多的编程技巧。虽然很多编程语言允许一个程序按照该作业的结构要求来提旨f牛跳 转、调用功能或分支到程序的其它分段,但是一个专业的程序员在花费了大量时间阅读该程序之后仍4W,解释这些交互式分支4喿作在程序结构中的 逻辑錄。市场上提供了各种可用的编程语言,每种专用于一种特定应用或按照 特殊的编程环境而设计。许多其他的编程语言被设计成程序指定硬件配置 或系统。在很多情况下,不同的编程语言使用不同的符号或表达式来表示 一个描述相似功能的指令。 一个程序员在学习了多种分别具有不同格式和 指令表达式的编程语言之后,对于应当使用什么符号或表达式经常会感到 混淆不清。因此非常需要一种能够使程序员克服这些困难的新的编程方 法。由于大多数编程语言被设计成在其指定的应用环境中能够最佳地解释 编程功能,所以很多涉及多种功能状态的编程作业最好^f皮分解成多个模 块,每个模^MJ姿照其指定的环境以不同语言编写而成的。因此,非常需 要一种适用于管理以不同语言编写的程序段的集成的专用编程方法。随着 因特网的普及,非常需要一种通用的编程方法,该方法适用于协调不同格 式的编牙封莫块以形成一个组合程序,并适用于将程序下载到与主计算机距 离遥远的单个本地计算机上。对于这种类型的应用,程序必须是压缩的并 且能够根据不同本地计算机的种类进行自重构。专利号为US 5, 867, 818的美国专利最先引入了一种用以对一个具有多 个输入和输出端子的硬件控制器芯片进行编程的原始^^各才各式方法。本申 请指向在发明这种原始结构之后进行的进一步研究中所实现的各种改进。发明内容本发明面向学习 一个通用模块结构的方法以便利用表格格式编程的概 念知于一个计算设备进行编程。本发明的一个目的是创建用以指导计算设 备操作的编程方法的一个通用模块并组建该模块以使普通人员无须接受专 业培训即可使用该才狭。本发明的另一个目的是创建一个编程模块使得以 这种格式编写的任何程序易于被不具有编程语言方面的经验的其他人员所 理解或者可包含在已被编写的程序中。本发明的另一个目的是创建一个功 能通过编码过程而清楚地标识编程作业的结构的编禾封莫块,从而能够花费 最少的力量来维护该程序。其结果是,能够相当多地减少学习一种编程语 言的培训成本、编写程序的时间成本、调试程序的时间成本以及修改程序 的维护成本。通过一种用户友好的编程结构,希望在编程过程中出现较少 的编程4射吴,,人而减少调试所需的时间成本。本发明的另一个目的是创建一种结构编程格式,该格式能够清楚i4^ 达该作业的骨架结构并使该单个具有特定功能的程序才^:以选定的最适于该功能的任何语言编写。这种方法进一步提高了编程效率并减少了将来维 护工作的工作量。本发明的编程方法包括以程序数据填写两个以上表格的步骤。各种类 型的表才各4皮i殳计成用以执行不同的支持功能。 一个4i各,皮定义为一个数据 矩阵。 一个表才各可以是一维或多维的。通常用m行和n列表示一个表才M巨 阵,其中m和n是大于等于l的整数。可用一个标签、 一个表达式或一组 表达式絲示表格的每个元素。 在本发明的第一实施例中,编程方法引入了任务表的概念,任务表包 括一个用于控制多个任务的操作的数据表格。 一个程序中可f络在一个以 上的任务表并且每个表格由一种或多种任务状态构成。在编程过程中无论
何时指定一种任务状态,都可以定义所指定的任务的状况和/或操作。而且 任务优先权信息可包括在操作任务表或由该计算设备的另 一个单独表格以 便在以计算设备的共享资源运行多个任务的同时分配处理优先权。在本发明的M方面,形成一个表格来定义包括输入和/或输出信息在 内的一种或多种配置状态。当满足了一种配置状态的输入限定^f牛时,将 以另 一个被称为事件表或4^圣表的表格中所表示的一系列特定操作作为响 应。将至少一种配置状态指定为有效状态。用于微控制器的表格格式编程方法的最早^1^美国专利US 5, 867, 818中有所描述。本申请是面向多年 的研究对1^既念的各种改进以扩大该技术的月艮务范围。在本发明的另 一个实施例中,形成另 一个表格来定XI虫发一种限定符 配置状态所需的限定条件。在本发明中,首次引入了虚拟限定符的相克念。 一个虚拟限定符被定义为表示来自 一个物理硬件终端的任何限定条件。在 考虑到由一个软件指令所造成的结果或由整个软件程序造成的结果时,虚 拟限定符是非常重要的。虚拟限定符还涉及计算设备内部的硬件,如内部 寄存器的溢出。其可通过一个内部软件或硬件中断的结果, 一个标记的产 生、极性信号、表示存在来自另一个系统的数据或存在一个标记的信号而 被触发。虚拟限定符的另一个通用例子是一个鼠标驱动程序的输出,它可 以指示一个指针随鼠标的移动而移动的方向。在本发明的另 一个实施例中,形成一个表格来定义一个输出状态的输 出配置。该输出状态可以是一个将通过一个物理硬件终端而^d送的信号 或一种虚拟计算输出状态的配置。虚拟计算输出状态被定义成任何一种不 描述硬件终端的操作的输出状态。虚拟计算输出状态的一个例子^jt虫发一 个软件程序开始运行,或设置用于控制一个软件的特殊^f牛参数,或触发 软件以4喿作某些特定功能。当获得合格的触发时,4A^亍一个相应的操作。^4圣表或事件表颜于 将一个或多个相应净^ft进行分组的表格。 一个赠4圣可表示在接收到合^^ 件时所要执行的一个操作或一 系列操作。 一个路径可被另 一个路径初始 化。这个相应的操作或操作序列被称为一个路径方程(path equation)。 状态表与路径表的交互式组合与状态图所示的事件结构相似。除此以外,
表格格式编禾lii提供了 一种能够更好地反映出人类思维的程序表示方式, 从而使其对用户更为友好。为了更好i^4达程序流的描述内容,可根据程 序员的意愿为路径表中的每个路径分配一个有意义的标号。 一个有意义的 命名标号可被分配给一个配置状态或一个路径。所有这些标号将帮助程序 员或其他人员理解所编写的程序的操作和逻辑流程。这是本发明的一个重 要贡献,有助于解释编i衬呈序和减少将来的维护成本。所发明的编程方法中所包含的另 一个表糊夸一个输出状态下的输出条 件指向于一个特定的操作序列。可用另一个表格来表示这个序列以便简化 编程过程。本发明中所引入的另 一种类型的表4M吏程序员能够卩夸^^4备式编程语 言的表达式和/或语法变成所需的其它形式的表达式或符号。所包括的其它 表才各定义了 一组或多组程序库或外部程序以支持编程工作。在表格格式编程方法的支持之下,传统的编程过禾對皮大大改变。当开 始结构编程作业时,程序员用状态和游径勤于程序流的骨架结构进行交互 式的描述。程序员可自由地分配有意义的标号或名称以使表示每种配置状 态和路径。对每种状态配置和路径方程的有意义命名将有助于描述程序的 ;叙呈。当包括在一个^4圣中的一个操作难以用可得到的指令集表絲最好 用另一种语言的程序模块来描述该操作时,程序员自由地分配一个有意义的标号来表iiit个所需的操作。在编程过程的结尾,程序员应当为所分配 的每个未定义标号提供可"t^于的程序模块。以这种方式,通过交互式地组 织多组表格而形成了程序模块。 一个具有至少一个状态表和一个^各径表的 程序^J^被称为一个程序组。可向每个程序组分配另一个有意义的标号以便描述程序才m的功能。然后在需要跳转或功能调用时,这个标号可用于 另一个程序;j^^或程序组以指向ith^呈序组。为方侵爽见,将在程序开始时所执行的缺省的第一个程序组称为"main"程序组。在每个程序组中,应 当具有一个"start"路径,用作在初始^pf呈序或缺省启动程序时的启动路 径。为了改善编程效率,可用不同于主程序组中所用的表格格式编程方法 的语言来构成支持程序模块。在同一程序中可使用多种不同的语言。这就 非常希望按在表格格式编程方法中具有能够在不同语言的程序模块之间传 递参数和变量为特征设计。在一个最佳实施例中, 一个表格才各式程序被设 计成与不同编程语言的接口并被用作在以不同语言编写的程序才I^之间进 行通信的桥梁。可以说束^"格式编程语言大大改变了编写程序的概念和习 惯。在一种富有逻辑和较好结构的方式下编写一个程序。通过自由地分配 有意义的标号,程序《d呈被尽量平滑地组合而成以便描述该编程作业。然 后每个标号与一个用任何语言编写的外部程序模块相链接。有时,可排列成多级程序组或模块。由于每个表格格式程序组的程序长度通常非常短且 该程序具有合理的结构,从而能够容易地实现表格格式编程的上述优越 性。对于表格格式编程来说,自由分配或使标号与指令关键字等效对于支 持多语言编程平台是非常重要的。这是由于多种语言可对同一类型的应用程序使用不同的语法。标号的自由分配和等效特征佳JD户能够根据他/她的 意愿而统一标号和语法。表格格式编程的棒性使其成为一种用以增强另一种语言的编程结构的 极佳支持工具。例如, 一种高级语言的编译程序可被修改成包括仅足以提 供以该语言编写而成的一个程序的骨架结构的表格格式编程函数。由于表格格式编程方法是唯一和独立于其协同的第三种语言程序的, 所以通过只提供一个主要用于处理所有表才各格式编程任务的简单表格格式 协处理器就能够筒^^呈序管理作业。这种多处理器结构将减轻主处理器的 工作量并使其集中处理常规作业和提高尤其在多任务运行豕竟中的整体系 统性能。表#^格式协处理器可以是一个位于主处理器外部或与主处理器共 存于同一集成电路芯片上的处理器。当表4各才各式编程应用于孩谈理器或孩l 控制器时,经过编译或编码的表格格式程序变成了^f诸在诸如ROM、 EPROM 或闪速存储器之类的存储器中的用于孩狄理器或孩t控制器运行的数字数 据。然后一个由处理器和^f渚表格格式程序的编译形式的务賭器构成的印 制电路部件被用于制造可出售的商业成品。根据表格格式编程的结构组织,它特别适用于事件驱动的应用程序, 例如在windows环境下的编程,网站,交互式游戏或控制编程。用于事件 驱动编程中的表格格式的一个重要特征是用高^缩的格式来表示一个程 序。大多数用于小作业的表格格式程序的长度都少于一页。证明了表格格 式编程中的一页可表示八页汇编语言程序的实验性结论是根据可用指令集 的复杂性而作出的。与很多高级语言相比,还可在相当大的程度上节省代 码的长度。这种特性使其在用作通过一个有限带宽的通信信道进行通信的 媒体时是相当经济的;在例如与网络或因特网应用中的多个本地计算才咸 行通信的主系统之间。应当注意一个网络,通信连接或通信信道是指将两个计算设备连接在-"^的任何装置,包4舌串4亍端口、并行端口、 USB端口、 因特网、内联网、夕卜联网、LAN和4^f可使两个计算设备接口的通信装置。两 端的i殳备可通过有线、无线或混合连接模式进行连接。在因特网编程中, 在本地计算才;i^y亍一个下载程序之前,还需要一个估计用户计算机的系统 配置,然后调整程序设置的步骤。计算机中很多与人接口的设备配置,例 如监视器、图形卡、声音M设备、指针控制、游戏控制器控制等都属于 将被定义的配置设置。由于因特网通信线通常是一个系统的瓶颈,所以建 议在本地计算机上执行表格格式编程的编译作业,以便利用表格格式编程 的压缩代码的优点。图11是示出了一个本地计算才几801如何与一个远程计算机803相连接 的方框图。在很多应用中, 一个表格格式程序被^4者在本地计算机中。根 据请求,通过一个通信连接802将该程序下载到远程计算机中。该表格格 式程序可^^诸在远程计算机的^f诸装置804中或立刻由远程计算才;i^行编 译。编译文件是一个用以执行远程计算机的某些预定工作的可执行文件。这个可^^亍文件也可^^诸在远程计算机的^H诸装置804中。当一个编译器被设计成用于处理表格格式编程时,着重建议使用关键 字来识別每个表格以及相应程序组的状态和位置。以任务,程序组,限定 符,状态,^f圣和程序库为示例关键字用于识别所示实施例中的功負^4格。 应当注意表格格式编程方法的编译,翻译,解释或转换包括将表格格式程 序变换成其它程序格式,例如机器语言或任一种更高级语言的进程。该变 换进程可由用另 一种编程语言编写或被一个可寺丸行表^4各式程序支持的编 辨序储。任务表的概念有效地提高了在多任务运行环境下进行表格格式编程的 <更利性。本发明的特征如后面的权利要求所述。对计算设备的限制是指具 有计算能力的任何设备,包^i十算机、微控制器、樣狄理器、由微控制器 或微处理器构成的印制电路部件。除计算机以外,用以支才争本发明技术的 其它支持石更件包招^周^^更件、诸如电缆、通信口、网症各集线器之类的通信 连接以及特定的网络。表格格式程序可被显示在显示终端和印刷品上,并 可被编码为数字数据。表示该表格格式程序的编码数字数据被^f诸在诸如RAM、 R0M、磁盘驱动器和CD ROM之类的任何^f浙殳备中。实施例中所用的 技术术语、关4定字和标号只^i作为例子,它可具有^^种变形和〗奮改,并且 能够容易地预见到表格格式的重新排列可达到相同的效果,所有这些特征 都包含在后述的权利要求范围内。结合附图的详细说明更有利于本发明的 理解。为了充分利用本发明技术的有益之处,用户需要为计算机预处理操作 进行精心的准备。典型的计算机预处理操作包括分析程序作业说明,将方 案简化为表格格式的相关状态图。在提高程序结构清晰度的同时引A^格 才各式程序组需凌-用户在开始应用编程技术之前清楚地识别和定义方案的具 体功肖^莫块。由于表格格式编程方法的优点,另一个接口说明过程需要确 证表格格式程序组或模块的接口关系以便为一组程序员分配编程作业。在 网络通信或下载应用中,计算机预处理操作涉及通过一种通信连接或网络 向一个远程计算机发i^4格格式程序。通it4格格式编译器执行处理中的计算^^ft,该编译器将表格格式 程序翻译成本地计算机、目##控制器或远程计算机可执行的代码。后一 计算;W乘作通常是目标计算机或微控制器可执行的代码。这个可#1^于^/马 还可被计算才/LiU教控制器运行以便根据原始的编程说明来执行功能。编译 后的可^Vf刊V马通常^^诸在诸如R厕、R0M、任何可编程非易失'fi^j诸器之 类的##装置或任何其它商业可用的^f新殳备中。在《鼓控制器作为消费品 的情况下,用于^#编译后的可#^亍文件的##装置通常位于出售品中而 不是位于编译计算机中。在这种情况下,编译计算机只是作为一个开发系 统或远程计算设备的程序供应方。
令。 序。


图1示出了表格格式程序的一个实施例的结构。图2A是用于定义等效于用户定义表达式的表格格式表达式的表格。图2B示出了如何将一个名称分配给图2A所示的J^才各。图3是用于定义将被识别的字的不同打印格式的表格。图4是示出了一个任务表的不同任务状态的实施例。图5A是示出了 一个程序中的多个任务表的实施例。图5B是图5A的数字4b4示。图6A是示出了一个表格格式组的一个实施例的程序。 图6B是图6A的实施例的另一种开发形态。 图7是示出了所包括的文件列表的表格。 图8是图7所示的耒_格的另一种形态。图9示出了用于表格格式编程中的一些建议长度和描述性的指4^ 图10示出了现有技术中用于声音发生微控制器中的基本表格格式程图11是示出了一个本地计算才Aif过一种通信连4妇夸一个表格格式程 序下载到一个远程计算才几中的方框图。
具体实施方式
在下面整个详细描述中,所有附图中的相同附图标记表示相同的元素。首先参照图10中所示的由美国专利US 5, 867, 818公开的差4^表格格 式编程。该表格格式程序由用以对一个声音发生可编程控制器编程的两部 分构成 一个状态表和一个^4圣表。在状态表的第_=^亍中,定义了控制器 的相应输入触发引脚的顺序。状态0到状态4中的每一个定义了控制器的 一种可能触发状态。例如,R: Pathl元素指向于状态0的TG1,表示如果 检测到一个上升沿(用"R"表示),则扭軒命名Pathl的路径。在Pathl 中,有效状态改变到状态l,之后产生一个名为"Soundl"的声音。在发出
该声音之后,控制返回Pathl并开始另一个循环的声音发生序列,直到在 Statel状态中由TG1接收到一个下降沿触发(用F: Pathll表示)为止。 这个程序例示出了 TG1到TG4的"level hold"功能。即,当压下TGI到 TG4中的一个时,将产生一个声音。声音将是循环发生的,直到放开触发按 钮为止。下面参照图1,图1示出了一个改ii^的表格格式程序实施例中所选 定的一个表4各的结构。关键字101表示程序的开始。程序员在关键字下面 的位置上指定了程序名。关键字106表示一个列出了所包括的程序模块的 表格的开始部分。关键字107表示一个定义了该程序中所用常量的表格的 开始部分。关键字102对程序中所用的变量进行说明。关键字103是一个 列出了用户定义的等效命令和语法表达式的表才各。为了使程序关键字是可 区分的,程序员可利用关键字104在表格的开始部分定义关键字的打印格 式。上述所有特征是为表格格式程序做准备工作。任务表105提供了一种 或多种任务状态,用以定义哪个任务是有效的、暂4亭的或终止的。程序组 111由一个可选的P艮定表112,至少一个状态表113和一个^4圣表116组成。 实际的程序作业由状态表和路径表的内容交互构成。可附加输出状态表115 和输出方程表以便进一步定义程序的输出状态。最后,附加一个程序库表 121以便提供通用的命令串和子程序。应当注意上述所有表格无须按顺序排 列并且很多表格的建立只是为了提供可选的特征。另外, 一个程序可包含 多个相同类型的表格,如任务表和状态表的情况。可在关键字冒号之后随 意指定表格的名称以便更好地体现该程序的含义。表格格式编程中所用的 关键字可多于一个字并且可以用指令、具体的变量、常量和系统硬件来表 示。应当注意所提供的关键字只是举例说明,还可使用其它的关键字名称。 除此以外,对表格的范围进行合理的改进是可能的,应将其视为本申请的 保护范围之内。现在参照图2A,表格100代表图1中的表格103的具体例子。关键字 201 "定制表达式(Custom Expression),,表示这个功能表的开始部分,该表列出了等效于正M^格格式表达式的用户定U达式。例如,假设逻 辑AND功能的正少JL4格格式表达式是203所指的"AND"; —个习惯用C语 言编程的程序员可随意地用202所示的C语言指令集中的来代替表 格格式命令"AND"。定制表达式适用于语言或系统设置的任何字或符号, 例如指4^Hn符号和系统关键字。建议每次在定义一个^,换表达式时拔: f个注释204。这个功能的优点在于为程序员提供个人化的支持,以便总 可以使用惯用的符号或表达式。但是,当打印所编写的程序时,编译器或 编辑器最好以正规表达式打印出程序清单以便于其他人员阅读。对程序编 辑器亦是如此。只^A用户定义的表达式,将可以显示出正规的表达式。 还建议在预定的正Mi^用户定义的表达式之间提供一种转换功能,使用户 可以选4^是以正式的形式还是以定制的形式显示或打印程序。利用这种用 户定制表达式的特征,在保持程序员缩写的表达式或丰支短的符号来表 示指4^令和语法的同时,还可利用有意义的^达式名称使程序清单对 其他人员而言更具有可读性。利用/^口的查表方法,在表才各格式程序中建 立正式的语法组和相应的用户定义的等效语法和标号组。 一个典型的应用 实例如图9所示,图中列出了一些较长的描述性指令集。移位4辦符"BIT SHIFT LEFT"和"BIT SHIFT RIGHT"清楚:^y苗述了所要执行的操作。但是, 这些指令对于有经验的程序员来说太长和不受欢迎。程序员将"BIT SHIFT LEFT"指令等效于C语言中的简洁而描述性较差的"《"指令。长的指令 名使使程序易于理解^!于有经验的程序员来说A^u用的。"定制表达式" M保持长指令表达式的优点的同时有效地解决了这个问题。由于QWERT ^Jt上可用的符号是非常有限的,因J^人MJt上^W,发现 足够的有意义符号来组成一种新的象表^^各式编程方法那样与其它某些通 用记号和符号的传统用法不相矛盾的编程方法。通过^f吏用户能够4姿照自己 的意愿重构指令和符号,定制表达式表可作为一种解决此问题的方式。元素210示出了了如何将一个名称"MySign"分西* "客户表达式" 表。当为了使一个以上的用户操作或阅读程序而提供一组以上的"客户表 达式"表时,特别需要一个名称。例如,除了包括在程序中的表"MySign" 以夕卜,另一个名为"JohnsSign,,的定制表可浮W口到同一个程序中。如果John 想要阅读该程序,只需将"JohnsSign"表达式表设为缺省显示表,John将 可以以他所喜欢的格式来显示该程序。此表的新特性使每个用户都包括他 们自己的定制表达式设置,以便于按照他们喜欢的格式来转换或编辑程 序。尽管图2A所示的表格提供了一种重构关键字和表达式的方法,但需要 一种为一个小作业提供另一种语言的替换表达式或命令的简单方法。这是 可以通过在用该语言规定的表达式前指定一个表示该语言的符号来实现 的。图2B示出了如何用二进制数00001111屏蔽(mask)寄存器A的内容 以便于得到寄存器A最后四位的内容,然后进一步显示这个数字。表达式 216以元素"(C: &&)"耒表示指令是一个"C"语言指令。然后 利用一个预定义的"Display"命令来显示寄存器A的屏蔽值。可替换地, 利用一个微处理器的汇编语言中的"&"指令可得到执行同一功能的表达 式。标记"A:()"是一个表示括号中的操作是以汇编语言编写而成的表 达式。尽管这两种方法都很方便,但是仍没有图2A中所示的能够使一个全 程序的个人化表示式是被转换或个人化的定制表达式表功能强大。由于表才各4各式编程中涉及用户指定的大量的分立标号,并且这些标号*在程序中并与关键字和指4^^令相混合,因而对于一个阅读该程序的 用户来说,难以从其它关键字和指令命令中识别出这些标号。因此最好提 供用以识别这些标号的装置以便使该程序对用户更为友好。图3示出了一 个控制如何表现用户分配标号的程序表。 M素234提供了可选择的情况。 可用于选择的典型情况包括首字母、所有大写字母和所有小写字母。" 素239表示可选4奪的字母类型。典型的可选择类型包括黑体、斜体和下划 线。应当注意元素234和239都为包括黑白打印才脉内的各种显示设备提 供了卓越的识别功能。关键字231表示用于定义程序部分的识别类型的开 始部分。建议在关键字231后面设置一个由用户分配的名称以便表示下面 的设置最适用于某个特定的人员。在程序中可包括多个依据个人喜好而分 配的识别类型表,并且可为每个表分配一个用元素232表示的名称。选择 其中一个识别类型表可将打印格式设置成适用于正在阅读该程序的特定用 户。为了表示在多任务运行环境下具有较好结构的程序流,在图4所示的 实施例中引入了一个任务控制表(此后称为任务表)。元素261 ^J ]于识 别一个任务表的关键字。元素262是一个对任务表命名的标号。提供这个名称是为了在需要两个或多个任务表时与其它4壬务表相区别。元素263、 264 表示可在任务表的控制下运行的不同任务或程序。任务表的每一行表示一 个任务状态。在每种任务状态下,指定一种任务条件以表示每种任务的运 行^^牛。下面列出了用以描述一种任^件的表达式的几个例子Start:表示不ib亥任务或程序是正在运行、中止或已经结束,都从头 开始重新运fl"i亥程序;Continue:表示如果一个任务已经开始运行,则继续运行之;Pause:表示任务或程序被置于中止状态;Run:表示如果一个任务还没有开始运行,则开始运行之;如果一个任 务或程序正在运行,则继续运行之;如果一个任务被中止,则恢复该任务 的运行;X:表示结束该任务的运行。在行265,任务的名称为"Task Status 1",它指示"Main"程序开 始运行而程序2到n都处于结束状态。在任务状态268,指示所有的程序运 行。应当注意对每个任务M说,在任何时刻只有一个任务状态被指定为 有效。在具有有限资源的系统中,向正在运行的有效任务指定优先权是非 常重要的。任务状态273和274为任^门分配优先权。应当注意可以建立 一个独立的表格来描述分酉ti^任务的优先权。由于有效任务表和优先权任 务表中每一元素的开头元素是相同的,所以可以将两种类型的任务^l且合 成一个任务表,如图4所示。在这种情况下,就需要两种有效任务状态, 一种用于任务有效状态,而另一种用于任务优先权分配。图5A示出了一个介绍4壬务表概念下的实际应用例子。图5B是图5A 的标号表示。这个例子由三个任务^J且成。第一任务M为"I叩ut",如 元素301所示。它由三个分别名为"Keyboard" 、 "Mouse"和"Gam邻ort" 的程序组成。"Keyboard"是一个用于扫描4tt上的4鍵的程序。—"Mouse" 是一个对鼠标的移动进4ti奪码的程序,而"Gam邻ort,,则输入来自博弈端 口的触发信号。在名为"All"的任务状态305中,运行三个程序以使计算 设备对三个输入设备都有响应。在名为"Normal"的任务状态306中,则 只认可键盘和鼠标。不使用博弈端口是为了提高计算设备的服务效率。在处于游 財莫式时,名为"Game"的任务状态309变成唯一的有效程序或任 务。不使用Mit和鼠标是为了使计算设备将所有资源集中在游戏上。第二 任务表是一个名为"Por ts"用于控制计算i殳备的串行和并行端口的表格。 名为"Device"的第三任务表如元素341所示。它控制驱动器程序操作 "CDRom,, 342、 "HardDriveC" 343和软盘驱动器。当任务状态"ReadCD,, 345被激活时,CD Rom和Hard Drive C驱动器程序^皮激活而软盘驱动器程 序被终止。在需要石植驱动器^it运行的模式中,任务状态"HDFullSpeed" 346变M效任务状态而石tit驱动器变成唯一正在运行的设备。根据这个应 用实例,建议只对具有相似内容或相互关联的任务进行分组以形成一个共 用的任务表。应当注意在^^可时候,每个任务表中只有-HS壬务状态被指 定为有效。参照图6A,示出了表格格式程序的一个主程序组。该程序名为 "WebSale",提供了一个通过因特网提供的销售程序的骨架结构。这个例 子示出了在表格格式编程环境下进行多种语言编程的概念。为了便于描述 该实施例而在程序中插入了行号。应当注意状态和路径方程不必是按照顺 序排列的。现在参照第l行。关键字"Group"表示一个表格格式组或程序 模块的开始部分。该组的名称为"Main"。将Main作为一个关键字用以表 示这个组是在开始运fri玄程序时所要4^亍的第-^呈序组。笫2行以一个关 键字"qualifier"开始,它定义了在配置状态中所列出的限定符的限定条 件。在第3到6行,将术语"Icon"用作一个功能性命令,用于构造一个 图标并在单击该图标时触发该配置状态。在典型的表4各格式编程中,按顺序是数形成大量图标。在限定表中定义和命名每个图标。例如,当Icon(l) 指向于名称"Catalog"时,字"Catalog"被指定给第一图标并显示于其 上。实际上, 一旦将一个名称指定给一个图标,其编号就是不重要的,除 非在一个程序中提到了术语"icon (n)"并且"n"是一个计算结果。第7 行定义了一个名为"FirstPage"的输入状态配置表。在这个表中指定了五 种限^^寻,即"Catalog" 、 "Purchase" 、 "Service" 、 "Home"和"Quit,,。 每种限定符系指一个图标的触发,如第2行的限定表中所定义的。第一输
入限定符状态名为"Ready",如第8行所示。在这种状态下,当接^t^'j一 个^(^图标"Catalog"的限定触发时,扭^亍名为"P-catalog"的赠、径, 对其它限定符来说亦是如此。第9行示出了另一个名为"Holdl"的输入配 置状态。状态方程中的"x"表示相应的限定^f牛是无关条件,在该条件下 当出现P艮定触发时,该触发被阻线不需要响应。下面参照提供了另一个名为"Response"的配置表的图6A中的第11 行。这是一个具有五个元素的输出状态配置表。前四个元素具有一个关键 字"Group:",表示构成了一个程序组的程序。冒号后面是程序组的名称。 第一组名为"Info",用于提供产品信息。第二组"Order"是一个指导用 户通过诸如&己信用卡号、产品号、定单数量、总量、选择之类的购买过 程,对数据力。密并将定单发i^'j供应商进^i奪码的程序。第三组"Service" 提供了通用的交互式客户服务^f牛。第四组"Register"登ie4:户信息。 输出配置的最后一个元素是一个与计算i殳备的扬声器相连接的石更件端口 P3.1。当为这个端口分配一个^^马P+时, 一个正向脉沖串^C^鈔'J扬声器 并听到一个通知音。端口P3. l是一个石更件终端,因此将其分类为一个面向 硬件的输出。前四组都是面向软件的输出^f牛,因而被分类为虚拟计算输 出。^^可与一个硬件输出无关的输出^ff被定义为一个虚拟输出。虚拟计^!lr出的含义包括任何用以产生数据的与终端无关的操作,信号或信息的 显示或产生,初始^pf呈序,重起动程序,启动软件计时器,或计lt器或才喿作一个内部电路,如寄存器等。第12到17行是在状态表"Response"下 配置的输出状态。当一个"Run"命令出J脉一个输出配置状态中时,运行 相应的组程序。当接收到一个"Continue"指令时,继续运行正在运行的 程序或者如果该程序还没有开始运行或处于暂停状态,则该程序〗呆持空闲 状态。"x"标i^示不需要输出操作。利用这些描述,第12到17行的输 出状态的操作是一目了然的。应当注意在一个程序中可能存在一个以上的 输入或输出状态表。多个状态表简化了标格的结构并使编程作业更为容 易。但是,应当注意在任何时候,每种输入状态表中只有一种配置状态被 指定为有效。作为一种编程技巧,相互联系的输入限定符和输出条件可被 组合成一个状态表。还应当注意,如果需要,可将输入状态和输出状态组 合成一种混合状态。第18行启动操作"Path (s),,。当i^圣名被一种配置状态的4^f可限 定符元素所引用时,每个^4圣定义一个或多个要^fr的才辨。第19行是一 个名为"Start"的3I4圣,在^Vf亍Group时,该^4圣是一^^夹省^^始^4圣。 当首先起动该程序时,从所引用的所需操作中开始编程过程。开始操作"CheckSystem,,检查输入显示驱动器、物理端口之类的本地计算系统的配 置以得到运^^f呈序可用的扬声器和系统资源。要估计的本地计算设备可用 资源包^i十算机时间、寄存器个数、可用存储器的务賭量、务賭器配置、 所占用的计时器和计数器、可用的中断通道以及任何专用硬件电路配置。"CheckSystem"操作中应包括一个根据系统参数重构下载程序的过程。下 一个步骤是显示第一页。在程序中仅将此操作定义为"DisplayFirstPage"。然后产生一 "滴滴',声。"Hold2"表示所有的输 出配置置于保持状态,如"Response"状态表所示。"Ready"指^H台于输 入状态表"FirstPage"的"Ready"状态。在"Ready"状态中,无论何时 接jR^J图标"Catalog" 、 "Purchase"或"Service"的一个限定触发, 老財Wt^目应路径20到22中的一个。在上述每个路径中,显示指示该操作 的窗口并启动促销程序。"BuySolicit"是一个用于讳-求销售7>司产品的 交互式程序。在路径"P—purchase,,中,操作"Holdl"和"Hold3"限制 除图标"Home"和"Quit"之外的来自本地用户终端的可允许响应。"GreyButton"是一个用以改变图标颜色的净喿作,它不适用于例如由状态 命令"Holdl"所指定的图标"Catalog" 、 "Purchase"和"Service"。 当^Vf亍第23行的^f圣"Bye"时,结^^呈序"Terminate"和该程序。 一个 意味着"程序组结束"的关键字"E0G"位于程序组的结尾,用于通知编译 器该程序组到此结束。应当看到所讨论的编程方法根据组成状态和路径而交互式iW苗述了程 序操作。使用了由程序员分配的有意义的术语,如"Be印"、"CheckSystem" 和"Terminate"。这个过程就象编写一篇用以精确描述程序所需操作的论 文一才羊自然。在itk4i序的编译过程中,很多程序员分配的术语仍然是未标识的,例
如"CheckSystem" 、 "DisplayFirstPage"和"BuySolicit"。这些程序 员分配的标号都是计算设备不可执行的,除非它们与一个可执行程序链 接。图6B中所示的下一个步骤就是需要进一步定义未标识标号的描述。使 这些标号可#^于的典型方法是将它们与一个外部可扭^^呈序相链接或以一 个来自程序库的程序来定义该标号。这就非常需要编译器提供一种能够识 别所有程序员分配标号的功能。该标识最好在通过一个黑白打印机打印该 程序时是可识别的。典型的最佳识别方法包括改变字母字才各式和字型,如 黑体、斜体或下划线。然后分析每种未标识标号的要求并选4奪一种最适宜的编程语言来编写 一个程序以便提供所需的#^ 。可以用任何语言,甚至另一个表格格式程序来编写支持程序。这些支 持程序被"包括"在用于编译器的程序中以使所有程序集中在""^。图6B 的第18行表示"CheckSystem"最好是一个用Java语言编写的前缀为"EJ" 的程序,其中"E"表示它是一个被包括在内的外部程序。操作"DisplayFirstPage"最好用Visual Basic语言编写。在第19行中,操 作"BuySolicit", —个征求购买的窗口最好来自一个局部或总程序库。 第23行表示局部程序库的开始部分。第24行是一^N青心设计的路径方程, 它描述了征求客户的操作。这个操作包括4似于一个用"C"编写的外部程序"CheckRecord"和一个用Visual 0++编写的牙呈序"SoliCndow,,,以 便通过人机对话的形式征求购买产品的客户。第20行中的元素"GreyButton"是指一个位于局部程序库中的踏4圣,它由一个用于识别哪 个图标具有"x"标记的"C"程序和另一个用Visual Basic编写的程序用 于将这些图标变鼓暗颜色以表示这些图标不能^Ul虫发。当建立了一个具有大量支#^呈序的程序库时, 一个熟悉表格格式编程的程序员可通iti^轿引用各种通用支持程序来开始编程作业。图7示出 了构成一个包括窗口和4议器的程序时的? 1用的表示例。在这个引用表中 的支持程序是必须遵循的,并因此需要编译器排除不用于所要构成的程序 中的任何引用程序。利用表格格式编程方法来管理用其它语言编写而成的支持程序需要更 高的技术要求,例如在程序之间传送#和使变量相等的方法。如果不同
类型的程序是由不同的编译器翻译的,则要特别考虑对这些程序的正常管 理。所属技术领域的技术人员能够理解所公开的表格格式编程方法的优点 并建立一个编译系统来完成所需的操作。例如,在引用一个特殊外部程序 时,可分配预先定义的寄存器或存储器块来处理参数的传递。/AJi述实施例中总结出表格格式编程的主^f^点如下1. 通过编写描述性标号可比较容易地编写程序。2. 程序的结构较好以致出现故障的机会很小。3. 对于石更件终端来i兌,简化了与虚拟4欠件llr出的组合和对高级程序流 的影响。4. 表格格式程序提供了清楚简洁的表达方式并易于为第三者读懂。它 所提供的友好而清楚的表&于于进一步减少程序调试时间和缩减维护成本 是非常重要的。5. 表格格式编程方法使利用多种语言^f勾造一个程序变得更加简单。 根据应用环境和每种语言的特点来选择i吾言。6. 用表格格式编写的简明程序提供了较高的数据压缩率并使通过具有 有限带宽和数据处理效率的通信通道而从一个远程的主^li冬端到一个本地 计算设备的传输更加理想。上述本发明的最佳实施例只是举出的例子,可以预想到各种修改、规 定的改变、表格的重排、指令和关键字的分配都能iiiij相同的效果,从而 这些修改和改进都应包括在后述的权利要求范围内。
权利要求
1.一种由计算设备执行的计算机程序,此计算机程序的编写方法包括具有x种配置状态的第一表格,所述配置状态中的至少一种定义了一个或多个限定条件;规定了y个路径的第二表格,当满足所述第一表格中列出的一个限定条件时,执行所述路径中的至少一个;所述程序还包括下述表格中的至少一个(1)一个规定了用于表示一种编程语言的相应预定义指令的用户定制表达式的表格;(2)一个定义了关键字的可取字格式的表格;(3)一个用m种任务状态定义n个任务的有效性的表格,所述任务状态中的至少一种规定了k个有效的选定任务;(4)一个用p种任务状态定义q个任务的表格,所述任务状态中的至少一个规定了将被服务的有效任务的优先权;(5)一个定义了x个限定表达式的表格,每个限定表达式表示一种配置状态的一个限定条件;以及(6)一个定义了y个输出表达式的表格,每个输出表达式表示一种配置状态或所述第二表格中列出的一个路径元素的一个输出条件。
2. 如权利要求1所述的计算才/^呈序,其特征在于,用^f诸在用于存 储数字数据的##装置中数据M示。
3. 如权利要求2所述的计算才;ipf呈序,其特征在于,该程序被"用 于销售商品的计算i殳备中。
4. 一种用于对响应一个或多个限定条件执4亍一个或多个路径的计算 设备进行编程的编程方法;所述编程方法最少包括步骤(1) 规定x种配置状态;(2) 规定一个或多个限定条件到至少一种配置状态,(3) 规定y个由所述计算设备^^亍的^f圣;(4 )分配z个标号来表示步骤(3 )中的一个或多个路径元素,其中Z是一个大于等于1的整数;(5 )对于步骤(2 )中的每个限定^f牛,当满足一个特定P艮定条件 时,就^L定步骤(3)中的一个将被计算设备执行的路径;(6 )将配置状态中的至少一种^L定为有效配置状态; (7)为步骤(4)中的每个分配标号,定义一个用所述标号表示的 可拟滩序。
5. 如权利要求4所述的编程方法,其特征在于,步骤(4)中的标号 最初不能被所述计算设备执行并且另一步骤(7)寻皮配置成能够被所述计 算设备拟亍所述标号。
6. 如权利要求5所述的编程方法,其特征在于,还包括识别不能被 所述计算设备#^于的所述标号以用于构成步骤(7)的程序的步骤。
7. 如权利要求4所述的编程方法,其特征在于,用包括表格格式编 程语言在内的^f可可用编程语言来构成步骤(7)的程序。
8. 如权利要求7所述的编程方法,其特征在于,还包括定义用于在 步骤(1)到(6 )所表示的程序和标号所表示的可执^f呈序之间传递参数 的装置的步骤。
9. 如权利要求4所述的编程方法,其特征在于,还包括规定指向于 所述x种配置状态中的至少一种的一个或多个输出^f牛的步骤。
10. 如权利要求4所述的编程方法,其特征在于,在一个路径或一种 配置状态中规定了至少一个输出^f牛。
11. 如权利要求4所述的编程方法,其特征在于,还包括识别所述计 算设备管理其状态和^各径所需的资源的步骤。
12. 如权利要求4所述的编程方法,其特征在于,还包4舌指示所述计 算设备用于构成步骤(7)的程序的资源的步骤。
13. 如权利要求4所述的编程方法,其特征在于,所述计算设备由两 个或多个处理器构成;通过第一处理器提供管理特定状态和路径的资源并 利用第二处理器资源运行步骤(7)的程序的至少一部分。
14. 如权利要求4所述的编程方法,其特征在于,所述计算设备被定 义为第 一计算设备;所述编程方法还包括通过通信连接从与所述第 一计算 设备距离遥远的第二计算设备接4t4示上述步骤的数字数据的步骤。
15. 如权利要求4所述的编程方法,其特征在于,至少部分所述步骤 按照表格格式进行组织。
16. 如权利要求15所述的编程方法,其特;f棘于,还包括将步骤(l) 和(2)的配置状态分成一个或多个表格的步骤。
17. 如纟又利要求15所述的编程方法,其特;fi^于,配置状态或路径不 必按照顺序彼此依次列出。
18. 如权利要求4所述的编程方法,其特征在于,还包括将配置状态 和^4圣说明转^M^在所述计算设备中的数字数据以1UD于^^亍的步骤。
19. 如权利要求4所述的编程方法,其特征在于,还包括用于转换利 用不同格式的第二编程语言的所述步骤的至少部^i兌明的步骤。
20. 如权利要求4所述的编程方法,其特征在于,还包括用于识别由 所述步骤构成的程序位置的步骤。
21. 如权利要求7所述的编程方法,其特;f球于,步骤(7)的程序是 一个位于由权利要求l中的步^f勾成的程序"卜的程序。
22. 如权利要求21所述的编程方法,其特征在于,还包括用于识别所 述外部程序位置的步骤。
23. 如权利要求4所述的编程方法,其特征在于,还包括用于形成一 个独立的用于规定由步骤(1 )到(7 )构成的程序是有效还是无效的表才各 的步骤。
24. 如权利要求4所述的编程方法,其特征在于,还包括用于分配一 个表示一种配置状态的标号的步艰《。
25. 如权利要求4所述的编程方法,其特征在于,还包括用于分配一 个表示一个路径的标号的步骤。
26. —种用于对执行多个程序的计算设备进行编程的编程方法,包括 步骤二 —(1) 规定n个可由所述计算设备执行的程序;(2) 定义m种^壬务状态,每种任务状态规定k个有效的选定程序, 其中k是一个大于等于O的整数;以及 (3 )规定步骤(2 )中的一种任务状态为有效任务状态。
27. 如4又利要求26所述的编程方法,其特征在于,至少一个程序是一 个表才各才各式程序,包括x种程序配置状态,所述配置状态中的至少一种定义了一个或多 个限定統y个由所述计算设备执行的路径;以及当满足一个特定的限定条件时,所述计算设备^^f亍所i^4圣中的一个。
28. 如权利要求26所述的编程方法,其特征在于,步骤(1)的程序 是用不同的语言编写而成。
29. 如权利要求26所述的编程方法,其特征在于,还包括用于提[ 个关键字以表示构成步骤(1)到(3 )的一个表格格式程序组的步骤。
30. 如斥又利要求26所述的编程方法,其特4iE^于,所述4壬务状态不必 按照顺序彼此依次列出。
31. 如^又利要求26所述的编程方法,其特征在于,步骤(1)到(3) 定义了第一任务表,所述编程方法还包括定义一个不同的笫二任务表的步 骤。
32. —种用于对一个远程计算设备编程的方法,包括步骤(1)规定x种配置状态,所述配置状态中的至少一种定义一个或多个限定##;(2 )规定y个由所述计算设备^f亍的^f圣;(3 )对步骤(1)的每个限定^f牛,当满足一个特定的限定^f牛时,规定一个由所述计算设备#^亍的^4圣;(4 )规定一种限定配置状态变成有效配置状态;(5 )将表示上述步骤的数字数据存入一个本地计算设备;以及(6 )通过通信连##步骤(5 )的数字数据下载到所述远程计算设备中。
33. 如4又利要求32所述的方法,其特44于,所iiit信连接是一个网络。
34. 如权利要求33所述的方法,其特;fi4于,所述网络包括因特网、 内联网、外联网或LAN。
35. 如权利要求32所述的方法,其特征在于,还包括将一个路径元素 指向于以不同格式的第二编程语言编写而成的程序的步骤。
36. 如权利要求32所述的方法,其特征在于,还包括评估所述远程计 算设备结构的步骤和将上述步骤配置成同所述远程计算设备结构运行的步 骤。
37. 如权利要求32所述的方法,其特;f球于,还包括将所述步骤中规 定的至少部分数据形成一个表格格式的步骤。
38. 如权利要求32所述的方法,其特征在于,还包括将表示所述配置 状态和^f圣的数字数据存入所述远程计算设备中以便4^f亍的步骤。
39. 如权利要求32所述的方法,其特#于,还包括将配置状态和3各 径的至少部分说明转换成不同格式的第二编程语言的步骤。
40. 如权利要求32所述的方法,其特征在于,配置状态或路径不必按 照顺序依次列出。
41. 一种由第一处理器和第二处理器构成的多处理器计算设备,其特 征在于,所述第一处理器用于扭J于一个具有m种配置状态和n个路径的表 格格式程序的至少 一部分。
42. 如权利要求41所述的多处理器计算设备,其特征在于,第二处理 器4W于用不是表^^格式的第二语言编写而成的程序。
43. 如权利要求42所述的多处理器计算:&备,其特征在于,第二处理 器用于#1^亍一个由所述第 一处理器^l^亍的表格格式程序所指导的程序。
44. 如权利要求41所述的多处理器计算设备,其特;fi^于,所述第一 和第二处理器位于一个集成电路上。
45. 如权利要求41所述的多处理器计算i殳备,其特征在于,处理器之 一可执行的至少一个指令不同于另 一个处理器可^^亍的指令集。
46. 如权利要求41所述的多处理器计算设备,其特征在于,还包括用 于在所述笫 一和第二处理器之间传递参数的装置。
47. —种用于构成一个适于对具有m种配置状态和n个路径的表格格式程序进行编译的编译器的方法,包括步骤(1) 识别表示配置状态的区域;(2) 识别表示路径的区域;(3 )识别一种配置状态的至少一个限定条件并将其与具体的路径 相连接;以及(4)将配置状态A与一个将引用所述配置状态A作为其元素的路 径相连接。
48. 如权利要求47所述的方法,其特征在于,还包括用于将步骤(l) 到(4)的功能综合为一个现有语言的编译器的过程。
49. 如权利要求47所述的方法,其特征在于,在步骤(1)中还包括 一个识别表示配置状态开始部分的关键字的过程。
50. 如权利要求47所述的方法,其特征在于,在步骤(2)中还包括 一个识别表示路径开始部分的关键字的过程。
51. 如^又利要求47所述的方法,其特征在于,还包括使一个用户定制 表达式与表格格式编程语言的一个具体指令相等的步骤。
52. 如权利要求51所述的方法,其特征在于,还包括识别一个使用户 定制表达式与表格格式编程语言的预定义指令集相等的表格的步骤。
53. 如权利要求47所述的方法,其特征在于,还包括根据所ii4格格 式程序的指令集识别不可4iU于的标号的步骤。
54. 如权利要求53所述的方法,其特征在于,还包括将所述不可扭軒 的标号与一个外部程序相连接的步骤。
55. 如权利要求54所述的方法,其特;f球于,所i^卜部程序A^包括 ^4^4各式编程语言在内的4^f可可用编程语言编写而成的程序组成。
56. 如权利要求47所述的方法,其特征在于,还包括区分两个或多个 程序组的步骤,其中每个程序组由至少一个配置状态表和一个路径表组 成c
57. 如权利要求56所述的方法,其特征在于,还包括-对所述多个程序 组之间的交互作用进4亍编-泽的步骤。
58. 如权利要求57所述的方法,其特征在于,还包括定义一个用于激活一个程序组的指令的步骤。
59. 如权利要求58所述的方法,其特征在于,所述指令用一个或多个 任务絲示。
60. —种对计算装置编程的方法,包括步骤(1)选择一种具有预先定义的指令集的编程语言;(2 )定义用于表示选定语言的一个^^旨令的替换表达式;(3) 用所述替换表达式编写程序;以及(4) 将所述程序配置成所述计算装置可^^f于的程序。
61. 如权利要求60所述的方法,其特征在于,选定的编程语言是表格 格式编程语言,包括x种配置状态,所述配置状态中的至少一种定义了一个或多个限定糾;y个能被所述计算设备才ivf亍的^4圣;以及 当满足一个特定限定^f牛时,所述计算设备就^Vf亍一个^4圣。
62. 如权利要求60所述的方法,其特征在于,步骤(4)是一个由编 辑器、编译器、解^f呈序或一个翻i衬呈序纟ivf于的翻译过程。
63. 如权利要求62所述的方法,其特征在于,还包括显示用经过翻译 的选定语言的预定的指令集组成的程序的步骤。
64. 如权利要求62所述的方法,其特征在于,还包括显示用用户定制 表达式组成的程序的步骤。
65. 如权利要求60所示的方法,其特征在于,还包括提#-个位于程 序内部的表格以便将所述替换表达式与相应的特定指令进行链接的步骤。
66. —种用于对响应一个或多个虛拟限定执行一个或多个路径的计算 i殳备进行编程的编程方法,所述编程方法包括步骤(1) 失见定x种配置状态,所述配置状态中的至少一种定义了一个 或多个限定条件;(2) 定义步骤(1)中的限定条件中的至少一个以表示一个虚拟限定;(3 )规定y个由所述计算设备^Vf亍的^^圣; (4 )对于步骤(1 )中的每个限定^^牛,当满足所述限定中的一个具体限定务f牛时,菊4见定一个由所述计算设备^vf亍的路径; (5 )规定限定配置状态中的一个变成有效配置状态。
67. 如权利要求66所述的编程方法,其特;f正在于,所述计算设备被定 义为第一计算设备;所述编程方法还包括通过通信连接从与所述第一计算 设备距离遥远的第二计算设备接^4示上述步骤的数字数据的步骤。
68. 如权利要求66所述的编程方法,其特征在于,还包括规定一种或 多种配置状态以构成一种输出配置的步骤。
69. 如权利要求68所述的编程方法,其特征在于,所述输出配置定义 了所述计算设备的一个或多个输出终端的输出^^牛。
70. 如权利要求68所述的编程方法,其特征在于,所iil叙出配置定义 了由所述计算设备产生的虚拟计算输出。
71. 如权利要求66所述的编程方法,其特征在于,还包括将配置状态 和i^圣说明转4线所述计算设备可^^亍的数字数据的步骤。
72. 如权利要求66所述的编程方法,其特征在于,还包括用于转换利 用不同格式的第二编程语言的配置状态和路径的至少部^i兌明的步骤。
73. 如权利要求66所述的编程方法,其特;f正在于,x种配置状态和y 个路径不必按照顺序彼此依次列出。
74. 如权利要求66所述的编程方法,其特征在于,还包括提供一个用 于识别由所述步^i且成的程序位置的关键字的步骤。
75. 如权利要求66所述的编程方法,其特征在于,还包括将步骤(1) 中的配置状态分成一个或多个表格的步骤,每个表格中有一种配置状态被 规定为有效。
76. 如权利要求66所述的编程方法,其特征在于,还包括构成一个独 立的用于确定由步骤(1 )到(7 )组成的程序是有效还是无效的表格的步 骤。 —
77. 如权利要求66所述的编程方法,其特^E^于,还包括下列步骤 (6 )提供一个预先定义的指令集以便对路径和配置状态编程;(7)定义用于表示步骤(6)中的指令集的一个特定指令的替换表 达式;(8 )用^齐换表达式编写程序;以及(9 )将所述程序配置成所述计算装置可执行的程序。
78. 如权利要求77所述的编程方法,其特征在于,步骤(9)是一个 由编辑器、替换表达式和相应的特定指令执行的翻译过程。
79. 如权利要求66所述的编程方法,其特征在于,还包括规定一种配置状态为有效的步骤。
80. 如片又利要求66所述的编程方法,其特征在于,将一个3l^圣定义为 在初始化时将被"i^于的缺省3各径。
81. —种用于在一个计算设备的程序列表中识别预定类型的字 (wordings)的编程方法,包括从多种预定字格式(wording style)选择中选择一种字格式的步骤。
82. 如权利要求81所述的编程方法,其特征在于,还包括步骤(1)定义x种配置状态,所述配置状态中的至少一种定义了一个 或多个限定条件;(2 )定义由所述计算设备执行的y个路径;以及(3)当满足一个具体限定^^牛时,向所述计算设^配一个路径以拟亍。
83. 如权利要求81所述的编程方法,其特征在于,通过一个具有关键 字的表4各来定义所述字4各式。
84. 如权利要求81所述的编程方法,其特征在于,所述—预定字型^皮配置成高亮度的用户定制标号。
85. 如权利要求81所述的编程方法,其特征在于,还包括形成两组或 多组用户定制字格式并且其中一组被定义为有效的步骤。
86. —种用于对响应一个或多个限定条件执行一个或多个路径的计算 设备进行编程的编程方法;所述编程方法包括步骤(1) 规定x种配置状态,其中x是一个大于等于1的整数;(2) 规定一个或多个到于所述x种配置状态中的至少一种的限定标号; (3 )使步骤(2 )中的限定标号指向一个用于描述限定条件或所述标注所表示的条件的独立的表达式;以及(4 )规定y个可^Vf亍^4圣,其中响应步骤(3 )中规定限定^^牛来 #^亍至少一个^14圣。
87. —种计算装置,包括用于^U于一个程序的计算装置;用于访问于一个远程计算设备相连接的通信连接的装置;以及 用于存储所述计算装置或所述远程计算设备所执f亍的数字数据的存 储装置;其中所述数字数据包括具有x种配置状态和y个5^圣的表^^格式 程序表示;所述配置状态中的至少一种定义了一个或多个限定条件;而在 满足一个提单限定^^牛时,所述计算装置"^亍所iii^圣中的一个。
全文摘要
适用于利用多种语言并通过因特网和网络环境下载的表格格式编程方法提供了一个用于定义定制表达式的可选表格(103,200),一个用于规定多任务应用的可选表格(105,260),一个用于规定标号的打印字格式的可选表格(104,230)以及一个与路径表(116)交互作用的配置状态表(113)。一个可选限定表(112)定义了一种输入配置状态的限定条件。硬件实施包括一个用于处理表格格式编程过程并释放主处理器用于其它应用的协处理器。在编程过程中,程序员提供了用户定制标号来描述所需的功能和操作。这些标号还可用于其它程序组中开发。
文档编号G06F9/06GK101154158SQ200710126450
公开日2008年4月2日 申请日期1999年10月8日 优先权日1998年10月9日
发明者林亚夫 申请人:林亚夫
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1