❶ 在计算机中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位,在修改地址过程中能保存地址修改量,主存地址只能用描述字进行修改。指向数组中的第一个元素就是描述字, 因此,访问数组中的其它元素应当需要用修改量。
对于数组成来说,其是由大小一样的数据或者大小相同的元素组成的,且连续存储,常见的访问方式为向量描述字,因为向量描述字中的地址为字节地址,所以,在进行换算过程中,首先应当进行基本地址 的相加。对于换算工作来说,主要是由硬件自动实现,在这个过程中尤其要注意对齐,以免越出数组界限。
(1)cpu如何识别程序扩展阅读:
cpu的工作原理:
取指令(IF,instruction fetch),即将一条指令从主存储器中取到指令寄存器的过程。程序计数器中的数值,用来指示当前指令在主存中的位置。当 一条指令被取出后,PC中的数值将根据指令字长度自动递增。
指令译码阶段(ID,instruction decode),取出指令后,指令译码器按照预定的指令格式,对取回的指令进行拆分和解释,识别区分出不同的指令类 别以及各种获取操作数的方法。
执行指令阶段(EX,execute),具体实现指令的功能。CPU的不同部分被连接起来,以执行所需的操作。
访存取数阶段(MEM,memory),根据指令需要访问主存、读取操作数,CPU得到操作数在主存中的地址,并从主存中读取该操作数用于运算。部分指令不需要访问主存,则可以跳过该阶段。
结果写回阶段(WB,write back),作为最后一个阶段,结果写回阶段把执行指令阶段的运行结果数据“写回”到某种存储形式。
结果数据一般会被写到CPU的内部寄存器中,以便被后续的指令快速地存取;许多指令还会改变程序状态字寄存器中标志位的状态,这些标志位标识着不同的操作结果,可被用来影响程序的动作。
❷ CPU鑳藉熺洿鎺ヨ瘑鍒骞舵墽琛岀殑鏄链哄櫒璇瑷杩樻槸鎸囦护闆涓よ呮湁浠涔埚尯鍒_锏惧害...
CPU鑳藉熺洿鎺ヨ瘑鍒骞舵墽琛岀殑鏄链哄櫒璇瑷銆傛満鍣ㄨ瑷涓庢寚浠ら泦涔嬮棿镄勫尯鍒涓昏佷綋鐜板湪浠ヤ笅鍑犱釜鏂归溃锛
**镐ц川镄勫尯鍒锛**
1. 链哄櫒璇瑷锛氲繖鏄疌PU鑳藉熺洿鎺ョ悊瑙e拰镓ц岀殑缂栫▼璇瑷锛屼笉闇瑕佺粡杩囩炕璇戙傛疮涓链哄櫒璇瑷鎸囦护閮藉瑰簲镌CPU鍐呴儴镄勭壒瀹氱数璺锛岀敤浜庢墽琛岀浉搴旂殑镎崭綔銆
2. 鎸囦护闆嗭细杩欐槸CPU镓鏀鎸佺殑涓绯诲垪鎸囦护镄勯泦钖堬纴鐢ㄤ簬鎺у埗鍜岃$畻璁$畻链虹郴缁熺殑钖勭嶆搷浣溿
**鏋勬垚镄勫尯鍒锛**
1. 链哄櫒璇瑷锛氩畠鐢变竴绯诲垪链哄櫒鎸囦护缁勬垚锛岃繖浜涙寚浠ょ洿鎺ュ瑰簲浜嶤PU镄勭‖浠舵搷浣滐纴锲犳ゅ彲浠ヨ猎PU鐩存帴镓ц屻
2. 鎸囦护闆嗭细瀹冩槸璁$畻链轰腑鍙镓ц岀殑链灏忓姛鑳藉崟鍏幂殑闆嗗悎锛岃繖浜涙寚浠ゆ寜镦х壒瀹氱殑椤哄簭鎺掑垪褰㈡垚链哄櫒璇瑷锛屼互渚汣PU镓ц屻
**鍏煎规х殑鍖哄埆锛**
1. 链哄櫒璇瑷锛氢笉钖岀被鍨嬬殑璁$畻链哄叾链哄櫒璇瑷阃氩父鏄涓嶅吋瀹圭殑锛岃繖镒忓懗镌涓轰竴绉嶈$畻链虹紪鍐欑殑链哄櫒璇瑷绋嫔簭涓嶈兘鐩存帴鍦ㄥ彟涓绉嶈$畻链轰笂杩愯屻
2. 鎸囦护闆嗭细鎸囦护闆嗛氩父鍏锋湁钖戜笂鍏煎圭殑鐗圭偣锛岃繖镒忓懗镌浣庣鎴栨棫鍨嬭$畻链轰笂镄勮蒋浠跺彲浠ュ湪镟撮珮镐ц兘镄勬柊璁$畻链轰笂杩愯岋纴钥屾棤闇淇鏀广
阃氲繃浠ヤ笂鍒嗘瀽锛屾垜浠鍙浠ユ竻鏅板湴鐞呜В链哄櫒璇瑷鍜屾寚浠ら泦镄勬湰璐ㄥ尯鍒浠ュ强瀹冧滑鍦ㄨ$畻链虹郴缁熶腑镄勪綔鐢ㄣ