寄存器调用及调用指令编码的方法、装置与流程

文档序号:12362714阅读:来源:国知局

技术特征:

1.一种寄存器调用指令编码的方法,其特征在于,所述方法包括以下步骤:

判断需要保存的寄存器的数量,并得到所述需要保存的寄存器的第一数量值;

将所述第一数量值写入到寄存器调用的初始指令中,并编码生成寄存器调用指令。

2.根据权利要求1所述的寄存器调用指令编码的方法,其特征在于,所述寄存器调用指令包括操作码部分和内容部分;

所述初始指令中包括与所述操作码部分相对应的部分以及与所述内容部分相对应的部分;

所述将所述第一数量值写入到寄存器调用的初始指令中,包括将所述第一数量值写入到所述寄存器调用的初始指令中与所述内容部分相对应的部分中,以使所述第一数量值最终在所述寄存器调用指令的内容部分中。

3.根据权利要求1所述的寄存器调用指令编码的方法,其特征在于,所述方法还包括获取处理器中可用寄存器的数量的步骤;

且所述判断需要保存的寄存器的数量,并得到需要保存的寄存器的第一数量值之后,还包括以下步骤:

判断所述第一数量值是否小于或者等于所述可用寄存器的数量;若是,则继续执行所述将所述第一数量值写入到寄存器调用的初始指令中,并编码生成寄存器调用指令的步骤;若否,则将所述可用寄存器的数量写入到所述寄存器调用的初始指令中,并编码生成寄存器调用指令,或者发出内存不足报警。

4.一种寄存器调用指令编码的装置,其特征在于,所述装置包括:

保存寄存器数量获取模块,用于判断需要保存的寄存器的数量,并得到需要保存的寄存器的第一数量值;

第一编码模块,用于将所述第一数量值写入到寄存器调用的初始指令中,并编码生成寄存器调用指令。

5.根据权利要求4所述的寄存器调用指令编码的装置,其特征在于,所述装置还包括:

可用寄存器的数量获取模块,用于获取处理器中可用寄存器的数量;

数量判断模块,用于在所述保存寄存器数量获取模块获取到需要保存的寄存器的第一数量值后,判断所述第一数量值是否小于或者等于所述可用寄存器的数量;若是,则继续执行所述第一编码模块;若否,则执行第二编码模块或者报警模块;

所述第二编码模块,用于将所述可用寄存器的数量写入到所述寄存器调用的初始指令中,并编码生成寄存器调用指令;

所述报警模块,用于发出内存不足报警。

6.一种寄存器调用的方法,其特征在于,所述方法包括以下步骤:

接收寄存器调用指令;

解析所述寄存器调用指令,并得到所述寄存器调用指令中包含的需要保存的寄存器的第一数量值;

根据处理器中预设的寄存器保存的入口点及所述处理器中寄存器的保存顺序,从所述入口点开始按照所述保存顺序依次保存第一数量值个数的寄存器到堆栈中。

7.根据权利要求6所述的寄存器调用的方法,其特征在于,所述方法还包括以下步骤:

已经保存到堆栈中的寄存器使用完成后,释放所述堆栈中的所述第一数量值个数的寄存器。

8.根据权利要求6所述的寄存器调用的方法,其特征在于,当所述处理器中包含一个寄存器组时,所述保存顺序为所述处理器中寄存器标示从小到大的顺序,或者为所述寄存器标示从大到小的顺序,或者为根据所述寄存器标示预先设定的顺序,且所述根据所述寄存器标示预先设定的顺序与所述寄存器标示从大到小的顺序不同,所述根据所述寄存器标示预先设定的顺序与所述寄存器标示从小到大的顺序也不同。

9.根据权利要求6所述的寄存器调用的方法,其特征在于,当所述处理器中包含两个以上寄存器组时,将每个寄存器组中的寄存器按照寄存器标示从小到大排列或者从大到小排列,或者根据所述寄存器标示预先设定的顺序进行排列,再根据所述寄存器组的预设顺序按组对所述寄存器进行排列构成所述保护顺序。

10.一种寄存器调用的装置,其特征在于,所述装置包括:

指令接收模块,用于接收寄存器调用指令;

解析模块,用于解析所述寄存器调用指令,并得到所述寄存器调用指令中包含的需要保存的寄存器的第一数量值;

保存模块,用于根据处理器中预设的寄存器保存的入口点及所述处理器中寄存器的保存顺序,从所述入口点开始按照所述保存顺序依次保存第一数量值个数的寄存器到堆栈中。

11.根据权利要求10所述的寄存器调用的装置,其特征在于,所述装置还包括:

寄存器释放模块,用于已经保存到堆栈中的寄存器使用完成后,释放所述堆栈中的所述第一数量值个数的寄存器。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1