matlab中用fread读取示波器中存储的bin文件,输出数据结果为什么不是0,1组成的数而是十进制??

matlab中用fread读取示波器中存储的bin文件,输出数据结果为什么不是0,1组成的数而是十进制??

问题描述:

matlab中用fread读取示波器中存储的bin文件,输出数据结果为什么不是0,1组成的数而是十进制??

img

二进制文件是基于值编码的,不同的应用程序对二进制文件中的每个值会有不同的解读,
就像不同的编码(ASCII码,Unicode编码)对文本文件中的每一/多个字节有不同的解读。

*用记事本打开二进制文件出现乱码
由于二进制文件有其独立的编码解码规则,而这一规则通常是不同于文本文件的编码解码规则的,所以当我们用记事本打开二进制文件,也就是说,我们尝试用ASCII码的规则去解读二进制文件时,会出现乱码。因为:

同样的一串字符串 00000000 00000000 00000000 00000001 在二进制文件里可能想表达的是一个4字节的整数1,而误用ASCII码解码便会输出NUL NUL NUL SOH。
————————————————
版权声明:本文为CSDN博主「simmel_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接: