[发明专利]一种汇编语言程序的开发方法和装置有效
申请号: | 201010208542.X | 申请日: | 2010-06-13 |
公开(公告)号: | CN101876916A | 公开(公告)日: | 2010-11-03 |
发明(设计)人: | 许健 | 申请(专利权)人: | 北京红旗胜利科技发展有限责任公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 100081 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 汇编语言 程序 开发 方法 装置 | ||
技术领域
本发明涉及程序开发技术领域,特别是涉及一种汇编语言程序的开发方法和装置。
背景技术
一条计算机指令通常由两个部分组成:操作码和操作数;其中,操作码可用来规定这条指令完成什么操作,如取数、做加法或输出数据等,操作数则表示这条指令所完成操作的对象,它可以是一个立即数,或者一个数据所在的地址等等。
汇编语言(Assembly Language)是面向机器的程序设计语言;在用汇编语言编写一条指令时,可以用助记符(Memoni)代替操作码,用地址符号(Symbol)代替操作数,故该指令可以有明显的标识,易于理解和记忆;而且,汇编语言程序经汇编生成的可执行文件简短,占用内存少,执行速度快,因而,汇编语言是高效的程序设计语言,在程序开发中起着重要的作用。
在一条指令的操作数用于表示数据所在的地址时,需要用到寄存器寻址,因而,在汇编语言程序中可能需要使用计算机中的各种寄存器,例如,8位寄存器、16为寄存器和32位寄存器等,而这些寄存器在汇编语言程序中通常是以特定的地址符号表示,例如所述地址符号可以为:AH、AL、BH、BL、CH、CL、DH和DL等;现有一种典型汇编语言程序的开发方法可以包括以下步骤:
步骤1、建立一个表格,用来记录时间与寄存器之间的关系,其中,该表格可以是脑中的印象,或者Excel表格;
步骤2、在编写一条指令时,如果需要使用到寄存器,则查询表格并根据约束条件选取寄存器(暂不考虑溢出),并在表格上做标识,以记录该寄存器的值需要保护;进一步,若该指令需要的寄存器的值不再需要保护,则在表格上取消掉对应寄存器的标识;
步骤3、表格切换到下一个时间,复制之前的寄存器标识情况,然后开始编写下一条指令。
可以看出,每编写一条指令,都需要确定寄存器的地址符号,使得开发人员受到严重的寄存器束缚,从而影响开发人员的工作效率。
总之,需要本领域技术人员迫切解决的一个技术问题就是:如何使得开发人员脱离寄存器的束缚,进而提高工作效率。
发明内容
本发明所要解决的技术问题是提供一种汇编语言程序的开发方法和装置,能够使得开发人员脱离寄存器的束缚,进而提高工作效率。
为了解决上述问题,本发明公开了一种汇编语言程序的开发方法,包括:
编写汇编语言程序,其中,使用自定义助记符代替需要用到的寄存器;
针对所述汇编语言程序的自定义助记符,为其分配寄存器;
根据分配结果,在所述汇编语言程序中将自定义助记符替换为相应的寄存器。
优选的,所述针对所述汇编语言程序的自定义助记符,为其分配寄存器的步骤包括:
针对当前处理器,配置寄存器参数和寄存器约束条件;
根据所述寄存器参数和寄存器约束条件,为所述自定义助记符分配寄存器。
优选的,所述寄存器约束条件包括:在函数调用及返回时需要保护和还原的寄存器集合,寄存器如何传递参数及返回值,以及指令可以使用的寄存器集合。
优选的,所述寄存器参数包括寄存器类型和数量。
本发明还公开了一种汇编语言程序的开发装置,包括:
编写模块,用于编写汇编语言程序,其中,使用自定义助记符代替需要用到的寄存器;
分配模块,用于针对所述汇编语言程序的自定义助记符,为其分配寄存器;
替换模块,用于根据分配结果,在所述汇编语言程序中将自定义助记符替换为相应的寄存器。
优选的,所述分配模块包括:
多个配置选项,用于展示当前处理器的寄存器参数和寄存器约束条件选项,供用户选择;
分配单元,用于根据用户选择结果,为所述自定义助记符分配寄存器。
优选的,所述寄存器约束条件包括:在函数调用及返回时需要保护和还原的寄存器集合,寄存器如何传递参数及返回值,以及指令可以使用的寄存器集合。
优选的,所述寄存器参数包括寄存器类型和数量。
与现有技术相比,本发明具有以下优点:
在编写汇编语言程序时,使用自定义助记符代替需要用到的寄存器,而在编写完成后,再针对所述自定义助记符分配寄存器,并根据分配结果,在所述汇编语言程序中将自定义助记符替换为相应的寄存器;因而,相对于现有技术,每编写一条指令,都需要确定意义不明的a0,al,a2,a3等特定的寄存器地址符号,本发明的自定义助记符可以具有丰富的意义,因而,可以在直观易懂的同时,使开发人员脱离寄存器的束缚,有利于提高汇编语言程序的开发效率;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京红旗胜利科技发展有限责任公司,未经北京红旗胜利科技发展有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010208542.X/2.html,转载请声明来源钻瓜专利网。