导航:首页 > 软件知识 > 计算机如何区分数据与程序

计算机如何区分数据与程序

发布时间:2023-01-12 16:14:38

A. 指令和数据都存于存储器中,计算机如何区分它们

通过不同时间段来区分指令和数据:即在取指令阶段取出的是指令,在执行指令阶段取出的是数据。

通过地址来源区分:由PC提供存储单元地址取出的是指令,由指令码部分提供存储单元地址取出的是操作数。

存储器注意事项

编程器要想正确使用,必须安装打印机驱动程序才行(以便打印端口输出指令信号),可以随便安装一个驱动,大容量存储器可代替小容量,小容量不可以代替大容量存储器。

对于AT,ST,BR公司的24系列存储器,在工作时,其7脚需接低电平。而KOA,KOR,KS公司的24系列存储器,其7脚需接高电平。否则不能存台。如遇到存储块出现只能读不能写的情况下,可改变7脚的电平试试(通过10K电阻接电源正极或直接接地)。

B. 在计算机中cpu如何区分指令和数据

在计算机中cpu通过运算器区分指令和数据,具体如下:

1、算术逻辑单元(ALU)。算术逻辑单元是指能实现多组 算术运算与逻辑运算的组合逻辑电路,其是中央处理中的重要组成部分。算术逻辑单元的运算主要是进行二位元算术运算,如加法、减法、乘法。

在运算过程中,算术逻辑单元主要是以计算机指令集中执行算术与逻辑操作,通常来说,ALU能够发挥直接读入读出的作用,具体体现在处理器控制器、内存及输入输出设备等方面,输入输出是建立在总线的基础上实施。输入指令包含一 个指令字,其中包括操作码、格式码等。

2、中间寄存器(IR)。其长度为 128 位,其通过操作数来决定实际长度。IR 在“进栈并取数”指令中发挥重要作用,在执行该指令过程中,将ACC的内容发送于IR,之后将操作数取到ACC,后将IR内容进栈。

3、运算累加器(ACC)。当前的寄存器一般都是单累加器,其长度为128位。对于ACC来说,可以将它看成可变长的累加器。在叙述指令过程中,ACC长度的表示一般都是将ACS的值作为依据,而ACS长度与 ACC 长度有着直接联系,ACS长度的加倍或减半也可以看作ACC长度加倍或减半。

4、描述字寄存器(DR)。其主要应用于存放与修改描述字中。DR的长度为64位,为了简化数据结构处理,使用描述字发挥重要作用。

5、B寄存器。其在指令的修改中发挥重要作用,B 寄存器长度为32位,在修改地址过程中能保存地址修改量,主存地址只能用描述字进行修改。指向数组中的第一个元素就是描述字, 因此,访问数组中的其它元素应当需要用修改量。

对于数组成来说,其是由大小一样的数据或者大小相同的元素组成的,且连续存储,常见的访问方式为向量描述字,因为向量描述字中的地址为字节地址,所以,在进行换算过程中,首先应当进行基本地址 的相加。对于换算工作来说,主要是由硬件自动实现,在这个过程中尤其要注意对齐,以免越出数组界限。

(2)计算机如何区分数据与程序扩展阅读:

cpu的工作原理:

取指令(IF,instruction fetch),即将一条指令从主存储器中取到指令寄存器的过程。程序计数器中的数值,用来指示当前指令在主存中的位置。当 一条指令被取出后,PC中的数值将根据指令字长度自动递增。

指令译码阶段(ID,instruction decode),取出指令后,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类 别以及各种获取操作数的方法。

执行指令阶段(EX,execute),具体实现指令的功能。CPU的不同部分被连接起来,以执行所需的操作。

访存取数阶段(MEM,memory),根据指令需要访问主存、读取操作数,CPU得到操作数在主存中的地址,并从主存中读取该操作数用于运算。部分指令不需要访问主存,则可以跳过该阶段。

结果写回阶段(WB,write back),作为最后一个阶段,结果写回阶段把执行指令阶段的运行结果数据“写回”到某种存储形式。

结果数据一般会被写到CPU的内部寄存器中,以便被后续的指令快速地存取;许多指令还会改变程序状态字寄存器中标志位的状态,这些标志位标识着不同的操作结果,可被用来影响程序的动作。

C. 如何区分指令和数据

问题一:计算机如何区分指令和数据? 计算机加载的第一条肯定是指令,然后根据这条指令去取二进制数,如果这条指令要取操作数,那么取出来的就是操作数;如果这条指令要取下一条指令,那么取出来得就是指令。
把指令和数据分开放是为了安全和逻辑结构清晰。
随便指令和数据存放的格式一样,但是访问他们的时机不同
在取指令时期,cpu通过指令流取指令,存放在指令寄存器,
然后解释并执行指令,在执行指令时期,cpu通过数据流取数据,
存放在数据寄存器。
所以指令流取的是指令,数据流取的是数据。

问题二:在计算机中cpu如何区分指令和数据 在存储程序的计算机中,指令和数据都以二进制的形式存储在存储器中。因为他们都是二进制的代码,所以从存储器中存储的内同本身看不出是指令还是数据。计算机在读取指令时把从存储器中读到的信息都看成指令,而在读取数据的时候则把从存储器里读到的信息都看成操作数。

问题三:指令和数据均存放在内存中,计算机如何区分它们是指令还是数据 楼主:
计算机区分指令和数据有以下2种方法:
?通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。
?通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。

问题四:cpu如何区别指令和数据 参考下别人的
分两个方面说:
1可执行文件的角度:可执行文件分为许多段,一般.text存放代码,.data段存放数据,不同段是有不同属性的,例如.text段的属性是可执行的。这样就区别了代码和数据。
亥.CPU指令有一个格式,一个指令包括了操作码(对应你的指令)和操作数(对应你的数据),而指令本身相对格式是固定的(可能变长)。所以CPU是很容易知道前几个二进制是什么指令,而根据这个指令又可以知道后面多少位是第一个数据,后面多少位是第二个数据。然后下一个指令的起始地址是直接存在IP寄存器里的。

问题五:cpu如何区别指令和数据,它们不都是二进制存储在计算机内么? 分两个方面说:
1可执行文件的角度:可执行文件分为许多段,一般.text存放代码,.data段存放数据,不同段是有不同属性的,例如.text段的属性是可执行的。这样就区别了代码和数据。
2.CPU指令有一个格式,一个指令包括了操作码(揣应你的指令)和操作数(对应你的数据),而指令本身相对格式是固定的(可能变长)。所以CPU是很容易知道前几个二进制是什么指令,而根据这个指令又可以知道后面多少位是第一个数据,后面多少位是第二个数据。然后下一个指令的起始地址是直接存在IP寄存器里的。

问题六:cpu怎样区别指令和数据 指令周期(也可说是时钟周期)。
CPU总是先读取指令,根据指令的要求类型采取读取数据。

问题七:指令和数据均存放在内存中,计算机如何区分它们是指令还是数据 每个字节都有一个地址cs指定代码段ip在代码段中指定当前要执行的指令 ds指定数据段具体访问数据由各通用指针寄存器指定,就是要访问的数据
麻烦采纳,谢谢!

问题八:CPU如何区分读出的代码是指令还是数据 计算机执行时,先取指令放到指令寄存器中,再分析指令,然后执行指令,根据需要去取数。
cpu给出指令或数据的地址,根据地址去取。我是这么理解的,也不知对不对

问题九:指令和数据都存于存储器中,计算机如何区分它们? 一般一个应用程序中,有控制命令和数据两大类,在DOS下,命令通过汇编--编译,转换成机器码,数据存贮在相应的地址中,不会和机器码起冲突,这是由编译决定的。而在运行过程中,机器码和数据均被调入内存,在运行机器码时,控制命令把寄存器设置成1,运行操作,控制命令把这个寄存器设置成0时,数据就被调入了。以前学的,有点忘了,相关书籍:汇编语言程序设计

D. 计算机如何区分内存中的程序与数据

通常完成一条指令可分为取指阶段、分析阶段和执行阶段。在取指阶段通过访问存储器可将指令取出;在执行阶段通过访问存储器可将操作数取出。这样,虽然指令和数据都是以0、1代码形式存在存储器中,但CPU可以判断出在取指阶段访存取出的0、1代码是指令;在执行阶段访存取出的0、1代码是数据。
计算机区分指令和数据有以下2种方法:
 通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。
 通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。

E. 指令和数据都存于存储器中,计算机如何区分它们

计算机区分指令和数据有以下2种方法:

1、通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。

2、通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。

存储器中的每段存储空间都会有一个地址,每个指令都包括一段操作数和一段空间地址,cpu会根据操作数去处理地址所指的数据。

一般计算机先读取存储器最开始的内容(这一部分是指令),然后加载操作系统(先是LOADER)后由操作系统对硬盘文件系统结构(即是数据)以判断其他数据和指令的位置

(5)计算机如何区分数据与程序扩展阅读:

构成存储器的存储介质,存储元,它可存储一个二进制代码。由若干个存储元组成一个存储单元,然后再由许多存储单元组成一个存储器。一个存储器包含许多存储单元,每个存储单元可存放一个字节(按字节编址)。

每个存储单元的位置都有一个编号,即地址,一般用十六进制表示。一个存储器中所有存储单元可存放数据的总和称为它的存储容量。

假设一个存储器的地址码由20位二进制数(即5位十六进制数)组成,则可表示2的20次方,即1M个存储单元地址。每个存储单元存放一个字节,则该存储器的存储容量为1MB。

动态存储器每片只有一条输入数据线,而地址引脚只有8条。为了形成64K地址,必须在系统地址总线和芯片地址引线之间专门设计一个地址形成电路。

使系统地址总线信号能分时地加到8个地址的引脚上,借助芯片内部的行锁存器、列锁存器和译码电路选定芯片内的存储单元,锁存信号也靠着外部地址电路产生。

当要从DRAM芯片中读出数据时,CPU首先将行地址加在A0-A7上,而后送出RAS锁存信号,该信号的下降沿将地址锁存在芯片内部。接着将列地址加到芯片的A0-A7上,再送CAS锁存信号,也是在信号的下降沿将列地址锁存在芯片内部。然后保持WE=1,则在CAS有效期间数据输出并保持。

当需要把数据写入芯片时,行列地址先后将RAS和CAS锁存在芯片内部,然后,WE有效,加上要写入的数据,则将该数据写入选中的存贮单元。

由于电容不可能长期保持电荷不变,必须定时对动态存储电路的各存储单元执行重读操作,以保持电荷稳定,这个过程称为动态存储器刷新。

PC/XT机中DRAM的刷新是利用DMA实现的。首先应用可编程定时器8253的计数器1,每隔1⒌12μs产生一次DMA请求,该请求加在DMA控制器的0通道上。当DMA控制器0通道的请求得到响应时,DMA控制器送出到刷新地址信号,对动态存储器执行读操作,每读一次刷新一行。

参考资料来源:网络-存储器

F. 指令和数据都存于存储器中,计算机如何区分它们

有以下2种方法:

方法一:通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。

方法二:通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。

G. 计算机如何区分指令和数据

区分指令和数据的具体方法:

一、指令用来确定“做什么”和“怎样做”,数据是“做”的时候需要原始数。

二、计算机可以从时间和空间两方面来区分指令和数据。在时间上,取指周期从内存中取出的是指令,而执行周期从内存取出或往内存中写入的是数据;在空间上,从内存中取出指令送控制器,而执行周期从内存从取的数据送运算器、往内存写入的数据也是来自于运算器。

比如:要计算机做1+2=?中,“+”表示要做什么和怎样做,1和2则是做的时候需要的原始数。现在假设某CPU中,“+”用二进制“00000001”来表示,“1、2”分别用“00000001、00000010”来表示。那么,这段程序存入内存中就是这样的:


XXXX1:00000001

XXXX2:00000001

XXXX3:00000010前面的XXXX1XXXX2

XXXX3表示内存的地址


从上面可以看出,“+”指令和被加数是完全相同的,当然,这是我故意这样假设的,但是,在实际情况中,这种情况是大量存在的。在正常情况下,CPU只能把XXXX1内存中的00000001作为指令,XXXX2内存中的00000001作为被加数才能得到正确的结果。那么CPU如何才能做到不把第二个00000001也当成“+”呢?


1.人们把内存的某个地址规定为起始地址(又称为复位地址),也就是说,当计算机开机或者被强行复位(也就是机箱上那个重启动按钮按下的的时候),CPU立即跳转到这个地址中,并且把它里面的代码作为指令来执行,同时根据这个指令的长度和格式判断下一条指令在什么地方。


对于X86系列CPU(也就是现在人们常用的什么奔XX、赛XX系列),它的复位地址是FFFF0,如果表示成逻辑地址则是:FFFF:0000。对DEBUG比较熟悉的朋友或者会在一些高级语言中嵌入汇编语言的朋友可以这样做一个试验:


用DEBUG执行一条指令(这是一条无条件跳转指令):jmpFFFF:0000,或者在高级语言中嵌入这条汇编指令,执行后,你就会发现,计算机重新启动了。其实,用程序控制计算机重启的最本质的操作就是这样的。


2.给各种指令规定了相应的长度和格式。比如:某数+某数这条指令就规定:这条指令的长度是3个字节,其中第一个字节表示“+”,后面两个字节表示被加数和加数。于是,当CPU到达这个指令后,就自动把第一个代码作为指令,后面两个代码作为数据,依次类推,第4个代码就必然是指令.....

拓展资料:



一、计算机指令

计算机指令就是指挥机器工作的指示和命令,程序就是一系列按一定顺序排列的指令,执行程序的过程就是计算机的工作过程。

原理:

控制器靠指令指挥机器工作,人们用指令表达自己的意图,并交给控制器执行。一台计算机所能执行的各种不同指令的全体,叫做计算机的指令系统,每一台计算机均有自己的特定的指令系统,其指令内容和格式有所不同。

通常一条指令包括两方面的内容:操作码和操作数,操作码决定要完成的操作,操作数指参加运算的数据及其所在的单元地址。

在计算机中,操作要求和操作数地址都由二进制数码表示,分别称作操作码和地址码,整条指令以二进制编码的形式存放在存储器中。

指令的种类和多少与具体的机型有关,在此不详述,请参见具体的机器资料手册。

指令的顺序执行,将完成程序的执行,因而有必要了解指令的执行过程。首先是取指令和分析指令。按照程序规定的次序,从内存储器取出当前执行的指令,并送到控制器的指令寄存器中,对所取的指令进行分析,即根据指令中的操作码确定计算机应进行什么操作。

程序流程图其次是执行指令。根据指令分析结果,由控制器发出完成操作所需的一系列控制电位,以便指挥计算机有关部件完成这一操作,同时,还为取下一条指令作好准备。

二、计算机数据

计算机数据表示是指处理机硬件能够辨认并进行存储、传送和处理的数据表示方法。

处理机硬件能够辨认并进行存储、传送和处理的数据表示方法。一台处理机的数据表示方法是处理机设计人员规定的,尽管数据的来源和形式有所不同,但输入这台处理机并经它处理的全部数据都必须符合规定。软件设计人员还可以依此来规定各数据类型(如虚数、向量等)和组织复杂的数据结构(如记录、文卷等)。

早期的机械式和继电式计算机都用具有10个稳定状态的基本元件来表示十进制数据位0,1,2,?,9。一个数据的各个数据位是按10的指数顺序排列的,如386.45=3×10+8×10+6×10+4×10+5×10。

但是,要求处理机的基本电子元件具有10个稳定状态比较困难,十进制运算器逻辑线路也比较复杂。多数元件具有两个稳定状态,二进制运算也比较简单,而且能节省设备,二进制与处理机逻辑运算能协调一致,且便于用逻辑代数简化处理机逻辑设计。因此,二进制遂得到广泛应用。

定点表示法在二进制中,0和1分别由处理机电子元件的两个稳定状态表示,2为数的基底。二进制字符数据表示法用二进制位序列组成供输入、处理和输出用的编码称为字符数据。字符数据包括各种运算符号、关系符号、货币符号、字母和数字等。

中国通用的是1980年颁布的国家标准GB1988-80《信息处理交换用的七位编码字符集》(见表),它以7个二进制位表示128个字符。它包括32个控制字符集、94个图形字符集、一个间隔字符和一个抹掉字符。

网络计算机指令

阅读全文

与计算机如何区分数据与程序相关的资料

热点内容
投保信息第三者投保在哪里查 浏览:247
达芬奇16数据库为什么建不了 浏览:565
正规的代理记账如何找 浏览:791
农副产品如何发传单 浏览:205
如何更新dnf助手信息 浏览:917
荣耀vivo如何转移数据 浏览:980
小程序名字怎么才能合格 浏览:102
市场营销专业适合哪个事业单位 浏览:285
海安收藏品交易市场在哪里 浏览:169
大通口碑好的代理记账电话多少 浏览:689
美团外卖代理运营怎么赚钱 浏览:361
分金亭如何代理 浏览:785
桥梁技术措施费包括哪些 浏览:586
cpu中的少量数据是什么 浏览:964
微博和小程序有什么区别 浏览:934
纯碱在哪个交易所 浏览:237
oppo手机怎么用usb数据线连接电视 浏览:176
小米l1和l5数据线哪个快 浏览:745
技术入股怎么评估 浏览:640
如何查询中国逆回购的交易记录 浏览:804