一种出具证明编译器中的汇编级断言和证明生成的方法
- 格式:pdf
- 大小:342.69 KB
- 文档页数:6
汇编代码验证中的形式规范自动生成
葛琳;陈意云;华保健;李兆鹏;刘诚
【期刊名称】《小型微型计算机系统》
【年(卷),期】2008(29)7
【摘要】与传统的高级语言程序验证相比,汇编代码验证中所需要的形式规范往往比较复杂,通常的做法是要求程序员手写形式规范,或是牺牲形式规范的表达能力以期能够自动生成规范.本文提出一种能够自动生成形式规范的方法,该方法依托一个出具证明的编译器自动生成汇编级形式规范,从而减轻程序员的负担.使用该方法生成的规范比现有的其他方法自动生成的规范具有更强的表达能力.文章主要描述该方法在出具证明编译器中的实现.
【总页数】6页(P1219-1224)
【作者】葛琳;陈意云;华保健;李兆鹏;刘诚
【作者单位】中国科学技术大学,计算机科学技术系,安徽,合肥,230027;中国科学技术大学,计算机科学技术系,安徽,合肥,230027;中国科学技术大学,计算机科学技术系,安徽,合肥,230027;中国科学技术大学,计算机科学技术系,安徽,合肥,230027;中国科学技术大学,计算机科学技术系,安徽,合肥,230027
【正文语种】中文
【中图分类】TP301.2
【相关文献】
1.通过分析代码覆盖提高功能覆盖率的验证输入自动生成方法 [J], 傅亮;卢鼎;张志敏;孙愿
2.基于XML的代码自动生成技术在软件开发中的应用 [J], 武建亮;辛长平;杨宁
3.代码自动生成技术在实验教学中的应用 [J], 张磊
4.DSP应用程序中C代码和汇编代码的结合 [J], Eran Balaish
5.DSP应用程序中C代码和汇编代码的结合 [J], Eran Balaish
因版权原因,仅展示原文概要,查看原文内容请购买。
csc语言证明模板CSC语言证明模板一、证明的目的和意义CSC语言证明是指对于一种编程语言,通过一定的测试和评估,对该编程语言的功能、性能、安全性等方面进行验证和证明。
其目的在于确保该编程语言在实际应用中具有良好的稳定性、可靠性和可维护性,为开发者提供更加优秀的编程工具。
二、证明流程和方法1. 需求分析:根据用户需求,确定需要测试和评估的功能点。
2. 测试设计:根据需求分析结果,设计相应的测试用例,并制定测试计划。
3. 测试执行:按照测试计划执行测试用例,并记录测试结果。
4. 测试报告:根据测试结果生成详细的测试报告,包括各项指标数据及结论分析。
5. 评估分析:对测试结果进行评估分析,确定该编程语言是否达到要求标准。
6. 证明结论:根据评估分析结果得出结论,给出该编程语言是否通过CSC语言证明。
三、证明内容1. 功能验证:验证该编程语言是否能够满足用户需求,并且能够稳定运行。
例如,在开发Web应用程序时,需要验证该编程语言是否支持网络编程、数据库操作等功能。
2. 性能评估:评估该编程语言的运行速度、内存占用等性能指标,确保其在实际应用中具有良好的性能表现。
3. 安全性检测:检测该编程语言是否存在安全漏洞,并提供相应的解决方案,确保其在实际应用中不会被黑客攻击。
4. 可维护性评估:评估该编程语言的可维护性,包括代码风格、注释规范等方面,确保开发者可以轻松地进行代码维护和升级。
四、证明标准CSC语言证明需要满足一定的标准,以确保证明结果具有可信度和权威性。
以下是一些常见的CSC语言证明标准:1. ISO/IEC 9899:2018 C Programming Language Standard2. MISRA C:2004 Guidelines for the use of the C language in critical systems3. CERT C Secure Coding Standard4. CWE/SANS Top 25 Most Dangerous Software Errors5. Common Weakness Enumeration (CWE)五、总结CSC语言证明是对编程语言进行验证和证明的过程,其目的在于确保该编程语言具有良好的稳定性、可靠性和可维护性。
编译程序生成的常用方法一、预处理预处理是编译程序生成的第一步,它主要处理源代码中的宏定义、条件编译和包含其他文件等预处理指令。
预处理器根据这些指令对源代码进行处理,并生成一个修改后的源代码文件。
预处理的主要目的是为了提高代码的可读性和可维护性,同时也为后续的编译过程做好准备。
二、编译编译是编译程序生成的第二步,它将预处理后的源代码文件转化为汇编代码。
编译器会对源代码进行语法和语义检查,并将其转化为中间代码。
编译的主要目的是将高级语言转化为机器语言,使得计算机能够理解和执行源代码。
三、汇编汇编是编译程序生成的第三步,它将编译器生成的中间代码转化为机器码。
汇编器会将中间代码转化为与特定计算机体系结构相关的机器指令。
汇编的主要目的是将中间代码转化为可执行的机器指令,使得计算机能够执行程序。
四、链接链接是编译程序生成的最后一步,它将汇编生成的目标文件和一些库文件进行链接,生成最终的可执行文件。
链接器会解析目标文件中的符号引用,并将其与定义进行匹配,最终生成可执行文件。
链接的主要目的是将各个目标文件和库文件进行整合,使得程序能够正确地执行。
编译程序生成的常用方法不仅包括以上四个步骤,还包括一些辅助工具和技术。
下面将介绍一些常用的编译程序生成方法。
1. 优化编译优化编译是编译程序生成的一个重要方法。
通过对源代码进行优化,可以提高程序的执行效率和运行速度。
优化编译主要包括代码优化、内存优化和算法优化等方面。
2. 调试调试是编译程序生成的另一个常用方法。
调试工具可以帮助开发人员在程序运行过程中发现和修复错误。
调试技术包括断点调试、单步执行、变量跟踪等。
3. 静态分析静态分析是编译程序生成的一种重要方法。
静态分析工具可以对源代码进行静态检查,发现潜在的错误和漏洞。
静态分析可以帮助开发人员提前发现和解决问题,提高代码的质量和可靠性。
4. 动态链接动态链接是编译程序生成的一种常用方法。
通过动态链接,可以将程序的某些部分在运行时进行链接,而不是在编译时进行链接。
专利名称:软件函数形式语义及形式化证明脚本自动生成方法专利类型:发明专利
发明人:黄皓
申请号:CN202110114974.2
申请日:20210127
公开号:CN112817599A
公开日:
20210518
专利内容由知识产权出版社提供
摘要:本发明公开了一种软件函数形式语义及形式化证明脚本自动生成方法,包括:对汇编指令执行后的新系统状态进行构建,使经过指令执行后的新系统状态的每个状态分量均由初始系统状态的状态分量表示;构建所有汇编指令的形式语义函数库;记录在构建被改变状态分量值的表达式树用到的指令语义函数和子路径语义函数,以及表达式化简中用到的化简规则和子路径语义证明定理,自动生成指令执行后新状态的形式语义和相应的形式化证明脚本。
本发明能够对输入的微内核操作系统中的一个函数生成汇编代码、生成该汇编代码对应的若干条执行路径信息、对每条执行路径生成相应的形式语义和形式化证明脚本,最终生成自动生成函数的形式语义和形式化证明脚本。
申请人:南京大学
地址:210093 江苏省南京市鼓楼区汉口路22号
国籍:CN
代理机构:南京钟山专利代理有限公司
代理人:陈月菊
更多信息请下载全文后查看。
专利名称:一种C编译器自动化测试的方法专利类型:发明专利
发明人:裴远红,刘勇,陈元丰,龙宣佑
申请号:CN201710412800.8
申请日:20170605
公开号:CN107329889A
公开日:
20171107
专利内容由知识产权出版社提供
摘要:本发明公开了一种C编译器自动化测试的方法,该方法在C源文件中嵌入汇编,通过C编译器、汇编器、链接器编译得到的HEX文件后,结合下位机硬件仿真器来验证预期的结果,从而达到验证CSCC编译器的目的。
本发明实现C编译器快速自动化测试,同时结合整个IDE的开发环境,也间接测试了整个C编译器工具链的正确性,解决C编译器手动编译、进入仿真设置繁琐的、操作速度慢等问题。
申请人:芯海科技(深圳)股份有限公司
地址:518067 广东省深圳市南山区南海大道1079号花园城数码大厦A座901A号
国籍:CN
代理机构:深圳市神州联合知识产权代理事务所(普通合伙)
代理人:周松强
更多信息请下载全文后查看。
专利名称:一种多层级的汇编代码片段解析方法、系统及装置专利类型:发明专利
发明人:葛天傲,莫泽威,张献伟
申请号:CN202111551667.7
申请日:20211217
公开号:CN114217850A
公开日:
20220322
专利内容由知识产权出版社提供
摘要:本发明公开了一种多层级的汇编代码片段解析修改方法、系统及装置,该方法包括:获取汇编文件并根据汇编文件读取汇编代码;将汇编代码转换为中间格式表示并按序连接,得到线性链表;对线性链表进行分析,得到不同层次的代码信息。
该系统包括:读取模块、连接模块和分析模块。
该装置包括存储器以及用于执行上述多层级的汇编代码片段解析修改方法的处理器。
通过使用本发明,能够可以分析汇编代码的不同层次信息,并根据用户需要替换对应层次的汇编代码。
本发明作为一种多层级的汇编代码片段解析修改修改方法、系统及装置,可广泛应用于及计算机信息处理技术领域。
申请人:中山大学
地址:510275 广东省广州市海珠区新港西路135号
国籍:CN
代理机构:深圳市创富知识产权代理有限公司
代理人:高冰
更多信息请下载全文后查看。
专利名称:一种基于声明式的代码生成编译执行方法专利类型:发明专利
发明人:黄涛,谭敏锋,王文友,魏俊华,刘意川
申请号:CN202210061795.1
申请日:20220119
公开号:CN114461206A
公开日:
20220510
专利内容由知识产权出版社提供
摘要:本发明公开了一种基于声明式的代码生成编译执行方法,本发明提供了一种声明机制,使开发人员能够按照代码生成项目具体的业务将整个工程拆分为不同的代码生成模块独立进行开发,各模块可以共享代码生成元数据但互不影响。
同时还提供了代码装饰机制,在不影响原有代码模板逻辑的情况下可以增加新的功能。
良好的适应了大型的复杂工程代码生成迭代开发的需求。
通过以上两种与现有技术相比显著的优点,将代码生成开发创新性的与应用按需求迭代开发充分的结合到了一起。
开发人员的代码生成开发过程实际上就是需求变更的过程,模板引擎本身的执行变得几乎透明。
申请人:北京致远互联软件股份有限公司
地址:100089 北京市海淀区北坞村路甲25号静芯园N座
国籍:CN
更多信息请下载全文后查看。
程序断言的半自动生成及证明逻辑
何锫;康立山
【期刊名称】《计算机工程与应用》
【年(卷),期】2008(44)14
【摘要】如何生成程序断言对于软件验证十分重要.传统方法要求既要对程序结构有深入地把握又要做繁复的Hoare三元式推演工作.为了摆脱这些琐碎事宜,将致力于探讨一种半自动的断言生成方法.为便于理解,讨论主要以XYZ/VERI系统为论述背景.XYZ/VERI系统是一面向时序逻辑程序语言如XYZ/SE的类Hoare逻辑交互式验证系统.该工作一定意义上完善了其验证功能.
【总页数】4页(P18-20,30)
【作者】何锫;康立山
【作者单位】武汉大学,软件工程国家重点实验室,武汉,430072;武汉大学,软件工程国家重点实验室,武汉,430072
【正文语种】中文
【中图分类】TP301.6
【相关文献】
1.逻辑程序并行解释的断言流模型 [J], 鲁汉榕
2.一个半自动生成Ada程序的软件开发环境GFKD—AUTO [J], 陈火旺;殷建平
3.启发式方法生成命题逻辑可读证明 [J], 郭远华
4.论"证明性消费"及其生成逻辑 [J], 盛德荣
5.分离逻辑断言的Coq证明策略 [J], 雷斯然; 程梦奇; 江建国
因版权原因,仅展示原文概要,查看原文内容请购买。
面向断言的测试数据生成方法及其应用
徐中伟;李海波
【期刊名称】《同济大学学报(自然科学版)》
【年(卷),期】2007(035)005
【摘要】提出了一种利用断言产生测试用例的白箱测试方法.该方法首先选定程序中某条语句作为目标节点,通过在目标节点的临界分支和必要分支上插入断言来限制和跟踪程序的执行,以保证程序能到达目标节点,从而生成相关测试数据.利用这种测试数据生成方法,对轨道交通列车自动监控系统软件(ATS)的部分功能模块进行单元测试,并给出测试结果.
【总页数】5页(P659-663)
【作者】徐中伟;李海波
【作者单位】同济大学,信息与通信工程系,上海,200092;同济大学,信息与通信工程系,上海,200092
【正文语种】中文
【中图分类】TP311.5
【相关文献】
1.一种改进的面向对象程序测试数据生成方法 [J], 李刚;于磊;侯韶凡;张兴隆
2.基于面向对象技术的实时软件可靠性测试数据生成方法研究 [J], 陈雪松;陆民燕;阮镰
3.面向多路径覆盖的测试数据生成方法 [J], 常瑞花;慕晓冬;沈晓卫;李琳琳
4.基于克隆选择算法的面向程序路径测试数据生成方法 [J], 郑钧泽;徐晓峰;郭东辉
5.面向SCOTEM模型的软件测试数据生成方法研究 [J], 王晓刚
因版权原因,仅展示原文概要,查看原文内容请购买。