我想将十六进制数字从带符号2的补码转换为十进制,如下所示:FFOC-> -64。我正在使用Java。我已经知道如何从十六进制转换为十进制和二进制,但是不转换为带符号2。 预先感谢。
答案 0 :(得分:0)
好,我找到了解决方法:
String ss = new BigInteger(rssi, 16).toString(2);
String aux = ss.substring(8);
int res;
if(aux.charAt(0)=='0'){
res = Integer.parseInt(aux,2);
}
else{
String g = aux.substring(1);
res = Integer.parseInt(g, 2) * (-1);
}