摘要
本发明提供了一种应用于X86程序的二进制翻译系统,用于将遵循X86语义的源程序翻译为遵循其它语义的目标程序,所述系统包括:数据获取模块,用于获取源程序;反汇编模块,用于将源程序划分为多个基本块,并分析每个基本块对应的后继基本块;后向数据流分析模块,用于按照从后往前的顺序依次分析每一个基本块中每一条指令,以获取源程序中每一条指令对应的目标定义集和目标后续使用集;翻译模块,用于消除翻译中产生的通用寄存器的高位清零或高位保留的冗余指令。本发明的技术方案通过后向数据流分析模块分析源程序每条指令对应的通用寄存器的寄存器状态以消除翻译过程中产生的冗余指令。
技术关键词
源程序
指令
分析模块
语义
翻译系统
定义
二进制翻译方法
数据获取模块
冗余
状态更新
处理器
可读存储介质
电子设备
关系
存储器
计算机
序列