当前位置: 技术问答>linux和unix
一个比较低级的问题,关于文件存储与显示的,请高手解答
来源: 互联网 发布时间:2015-11-29
本文导语: 一个比较低级的问题,关于文件内容存储与显示的(我是学习电子的,所以提出此问题),请高手解答: 个人觉得: 硬盘上的文件应该都是二进制的,至少内存上的那些指令阿,数据阿,或者说就是内核本身 在...
一个比较低级的问题,关于文件内容存储与显示的(我是学习电子的,所以提出此问题),请高手解答:
个人觉得:
硬盘上的文件应该都是二进制的,至少内存上的那些指令阿,数据阿,或者说就是内核本身
在内存中其实也都是二进制的吧?(物理机器应该只存储0和1)
假如我的看法是正确的(所有数据对于物理机器都是0或者1的组合体),但是,如果用户程序读取一个文件,如open -->fgets,显示在屏幕上的内容是以用户可理解的形式出现的。
我不明白的是:从硬盘里读出的应该是0 1组合体,内核应该没有对这些0 1代表什么意思作解释的。 但这一步是谁来作解释呢,难道是fgets函数?还是显示器的驱动程序知道它显示的0 1组合体表示的是什么?
头晕了!
个人觉得:
硬盘上的文件应该都是二进制的,至少内存上的那些指令阿,数据阿,或者说就是内核本身
在内存中其实也都是二进制的吧?(物理机器应该只存储0和1)
假如我的看法是正确的(所有数据对于物理机器都是0或者1的组合体),但是,如果用户程序读取一个文件,如open -->fgets,显示在屏幕上的内容是以用户可理解的形式出现的。
我不明白的是:从硬盘里读出的应该是0 1组合体,内核应该没有对这些0 1代表什么意思作解释的。 但这一步是谁来作解释呢,难道是fgets函数?还是显示器的驱动程序知道它显示的0 1组合体表示的是什么?
头晕了!
|
说说我的看法,不对之处请大家批评:CPU、MM、硬盘之间通讯使用的是0、1代码组成的信号或数据,所以在硬件内部交流使用的都是0、1组成的。CPU发送给显示器的信号仍然是由0、1组成的,只有在要输出终端的时候才转换成用户可理解的,最终由显示器根据相应的信号来显示。