0
我正在做关于恶意软件特征提取的工作。我想翻译汇编指令,丢弃操作数并用一个唯一编号(比如指令ID)编码每个操作符。如何使用Java Parser翻译汇编指令?
我想输出是这样的: 指令序列:240→33→386→240
我正在做关于恶意软件特征提取的工作。我想翻译汇编指令,丢弃操作数并用一个唯一编号(比如指令ID)编码每个操作符。如何使用Java Parser翻译汇编指令?
我想输出是这样的: 指令序列:240→33→386→240
是这样的::
public static Map<Integer, String> LOOK_UP = new HashMap<>();
static {
LOOK_UP.put(240, "MOV");
...
}
public static String InstructionToString(Integer i) {
if(LOOK_UP.contains(i)) {
return LOOK_UP.get(i);
} else {
//return error of some kinde
}
}
public static List<String> InstructionsToString(Integer[] arrayOfInst) {
List<String> ret = new LinkedList<>();
for(int i : arrayOfInst) {
ret.add(InstructionToString(i));
}
return ret;
}
(I” MOV→CALL→SUB→MOV 指令的IDS没有检查代码的语法)
听起来像你需要一个'Map <>', – bradimus
你可以使用Map来查找数字并返回文本 – TungstenX