介绍“十六进制数字符串至数值转换”函数
扫描二维码
随时随地手机看文章
该节点位于函数/字符串/“字符串/数值转换”下,功能是把输入的字符串(ASCII)通过十六进制数字再转换成数值(10进制)。
有几点需要注意:
1:虽然该函数的输入端子“string”的值可以是十六进制数、字符串(ASCII)或其他进制数,但是“string”的值流入该函数中时,先转换成字符串(ASCII)。例如,当“string”(Hex display)值为62,因此,流入函数时,该值转为b(ASCII),但是,如果“string”流入该函数前就是字符串(ASCII),比如直接流入a,则上述的转换过程就可以避免。
2:在函数中,字符串(ASCII)被当成十六进制处理,最后输出的数值就是这个十六进制数对应的十进制数。例如字符串(ASCII)为a,由ASCII编码表可知十六进制“a”对应的十进制是10,所以通过这个转换函数后,最后得到的数值为10。如果字符串(ASCII)为aa,被当成十六进制数(对应的二进制为10101010)处理再进行十进制换算,最后得到的数值为170。
如图1所示,当输入端子“string”(Normal display)的值为f3g(g是一个无效值,因此f3g相当f3)时,作为十六进制数,其二进制刚好是11110011,换算成10进制输出就是243(10进制)。
3:字符串(ASCII)的每个字符都在为0~9,A~F,a~f范围内,如果超出这个范围,就是一个无效值,最后返回的数值是0(见图1)。
4:如果该函数输入端子“string”接的是一个十六进制字符串,那么这个十六进制字符串先转换成字符串(ASCII),然后作为十六进制数,之后转换为相应的十进制数输出,图2为例子说明。
图2
结论:
最好让输入端子“string”接一个字符串(ASCII),这样可以省去一个其他进制数再往字符串(ASCII)转换过程。