2017-08-02 103 views
0

二进制我有这个十六进制中的NodeJS TCP客户端的16进制数的NodeJS

82380000000000000400000000000000 

我已经使用parseInt函数功能,将其转换为

1.73090408076117e+38 

但我需要得到它的二进制表示是

10000010001110000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000 

我可以从上面的十六进制格式得到这个二进制表示吗?

回答

0

我已经使用下面的代码将十六进制映射到二进制字符串。

let x = '82380000000000000400000000000000' 

function toBin(hexaString) { 
    let mapping = { 
     '0': '0000', 
     '1': '0001', 
     '2': '0010', 
     '3': '0011', 
     '4': '0100', 
     '5': '0101', 
     '6': '0110', 
     '7': '0111', 
     '8': '1000', 
     '9': '1001', 
     'a': '1010', 
     'b': '1011', 
     'c': '1100', 
     'd': '1101', 
     'e': '1110', 
     'f': '1111', 
     'A': '1010', 
     'B': '1011', 
     'C': '1100', 
     'D': '1101', 
     'E': '1110', 
     'F': '1111', 
    } 
    let bitmaps = '' 
    for (let i = 0; i < hexaString.length; i++) { 
     bitmaps += mapping[hexaString[i]] 
    } 

    return bitmaps 
} 

console.log(toBin(x)) 

输出

10000010001110000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000