首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 140 毫秒
1.
全炳哲  陈伟 《计算机学报》1996,19(11):833-840
通过证明程序规约的方法可构造相应程序,但对“难题”和无证明的规约,无法使用这种方法构造程序,另一方面,如果可构造程序规约的验证程序,则可把这种程序看成该仙约的程序。本文讨论了程序规约的验证程序的构造方法,作为研究程序自动佛的一种途径。  相似文献   

2.
传统程序生成器,只能辅助程序开发,不能有效地辅助程序维护,本文提出了一种自动维护生成程序的方法,可指导开发程序自动生成/维护工具,并以此工具为基础,完成程序的自动生成与自动维护工作,从而大大提高软件系统的维护效率。  相似文献   

3.
软件测试中的结构性测试是以程序的结构为基础生成测试用例,以测试准则为判定测试的充分性,由于程序结构的复杂性,难于保证对程序进行充分而高效的测试,本文提出了一种基于程序依赖图的程序结构划分的测试方法,即程序块划分法。该方法难过对程序进行结构划分,将复杂的程序分解为若干程序块,并通过程序块间的数据依赖关系导出各程序块的语义,从而使测试可以在程序块的级别的基础上独立进行。  相似文献   

4.
程序性能是指程序的时间和空间特性,程序执行时间越短,耗用内存空间越少,程序性能就越好。性能是程序的重要指标,在一些特别应用(如实时系统)中,唯有高性能程序,才能派上用场。那么如何提高C 程序的性能呢?笔者从开发实践中得到一些有效地技巧性措施,在此与广大同行交流。  相似文献   

5.
李好  付海辰 《福建电脑》2006,(2):149-150
大多数IDE工具都可以在集成环境中调用特定的命令行(控制台)程序,实时捕获程序输出,并将捕获到的信息显示在图形界面的窗口中。本文针对GUI方式的Windows程序没有控制台.给出一个中介程序和一个工具程序,用这个中介程序调用工具程序并随时获取GUI程序的输出信息,将信息传回GUI程序。  相似文献   

6.
程序切片技术是一种重要的程序分析理解方法,可以帮助开发人员和维护人员理解程序的结构和作用。随着编程语言逐渐趋于人性化、多功能化和复杂化,为了适应编程语言的这种进步,程序切片技术也在不断的演化发展着。文章中主要介绍了程序切片技术的一些基本的准则,介绍了程序切片的一些类型,以度如何利用源程序和图形进行程序切片,并且进行了举例说明。  相似文献   

7.
程序跑飞是单片机系统因干扰引起程序失控的一种现象。对程序跑飞现象进行剖析,说明程序跑飞的实质在于PC受干扰出错,导致多字节指令被拆散,继而导致系统将后续程序中的操作数视为指令代码,最终导致程序失控。就程序跑飞对单片机系统的影响进行了分类讨论,指出借助数字电路的存储、判断以及高速运算等功能,发挥软件优势,可及时发现和抑制干扰。针对程序跑飞后出现的不同情况,提出利用指令冗余、软件陷阱、“看门狗”及标志令牌等技术可较好地应对程序跑飞,迅速拦截失控程序流、捕捉跑飞程序,并将其引入正轨运行。这些软件措施经济、可靠,很容易结合到具体的系统和程序中。  相似文献   

8.
(1)问题提出 以前开发了一个程序《组合程序的深入研究》,最近想写一个排列程序,看了网上的排列程序,大都是全排列,只有一个选排列,代码晦涩难懂,而且数字大了会出错,于是决定自己开发一个全新的排列程序。  相似文献   

9.
在保证程序基本功能的前提下,程序的运行速度是衡量程序优劣的指标之一。本文介绍一种利用TurboPascal编写的程序,测量程序运行时间的方法。  相似文献   

10.
关于FoxBASE+菜单,在报刊上已有不少介绍,而本文提供的程序,却具有其他程序无法比拟的特点和优点。它方便、灵活、实用、适用面广。菜单功能、提示信息及其下属程序名称的改变均不需改动程序,菜单程序生成FOX文件后,无需改动。它采用当今软件流行的立体阴影式画面,界面美观,新颖。1.设计思想.把菜单的所有信息放在一个数据文件中,改变菜单只需改变某单库相应纪录,而程序是固定不变的,它一次性读取菜单库信息,作为生成菜单的依据,而孩程序便是任意数据信息管理系统的主程序,使用者只需编制相应功能的子模块。并且可以随…  相似文献   

11.
当前GPU集群的主流编程模型是MPI与CUDA的松散耦合,采用这种编程模型进行编程,存在编程复杂度大、程序的可移植性差、执行效率低等问题。为此,提出一种面向通用计算GPU集群的任务自动分配系统StreamMAP。对编译器进行改造,以编译制导的方式提供集群任务的计算资源需求,通过运行时系统动态地发现、建立并维护系统资源拓扑,设计一种较为契合GPU集群应用特征的任务分配策略。实验结果表明,StreamMAP系统能降低集群应用程序的编程复杂度,使之较为高效地利用GPU集群的计算资源,且程序的可移植性和可扩展性也得到了保证。  相似文献   

12.
Pair programming involves-two developers simultaneously collaborating with each other on the same programming task to design and code a solution. Algorithm design and its implementation are normally interwoven in that implementation often provides feedback to enhance the design. Previous controlled pair programming experiments did not explore the efficacy of pairs versus individuals in program design-related tasks separately from coding. Variations in programmer skills in a particular language or an integrated development environment and the understanding of programming instructions can mask the skill of subjects in program design-related tasks. Programming aptitude tests (PATs) have been shown to correlate with programming performance. PATs do not require understanding of programming instructions and do not require a skill in any specific computer language. Two controlled experiments were conducted, with full-time professional programmers being the subjects who worked on increasingly complex programming aptitude tasks related to problem solving and algorithmic design. In both experiments, pairs significantly outperformed individuals, providing evidence of the value of pairs in program design-related tasks.  相似文献   

13.
The increasing industrial need for production automation in one of a kind production and increasing demand for one of a kind or small batch production requires that automation is carried out by programmable automatic equipment in order to ensure that this equipment can be rapidly and easily adjusted and configured to the ever changing production tasks. In order that the adjustment and reconfiguration of the production equipment can be carried out quickly, reliably and in compatibility with the state of the production plant at the time of task execution it is necessary that the equipment tasks can be specified by a specification language, which is much more abstract than the task specification languages that are today commercially available for machine tool and robot programming, and that the corresponding compiler can be controlled by the system controlling the sequence of operations of the assembly plant. To comply with this need a task level robot programming language for assembly operations has been developed with a level of abstraction corresponding to the level of abstraction for the command: Mount part A. The compiler of the language retrieves information about placement and orientation of the parts to be assembled from a database. The information is supplied to the database by proper sensors mounted on the assembly plant, implying that the program which is generated corresponds to the state of the physical plant at program execution time. Additionally, making available information of permitted production assembly sequences has enabled the compiler to be controlled by a system that optimizes the sequence in which a particular assembly should be carried out respecting present availability of resources needed for the assembling tasks.In this paper the designed robot language, the corresponding compiler and the necessary information structures are presented.  相似文献   

14.
15.
The complexity of robot software systems calls for the use of a well-conceived architecture together with programming tools to support it. One common feature of robot architectures is the modular decomposition of systems into simpler and largely independent components. These components implement primitive actions and report events about their state. The robot programming framework proposed here includes a tool (RoboGraph) to program and coordinate the activity (tasks) of these middleware modules. Project developers use the same task programming IDE (RoboGraph) on two different levels. The first is to program tasks that must be executed autonomously by one robot and the second is to program tasks that can include several robots and building elements.Tasks are described using a Signal Interpreted Petri Net (SIPN) editor and stored in an xml file. A dispatcher loads these files and executes the different Petri nets as needed. A monitor that shows the state of all the running nets is very useful for debugging and tracing purposes. The whole system has been used in several applications: A tour-guide robot (GuideBot), a multi-robot surveillance project (WatchBot) and a hospital food and laundry transportation system based on mobile robots.  相似文献   

16.
A general framework for network aware programming is presented that consists of a language for programming mobile applications, a logic for specifying properties of the applications and an automatic tool for verifying such properties. The framework is based on X-KLAIM, eXtended KLAIM, an experimental programming language specifically designed to program distributed systems composed of several components interacting through multiple tuple spaces and mobile code. The proposed logic is a modal logic inspired by Hennessy-Milner logic and is interpreted over the same labelled structures used for the operational semantics of X-KLAIM. The automatic verification tool is based on a complete proof system that has been previously developed for the logic.  相似文献   

17.
Spatial reasoning in a fuzzy region connection calculus   总被引:1,自引:0,他引:1  
Although the region connection calculus (RCC) offers an appealing framework for modelling topological relations, its application in real-world scenarios is hampered when spatial phenomena are affected by vagueness. To cope with this, we present a generalization of the RCC based on fuzzy set theory, and discuss how reasoning tasks such as satisfiability and entailment checking can be cast into linear programming problems. We furthermore reveal that reasoning in our fuzzy RCC is NP-complete, thus preserving the computational complexity of reasoning in the RCC, and we identify an important tractable subfragment. Moreover, we show how reasoning tasks in our fuzzy RCC can also be reduced to reasoning tasks in the original RCC. While this link with the RCC could be exploited in practical reasoning algorithms, we mainly focus on the theoretical consequences. In particular, using this link we establish a close relationship with the Egg-Yolk calculus, and we demonstrate that satisfiable knowledge bases can be realized by fuzzy regions in any dimension.  相似文献   

18.
Efficiency is a problem in automatic programming—both in the programs produced and in the synthesis process itself. The efficiency problem arises because many target-language programs (which vary in their time and space performance) typically satisfy one abstract specification. This paper presents a framework for using analysis and searching knowledge to guide program synthesis in a stepwise refinement paradigm. A particular implementation of the framework, called libra, is described. Given a program specification that includes size and frequency notes, the performance measure to be minimized, and some limits on synthesis resources, libra selects algorithms and data representations and decides whether to use ‘optimizing’ transformations. By applying incremental, algebraic program analysis, explicit rules about plausible implementations, and resource allocation on the basis of decision importance, libra has guided the automatic implementation of a number of programs in the domain of symbolic processing.  相似文献   

19.
数据流编程模型将程序的计算与通信分离,暴露了应用程序潜在的并行性并简化了编程难度。分布式计算框架利用廉价PC构建多核集群解决了大规模并行计算问题,但多核集群层次性存储结构和处理单元对数据流程序的性能提出了新的挑战。针对数据流程序在分布式架构下所面临的问题,设计并实现了数据流编程模型和分布式计算框架的结合——在COStream的基础上提出了面向Storm的编译优化框架。框架包括两个模块:面向Storm的层次性任务划分与调度,以及面向Storm的层次性软件流水与代码生成。层次性任务划分利用Storm的任务调度机制将程序所有子任务分配到Storm集群节点内的多核上。层次性软件流水与代码生成将子任务构造成集群节点间的软件流水和节点内多核间的软件流水,并生成相应的目标代码。实验以多核集群为目标平台,在集群上搭建Storm分布式架构,选取数字媒体处理领域典型程序作为测试程序,对面向Storm的编译优化后的程序进行实验分析。实验结果表明了结合方法的有效性。  相似文献   

20.
张国武 《控制工程》2004,11(1):94-96
介绍了基于套接字机制的网络通信编程,它是TCP/IP编程的基础,可以实现网络不同节点上运行的应用程序间的相互通信。套接字依赖于系统并利用API进行网络编程实现,采用绑定-监听-连接-接收过程进行通讯连接,采用Winsock控件可以简化编程。阐述了如何利用Winsock编程和实现PB应用程序与西门子TDC应用之间的数据通讯。采用WinSock编程的系统完成了对热轧不锈钢卷的及时、准确、自动计量,具有较好的应用参考及推广价值。  相似文献   

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

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