如何在jmp脚本中将32位二进制数据转换为十进制你好
我有几组32位二进制数据,为了进行数学计算,我希望将其转换为Decimal。
可以是任何随机的32位二进制数据。
到目前为止,我已经尝试了这些:
1.公式(基本(“ 32位二进制数据”,2))
2. BLOB
3.十六进制到十进制(Char到十六进制(“ 32位二进制数据”))
32位二进制数据:
00000000000110001101011111110111000
00000000000111010000000001110100
00000000000111011001001000100000
00000000000110011001010111101000
00000000000111110001111110110101
00000000000110011110000101110000
00000000000111001000111010001000
00000000000111001000110010100000
00000000000110110111000001011110
00000000000111011101100101010000
00000000000110101100110100110100
00000000000110110011100100001011
00000000000111100111010111100110
00000000001000001111101010110100
00000000000111010010000011101111
00000000000110111110010010001000
00000000000111011011100111100100
00000000000110111010111001101100
00000000000111000111110001001100
分析工具数据表其他脚本编写回复:如何在jmp脚本中将32位二进制数据转换为十进制请阅读此内容,JMP15具有此类转换的内置功能
https://community.jmp.com/t5/JMPer-Cable/All-your-base-are-belong-to-us-in-JSL/ba-p/227367
回复:如何在jmp脚本中将32位二进制数据转换为十进制我没有安装JMP15版本。 当前正在使用JMP 11 Pro。 因此,无法应用此语法。 我也尝试过这些语法回复:如何在jmp脚本中将32位二进制数据转换为十进制我已经写了一个快速脚本,您可以将其修改为一个函数:
a = "00000000000110001101011110111000";
sum = 0;
for(i = 1, i<= 32, i++,
sum = sum + num(substr(a, 33-i, 1))*2^(i-1);
);
回复:如何在jmp脚本中将32位二进制数据转换为十进制@通乐提供了非常不错的JSL。您对列公式的修改是导致此问题的原因。试试这个公式。该代码更加通用,并且强制“ sum”变量成为公式中执行的最后一项,即返回公式所处理的行的值
sum = 0;
end = Length( :Name("1F1") );
For( i = 1, i <= end, i++,
sum = sum + Num( Substr( :Name("1F1") , (end + 1) - i, 1 ) ) * 2 ^ (i - 1)
);
sum;