【技术实现步骤摘要】
汇编程序处理方法及相关装置
本申请涉及电子设备
,具体涉及一种汇编程序处理方法及相关装置。
技术介绍
汇编器技术方案基本都是将指令集格式固化在汇编器源码中。当指令集需要改动时候,需要在代码中更新指令集,然后重新编译汇编器,这使得汇编器的开发需要软件工程师和芯片前端工程师协同工作,芯片前端工程师需要及时将指令集的更新告知软件工程师,且软件工程师需要将指令集更新到代码中去,整个流程需要传递的过程较长,增加了汇编器出风险的可能性。
技术实现思路
本申请实施例提供了一种汇编程序处理方法及相关装置,以期提高电子设备解析汇编程序的稳定性和准确度。第一方面,本申请实施例提供一种汇编程序处理方法,应用于电子设备,所述电子设备设置有汇编器源码和指令集描述文件,所述汇编器源码存储于所述电子设备的第一存储空间,所述指令集描述文件存储于所述电子设备的第二存储空间,所述第一存储空间和所述第二存储空间不同,所述指令集描述文件包括指令集,且所述第二存储空间支持文件更新和调用;所述方法包括:在检测到针对第一汇编程序的解析请求时,处理所述第一汇编程序得到第一汇编元素序列,所述第一汇编元素序列包括多个汇编元素,所述多个汇编元素包括操作码和操作数;检测所述第一汇编程序是否正确;若检测出所述第一汇编程序正确,则调用所述指令集描述文件的所述指令集,并解析所述第一汇编元素序列中的汇编元素,得到所述第一汇编程序对应的第一机器码;执行所述第一机器码。第二方面,本申请实施例提供一种汇编程序处理装置,应用于电子设备,所述电子设备设置有汇编器源码和指令集描述文件,所述汇编器源码存储于所述电子设备的第一存储空 ...
【技术保护点】
1.一种汇编程序处理方法,其特征在于,应用于电子设备,所述电子设备设置有汇编器源码和指令集描述文件,所述汇编器源码存储于所述电子设备的第一存储空间,所述指令集描述文件存储于所述电子设备的第二存储空间,所述第一存储空间和所述第二存储空间不同,所述指令集描述文件包括指令集,且所述第二存储空间支持文件更新和调用;所述方法包括:在检测到针对第一汇编程序的解析请求时,处理所述第一汇编程序得到第一汇编元素序列,所述第一汇编元素序列包括多个汇编元素,所述多个汇编元素包括操作码和操作数;检测所述第一汇编程序是否正确;若检测出所述第一汇编程序正确,则调用所述指令集描述文件的所述指令集,并解析所述第一汇编元素序列中的汇编元素,得到所述第一汇编程序对应的第一机器码;执行所述第一机器码。
【技术特征摘要】
1.一种汇编程序处理方法,其特征在于,应用于电子设备,所述电子设备设置有汇编器源码和指令集描述文件,所述汇编器源码存储于所述电子设备的第一存储空间,所述指令集描述文件存储于所述电子设备的第二存储空间,所述第一存储空间和所述第二存储空间不同,所述指令集描述文件包括指令集,且所述第二存储空间支持文件更新和调用;所述方法包括:在检测到针对第一汇编程序的解析请求时,处理所述第一汇编程序得到第一汇编元素序列,所述第一汇编元素序列包括多个汇编元素,所述多个汇编元素包括操作码和操作数;检测所述第一汇编程序是否正确;若检测出所述第一汇编程序正确,则调用所述指令集描述文件的所述指令集,并解析所述第一汇编元素序列中的汇编元素,得到所述第一汇编程序对应的第一机器码;执行所述第一机器码。2.根据权利要求1所述的方法,其特征在于,所述调用所述指令集描述文件的所述指令集,并解析所述第一汇编元素序列中的汇编元素,得到所述第一汇编程序对应的第一机器码,包括:根据所述第一汇编元素序列的操作码查询所述指令集描述文件的所述指令集,得到所述操作码对应的第一指令子集,所述第一指令子集包含支持动态更新的指令格式,所述指令格式包括指令功能func参数和所述指令功能参数所对应的机器码的二进制区间;检测所述第一指令子集的指令缩写的描述内容;若检测到所述指令缩写的描述内容为预设缩写标识序列中的第一缩写标识,则根据所述第一缩写标识在所述预设缩写标识序列中的排序,解析所述指令缩写并将解析结果填入所述指令功能参数对应的原始机器码的二进制区间;逐个解析所述第一汇编元素序列的操作数,并将每个操作数的解析结果填入对应的所述原始机器码的二进制区间,得到第一机器码。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:若检测到所述指令缩写的描述内容为无,则逐个解析所述第一汇编元素序列的操作数,并将每个操作数的解析结果填入对应的原始机器码的二进制区间,得到第一机器码。4.根据权利要求2或3所述的方法,其特征在于,所述逐个解析所述第一汇编元素序列的操作数,并将每个操作数的解析结果填入对应的所述原始机器码的二进制区间,得到第一机器码,包括:检测所述第一汇编元素序列的每个操作数的类型;若检测到所述每个操作数的类型为寄存器,则解析所述每个操作数的所代表的二进制数值,并根据指令子集中的指令参数与操作数之间的映射关系将所述二进制数值填入所述每个操作数对应的原始机器码的二进制区间。5.根据权利要求4所述的方法,其特征在于,所述方法还包括:若检测到所述每个操作数的类型为立即数,则从所述第一汇编元素序列中找到需要填入立即数的一个或多个目标指令参...
【专利技术属性】
技术研发人员:方攀,陈岩,
申请(专利权)人:OPPO广东移动通信有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。