计算机如何区分存储器中存储的信息是数据还是程序?

希望从地址来源和去向两方面回答。

广义讲,程序也是数据。对于计算机来讲,存储器中存储的都是数据,只是人们的把某些特定的数据让计算机在特定的状态下运行,就是程序。也就是说运行状态的就是程序,非运行状态的就是数据。

在计算机内部,信息都是釆用二进制的形式进行存储运算处理和传输的。信息存储单位有位、字节和字等几种。各种存储设备存储容量单位有KB、MB、GB和TB等几种。



扩展资料

为提高存储器的性能,通常把各种不同存储容量、存取速度和价格的存储器按层次结构组成多层存储器,并通过管理软件和辅助硬件有机组合成统一的整体,使所存放的程序和数据按层次分布在各存储器中。

主要采用三级层次结构来构成存储系统,由高速缓冲存储器Cache、主存储器和辅助存储器组成。图中自上向下容量逐渐增大,速度逐级降低,成本则逐次减少。

一个较大的存储系统由各种不同类型的存储设备构成,形成具有多级层次结构的存储系统。该系统既有与CPU相近的速度,又有极大的容量,而价格又是较低的。可见,采用多级层次结构的存储器系统可有效地解决存储器的速度、容量和价格之间的矛盾。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-01-05
在存储器中不区分,按照指令周期中的阶段,比如取指周期、访存周期中要访问的地址来区分
第2个回答  推荐于2017-09-21
其实在内存中数据与程序都是用二进制数据表示,说白了就是0,1序列。但计算机是如何知道哪段是程序,哪段是数据的呢?这与CPU中的cs:ip有关,当你定义了哪段内存为cs,则这段就为代码段。如果定义了ds,哪么这段就为数据段。一段内存,可以既是代码的存储空间,又是数据的存储空间,除些之外,还可以是栈空间,也可以什么也不是。关键是CPU中寄存器的设置,即cs,ip,ss,sp,ds的指向。
cs:代码段
ip:指令指针 CPU总是取cs:ip所指处的指令
ss:栈段
sp:栈指针 sp始终指向栈顶。本回答被提问者采纳
第3个回答  2011-01-05
广义讲,程序也是数据;
如果你一定要狭义上说,就是以EXE为后缀名的是程序。本回答被网友采纳
第4个回答  2011-01-05
查看详细信息中的文件类型就知道了