我们知道计算机是用二进制来做运算处理的,所以所有存储在计算机里面的东西都是二进制的。
我也知道这句话,但为什么总是听到别人说”二进制“文件和”文本“文件呢? 按照上面那句话来说计算机里面的都应该是二进制的啊!
底层存储的都是二进制的”数据“,而不是二进制的文件。
列举一个二进制文件如下:
00000000h:0F 01 00 00 0F 03 00 00 12 53 21 45 58 62 35 34; .........S!EXb54
00000010h:41 42 43 44 45 46 47 48 49 47 4B 4C 4D 4E 4F 50; ABCDEFGHIGKLMNOP
以前我看到这个二进制文件的时候我彻底的迷茫了,二进制不是应该像下面列出的样子吗?
而在底层存放的二进制数据应该是这样的:
00000000 00000001 10001010 11011101
硬盘里面存放的应该都属于”数据“范畴。我们平时说的这个文件那个文件是站在操作系统层面上的。
下面我们再解释一下二进制文件和文本文件的区别:
将文件看作是由一个一个字节(byte)组成的,那么文本文件中的每个字节的最高位都是0,也就是说文本文件使用了一个字节中的七位来表示所有的信息,而二进制文件则是将字节中的所有位都用上了。这就是两者的区别。文件按照文本方式或者二进制方式打开,两者会有什么不同呢?其实不管是二进制文件也好,还是文本文件也好,都是一连串的0和1,但是打开方式不同,对于这些0和1的处理也就不同。如果按照文本方式打开,在打开的时候会进行translate,将每个字节转换成ASCII码,而以按照二进制方式打开的话,则不会进行任何的translate;最后就是文本文件和二进制文件在编辑的时候,使用的方式也是不同的。譬如,你在记事本中进行文本编辑的时候,你进行编辑的最小单位是字节(byte);而对二进制文件进行编辑的话,最小单位则是位(bit),当然我们都不会直接通过手工的方式对二进制文件进行编辑了。
通过以上的描述我们应该知道二进制文件是什么意思了吧!
以上内容均是个人理解总结,如有不对的地方请指出。