首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 19 毫秒
1.
提出一种程序理解实现方案,通过将程序设计语言的词法规则和语法规则以产生式表示,设计基于产生式多语言程序处理算法,将产生式自动转化为对应的词法和语法规则函数,使得不同的程序设计语言规则可以采用统一的方式描述,从而可用一套程序理解系统实现对多种程序设计语言的程序理解,以后增加某种程序设计语言的程序理解,只要定义对应程序设计语言的词法和语法规则产生式即可实现,有效地解决了程序理解系统的共享性难题。  相似文献   

2.
张欢枝 《福建电脑》2007,(8):126-127
建立与遍历一棵二叉树历来为数据结构中不可缺少的内容.由于C语言仅有单向的"值传递",所以多年来数据结构皆使用指针函数来编程,进而增加了复杂性.本文了构造一个用递归函数建立二叉树的C语言程序,使实参不仅传递数值还可以传递其地址.  相似文献   

3.
操作系统内核作为软件系统的基础组件, 其安全可靠是构造高可信软件系统的重要环节, 但是, 在实际的验证工作中, 操作系统内核中全局性质的不变式定义, 复杂数据结构程序的形式化描述和验证仍存在很多困难. 本文针对操作系统内核中满足的全局性质, 在代码层以函数为单位, 用全局不变式进行定义, 并在不同的函数中进行形式化验证, 从而证明各个函数符合操作系统内核的全局性质; 针对操作系统内核中经常使用的复杂数据结构程序, 本文通过扩展形状图理论, 提出一种使用嵌套形状图逻辑的方法来形式化描述复杂数据结构程序, 并对该方法进行了正确性证明, 最终成功验证操作系统内核中关于任务创建与调度, 消息队列创建与操作相关的代码.  相似文献   

4.
王朋  徐健  于尚超 《微机发展》2013,(7):92-95,100
泛型编程旨在编写一般化并可重复使用的算法,主要目的是提高程序的复用性,其效率与针对某特定数据类型而设计的算法相同。泛型编程可以使算法与数据结构完全分离,极大提高了程序的灵活性。在O’Caml语言中已经实现了类型标记函数和泛型函数,但泛型函数的类型参数只能是基本类型或实例化类型,不能使用抽象类型。"泛型抽象"是指使用抽象类型作为类型参数的函数定义方法,实现了"泛型编程"类型参数的多样化。文中在O’Caml语言上进行"泛型抽象"的研究,根据规则对O’Caml语言语法进行扩展,并在O’Caml语言中实现了"泛型抽象"函数定义。  相似文献   

5.
泛型编程旨在编写一般化并可重复使用的算法,主要目的是提高程序的复用性,其效率与针对某特定数据类型而设计的算法相同.泛型编程可以使算法与数据结构完全分离,极大提高了程序的灵活性.在O'Caml语言中已经实现了类型标记函数和泛型函数,但泛型函数的类型参数只能是基本类型或实例化类型,不能使用抽象类型.“泛型抽象”是指使用抽象类型作为类型参数的函数定义方法,实现了“泛型编程”类型参数的多样化.文中在O'Caml语言上进行“泛型抽象”的研究,根据规则对O'Caml语言语法进行扩展,并在O'Caml语言中实现了“泛型抽象”函数定义.  相似文献   

6.
定义和使用抽象数据类型这样的语言结构会简化大型程序的设计和维护。本文将描述C class的概念,它把C语言扩充为含有这种结构的语言。class是用标准C的数据结构和函数定义的,并且,它能够把其本身作为新的class结构元素。class提供一种方法把存取数据结构局限于与它有关的一组函数内。而且在编译和运行时,并不因此会显著地增加开销。 这里通过一个小例子,介绍C class的概念。本文要求读者熟悉C语言。附录A是使用class的一个完整的小型C程序。 多年来,许多PDP—11和VAX UNIX[1]系统都使用过class。目前,已在三十多个系统的各种设计中使用了class。目前class是这样实现的:当在一个C源文件中找到#class指令时,就调用cc编译程序的中间遍。把它称为预处理class。class预处理器容易配置,在具有可移植C编译程序版本的系统上。Motorola 68000上的一个版本已经在使用了。  相似文献   

7.
函数的定义C语言程序是由函数构成的,函数是C语言中的一种基本模块。在《手教手教你学单片机的C语言程序设计(三)》中,我们已经介绍了C语言程序的组成结构,即C语言程序是由函数构成的,一个C源程序至少包括一个名为main()的函数(主函数),也可能包含其它函数。C语言程序总是由主函数main()开始执行的,main()函数是一个控制程序流程的特殊函数,它是程序的起点。所有函数在定义时是相互独立的,它们之间是平行关系,所以不能在一个函数内部定义另一个函数,即不能嵌套定义。函数之间可以互相调用,但不能调用主函数。从使用者的角度来看,有两种函数:标准库函数和用户自定义功能子函  相似文献   

8.
数据结构是面向过程编程中的一个重要概念,即使在面向对象编程中也具有重要的地位,因为面对繁多而复杂的待处理数据,如果没有数据结构将数据组织起来,那么程序的编写将变得极为艰难。而数据结构虽好,但终究是思想,它还需要一个实现的途径,所以在整个程序编写的过程中,数据结构为编程中的法,而使用的语言就是编程中的术。在该文中将试析一个强大的术——C++语言如何在数据结构中的运用,如何发挥出数据结构更好的效果。  相似文献   

9.
MOHAMEDHamada 《软件学报》2001,12(9):1279-1286
函数式语言和逻辑语言在下列意义上是互补的,基于归约的函数式程序设计语言具有确定和懒惰求解等性质.但同时它又缺少诸如存在量化的变量以及部分数据结构等所希望的性质.相反,基于HORN子句逻辑和消解原理的逻辑程序设计语言允许存在量化的变量和部分数据结构但又缺少确定和懒惰求解的性质.从这个角度出发,把函数和逻辑程序设计语言结合成一种范型是很自然的,这种结合提供了一种比逻辑和函数语言表达能力更强的合一语言.提出了函数式逻辑语言的操作语义,同时表明这种操作语义在实践中是可见的.  相似文献   

10.
指针是C语言中一个重要的概念,也是C语言中一个重要的特色。正确而灵活地运用指针可以提高程序的运行速度和降低程序的存储空间。也可以有效地表示和实现复杂的数据结构。同时指针又是一个十分难以理解的概念。错误地使用指针将使程序中隐藏一些不容易发现且难以排除  相似文献   

11.
本文介绍基于函数式语言的元编程系统,讨论元编程系统特别是同构系统的语言特点。从程序反射的角度分析元编程系统对程序设计语言在自我表示、自我分析和控制等方面的要求。以 MetaML 和 Template Haskell 为例论述在函数式语言中为了支持元编程需要扩展的机制,包括语法、语义、类型系统、安全的变量使用等,以及它们的实现方案、各方案的特点。最后总结一些元编程系统的共同点,并预测未来的发展趋势。  相似文献   

12.
本文介绍了AutoCAD的字型文件(.SHX)的数据结构,并以一个函数说明了在高级程序设计语言中应用.SHX文件的方法,函数是用C语言实现的。  相似文献   

13.
要进行程序设计,必须具备语言、算法、数据结构和程序设计方法等多方面的知识。其中,语言在这里主要指的是语法结构,即程序设计中数据表示的方法和流程设计必须遵循的规则,而算法、数据结构和程序设计方法等能力是建立在对语言掌握程度的基础上。分析2003年9月全国等级考试《二级C语言程序设计》的笔试试卷,可以发现重点考查了"语言"和"算法",其知识点主要集中在语言中的语法结构,和程序设计中的算法分析。在语言的语法结构部分,主要是通过考查考生对各种数据类型的定义、表示、引用,要求考生能够达到熟悉和掌握C语言的基本语法规则,其中,…  相似文献   

14.
作者对John Backus在[1]中提出的函数式程序设计语言FP系统给出了一种实现方案,并在南京大学计算中心的ES-1022B计算机上实现了一个特定的FP语言。本文给出了该特定的语言的定义、实现要点。  相似文献   

15.
John Backus 是计算机科学界的知名人士,他对现代程序设计语言及其形式语法定义有着划时代的贡献。他是 Fortran 和 ALGOL 语言的主要创始人,巴科斯范式 BNF 就是以他命名的。本文是 John Backus 于1977年接受 ACM 图灵奖时的讲演稿。作者深刻分析了冯·诺依曼式计算机以及以这类计算机为基础的传统程序设计语言的本质缺陷之后,提出了一种所谓函数式程序设计系统。其主要特征如下:第一,便于表示递归函数和图灵机,因而,具有较好的表达能行可计算函数的能力。第二,具有潜在的并行性,便于表示并行算法。第三,具有较好的代数性质,因而,便于对程序直接进行转换,简化关于程序性质的研究。函数式程序设计系统的研究不仅促进了程序设计语言的发展,促进了软件的发展,而且对计算机系统结构的发展所起的推动作用也是巨大而深远的。本文是关于函数式程序设计系统的奠基性文献。  相似文献   

16.
C51编译器支持在C语言源程序中直接编写80C51单片机的中断服务函数程序。以前我们学习用汇编语言编写中断服务程序时,会对堆栈出栈的保护问题而觉得头痛。为了能够在C语言源程序中直接编写中断服务函数,C51编译器对函数的定义进行了扩展,增加了一个扩展关键字interrupt。关键字interrupt是函数定义时的一个选项,加上这个选项就可以将一个函数定义成中断服务函数。定义中断服务函数的一般形式为:  相似文献   

17.
指针指针是C语言中的一个重要概念,指针类型数据在C语言程序中的使用十分普遍。C语言区别于其它程序设计语言的主要特点就是处理指针时所表现出的能力和灵活性。正确地使用指针类型数据,可以有效地表示复杂的数据结构,直接处理内存地址,而且可以更为有效合理地使用数组。一、指针与地址计算机程序的指令、常量和变量等都要存放在以字节为单位的内存单元中,内存的每个字节都具有一个唯一的编号,这个编号就是存储单元的地址。各个存储单元中所存放的数据,称为该单元的内容。计算机在执行任何一  相似文献   

18.
通用菜单软件的设计与实现   总被引:1,自引:0,他引:1  
本文介绍了使用C++语言设计的一个通用菜单程序。文中给出了该程序设计的主要思想,并详细描述了程序实现过程中核心数据结构的定义及算法。同时,就汉字窗口边界出现乱字的现象提出了简单的解决办法。  相似文献   

19.
程序信息流安全是信息安全的一个重要研究方向.基于类型的静态分析可以保证程序信息流安全与单进程系统相比.移动计算系统中数据通讯的存在使得程序信息流安全保护更加困难.Cornell大学的Zdancewic对函数式语言λsec的单进程程序信息流安全进行了研究.本文在其工作的基础上,根据移动计算系统的结构特征,通过对函数式语言λsec进行扩充,加入通讯原语,将其扩展成移动计算语言MobileML,并针对一个简单的移动计算模型,给出了描述程序信息流安全的无干扰性定义,设计了相应的信息流类型系统,用以静态检查保证MobileML语言程序信息流安全.  相似文献   

20.
本文定义了一种多论域逻辑演算语言-子目标演绎语言SDL.它是古典一阶语言的一个变型,文中以SDL语言作为描述抽象数据结构及程序规范、设计程序、验证程序的形式化系统.说明了利用这种系统实现Prolog型程序自动设计的方法.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号