摘? 要 在计算机监控系统中,一般利用串行通信控件MSComm进行数据的传输,但是,该控件在传输二进制数字时容易出现问题。本文通过一系列的数据表示与转换函数,轻松地实现了利用该控件进行任意数据的收发,并且该技术还可以用来对中文短信进行编码与解码。这些函数是作者从事计算机监控工作近10年的总结,经过反复检验,可以直接应用于工程项目。 关键词 16进制,字节,ASCII码,Unicode码
引言
 在计算机监控系统的信息传输过程中,不同的模块或系统有可能会采用不同的数据表示方法,但是,无论是串行通信还是网络传输,最终的数据都是以字节为单位的。为了数据处理的方便,我们需要对数据进行变换。表1是字节0x41、0x39、0、0x0d的不同表示方法,后两个字节是不可见字符,所以用“-”表示。 通过将“16进制字节”转换为“16进制字符串”,可以将不可见的字符(串)变成可见的16进制字符串。特别地,在Visual Basic和C语言中,用NULL(即字节0)表示字符串的结尾,如果收到的数据中间部分有字节0,那么,后面的数据就会被截断。如果将收到的数据转换为16进制字符串,就可以充分利用Visual Basic丰富的字符串处理函数来分析处理数据。
ByteToTwoHexChars函数实现字节到16进制字符串的转换,例如,将字节0x3d转换为"3D"。其中的主要函数为Hex,输入小
..........................................(作者:马玉春)
|