首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 46 毫秒
1.
This paper details an experienced programmer's first impressions of working with the Unix operating system and c programming language. Use of the Unix shell, vi editor, c compiler and some utilities are discussed, as are the Unix documentation and some relevant textbooks. An assessment of the difficulties and advantages of starting with Unix is given.  相似文献   

2.
A tool for the static analysis of programs that can detect entities in C and C++ programs, their metrics, and relations between them is considered. The program entities are files, functions, classes, methods, etc., and relations are calls, inheritance, read/write operations of global variables, file inclusion, and aggregation. Methods for the development of such a tool based on the open compiler infrastructure LLVM [1], including the necessary modifications in the Clang compiler [2], and the developed analyzer are described. Results of the tool testing on the Android code are presented.  相似文献   

3.
Programs can be analyzed to determine bounds on the ranges of values assumed by variables at various points in the program. This range information can then be used to eliminate redundant tests, verify correct operation, choose data representations, select code to be generated, and provide diagnostic information. Sophisticated analyses involving the proofs of complex assertions are sometimes required to derive accurate range information for the purpose of proving programs correct. The performance of such algorithms may be unacceptable for the routine analysis required during the compilation process. This paper presents a discussion of mechanical range analysis employing techniques practical for use in a compiler. This analysis can also serve as a useful adjunct to the more sophisticated techniques required for program proving.  相似文献   

4.
5.
Context-free graph-grammars are considered such that, in every generated graph G, a derivation tree of G can be constructed by means of monadic second-order formulas that specify its nodes, its labels, the successors of a node etc. A subset of the set of graphs generated by such a grammar is recognizable iff it is definable in monadic second-order logic, whereas, in general, only the “if” direction holds.  相似文献   

6.
SPLICE, a software tool for the extraction of sequences from files in GenBank tape format, has been developed. The program can analyze the features table in this format and use any of the information provided to write the corresponding sequences into a standard sequence file format suitable for use with sequence analysis programs. Sequences that are present as several subsequent fragments in a single GenBank file, such as those encoding a peptide, can be spliced together by the program. Further, sequences that are present in more than one Genbank file, such as an exon which spans several different files, can also be spliced into one sequence. SPLICE runs under the MS/DOS and Unix operating systems, can be called as a sub-process by other programs and can process batches of files.  相似文献   

7.
8.
9.
The Hybrid Reverse Monte Carlo (HRMC) code models the atomic structure of materials via the use of a combination of constraints including experimental diffraction data and an empirical energy potential. This energy constraint is in the form of either the Environment Dependent Interatomic Potential (EDIP) for carbon and silicon and the original and modified Stillinger–Weber potentials applicable to silicon. In this version, an update is made to correct an error in the EDIP carbon energy calculation routine.

New version program summary

Program title: HRMC version 1.1Catalogue identifier: AEAO_v1_1Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEAO_v1_1.htmlProgram obtainable from: CPC Program Library, Queen's University, Belfast, N. IrelandLicensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.htmlNo. of lines in distributed program, including test data, etc.: 36 991No. of bytes in distributed program, including test data, etc.: 907 800Distribution format: tar.gzProgramming language: FORTRAN 77Computer: Any computer capable of running executables produced by the g77 Fortran compiler.Operating system: Unix, WindowsRAM: Depends on the type of empirical potential use, number of atoms and which constraints are employed.Classification: 7.7Catalogue identifier of previous version: AEAO_v1_0Journal reference of previous version: Comput. Phys. Comm. 178 (2008) 777Does the new version supersede the previous version?: YesNature of problem: Atomic modelling using empirical potentials and experimental data.Solution method: Monte CarloReasons for new version: An error in a term associated with the calculation of energies using the EDIP carbon potential which results in incorrect energies.Summary of revisions: Fix to correct brackets in the two body part of the EDIP carbon potential routine.Additional comments: The code is not standard FORTRAN 77 but includes some additional features and therefore generates errors when compiled using the Nag95 compiler. It does compile successfully with the GNU g77 compiler (http://www.gnu.org/software/fortran/fortran.html).Running time: Depends on the type of empirical potential use, number of atoms and which constraints are employed. The test included in the distribution took 37 minutes on a DEC Alpha PC.  相似文献   

10.
11.
The evolution of the gingerbread man   总被引:3,自引:0,他引:3  
Two versions of the evolution of the Gingerbread Man for the iteration zzx + c are presented. A previously published version shows an asymmetric evolution as positive real x increases, while a new version shows a symmetric evolution, and several interesting features. Fractal “growth” is described that occurs along certain “shock” lines with this new evolution. A floating “object” appears while approaching certain positive even integer values of x. Finally, a few comments are made about images created from negative values of x.  相似文献   

12.
Ivan Flores 《Software》1972,2(4):353-358
Three kinds of documentation are examined: summary documentation describes the intent and nature of the program; detail documentation gives all the information the user needs to put the program to work; intraprogram documentation is information written into the program to inform the user or programmer. The need for intraprogram documentation occurs at four different times: in the initial design period; during debugging; as the program and system evolve; when it is necessary to adapt the program to other systems There are several means for providing intraprogram documentation. There are comments which can be placed in the header, on each line, at the beginning and end of a subroutine. Also noted is the important use of space for making the comments easier to read and for separating chunks of the program. Special symbols serve the same purpose. Examples are provided to bring home these points.  相似文献   

13.
PHP不仅限于只产生HTML的输出,还可以创建及操作多种不同图像格式的图像文件,包括gif,png,jpg,wbmp等。更方便的是,PHP还可以直接将图像流输出到浏览器,但是要使这组函数能够工作,系统中必须有GD库的支持,即应该在编译PHP之前先取得GD的源码并编译之,生成libgd.a和一些.h等文件,分别拷到系统相应的目录中。由于配置过程比较复杂,不易成功,故本文在此给出Apache PHP GD详细的安装配置步骤。  相似文献   

14.
The verifying compiler (VC) project proposals suggest that mainstream software developers are its targeted end-users. Like other software engineering efforts, the VC project success depends on appropriate end-user consultation. Industrial use of program assertions for the purpose of run-time assertion checking (RAC) is becoming commonplace. A likely next step on the path to VC adoption is the use of assertions in extended static checking (ESC), a fully automated form of static program verification (SPV). Unfortunately, all current VC prototypes supporting SPV, adopt a semantics which is unsound relative to the standard run-time interpretation of assertions. In this article, we report on the results of a survey in which we asked industrial developers what logical semantics they want program assertions to have, and whether consistency across RAC and SPV tools is important. Survey results indicate that developers are in favor of a semantics for assertions that is compatible with their current use in RAC.  相似文献   

15.
Inserting instrumentation code in a program is an effective technique for detecting, recording, and measuring many aspects of a program's performance. Instrumentation code can be added at any stage of the compilation process by specially-modified system tools such as a compiler or linker or by new tools from a measurement system. For several reasons, adding instrumentation code after the compilation process—by rewriting the executable file—presents fewer complications and leads to more complete measurements. This paper describes the difficulties in adding code to executable files that arose in developing the profiling and tracing tools qp and qpt. The techniques used by these tools to instrument programs on MIPS and SPARC processors are applicable in other instrumentation systems running on many processors and operating systems. In addition, many difficulties could have been avoided with minor changes to compilers and executable file formats. These changes would simplify this approach to measuring program performance and make it more generally useful.  相似文献   

16.
M. K. Crowe 《Software》1987,17(7):455-467
A system for dynamic compilation under the Unix operating system is described. The basis of the system is an incremental assembler that can be used statically or during program execution to insert or replace a module in an executable image. All cross-module references are via offets into a run-time symbol table. All generated code is independent of its location or the location of the symbol table. The symbol table and all modules reside in memory segments compatible with the memory allocator malloc() . The symbol table origin is maintained in a processor register. Library procedures allow the assembler (or C compiler) to be called to alter the currently executing program, or to place a stub function which acts as a trap, so that when the stub is invoked it caues a file to be dynamically compiled into the executing program to replace the stub with a bona fide procedure. This facilitates the construction of advanced interactive environments using native code. Some example applications, to Prolog and to incremental compilation, are considered.  相似文献   

17.
Fortran 77 code is presented for a hybrid method of the Metropolis Monte Carlo (MMC) and Reverse Monte Carlo (RMC) for the simulation of amorphous silicon and carbon structures. In additional to the usual constraints of the pair correlation functions and average coordination, the code also incorporates an optional energy constraint. This energy constraint is in the form of either the Environment Dependent Interatomic Potential (applicable to silicon and carbon) and the original and modified Stillinger-Weber potentials (applicable to silicon). The code also allows porous systems to be modeled via a constraint on porosity and internal surface area using a novel restriction on the available simulation volume.

Program summary

Program title: HRMC version 1.0Catalogue identifier: AEAO_v1_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEAO_v1_0.htmlProgram obtainable from: CPC Program Library, Queen's University, Belfast, N. IrelandLicensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.htmlNo. of lines in distributed program, including test data, etc.: 200 894No. of bytes in distributed program, including test data, etc.: 907 557Distribution format: tar.gzProgramming language: FORTRAN 77Computer: Any computer capable of running executables produced by the g77 Fortran compilerOperating system: Unix, WindowsRAM: Depends on the type of empirical potential use, number of atoms and which constraints are employedClassification: 7.7Nature of problem: Atomic modeling using empirical potentials and experimental dataSolution method: Monte CarloAdditional comments: The code is not standard FORTRAN 77 but includes some additional features and therefore generates errors when compiled using the Nag95 compiler. It does compile successfully with the GNU g77 compiler (http://www.gnu.org/software/fortran/fortran.html).Running time: Depends on the type of empirical potential use, number of atoms and which constraints are employed. The test included in the distribution took 37 minutes on a DEC Alpha PC.  相似文献   

18.
19.
琚小明  姚庆栋 《计算机应用》2005,25(7):1674-1675,1694
传统编译器测试方法是通过比较预期的结果和待测的结果是否一致,以确定编译器是否存在错误。在此基础上,提出了引入参考编译器和参考仿真器的测试方法,在指令集软件仿真过程中生成可用于编译器调试的动态数据信息文件,对参考动态数据信息文件和待测动态数据信息文件进行比较,编译器测试工具可根据比较的结果来确定待测编译器存在错误的位置,这对编译器的调试是非常有用的。  相似文献   

20.
Separating programs into modules is a well-known technique which has proven very useful in program development and maintenance. Starting by introducing a number of possible scenarios, in this paper we study different issues which appear when developing analysis and specialization techniques for modular logic programming. We discuss a number of design alternatives and their consequences for the different scenarios considered and describe where applicable the decisions made in the Ciao system analyzer and specializer. In our discussion we use the module system of Ciao Prolog. This is both for concreteness and because Ciao Prolog is a second-generation Prolog system which has been designed with global analysis and specialization in mind, and which has a strict module system. The aim of this work is not to provide a theoretical basis on modular analysis and specialization, but rather to discuss some interesting practical issues.The authors would like to thank Francisco Bueno for many interesting discussions on analysis of modular programs, and the anonymous referees for their constructive comments. This work was funded in part by Spanish CICYT projects TIC99-1151 EDIPIA and TIC97-1640-CE.  相似文献   

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

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