计算机执行程序原理(计算机工作原理和指令执行过程)
计算机执行程序原理(计算机工作原理和指令执行过程)
2024-06-17 11:36:23  作者:日霁云山晓  网址:https://m.xinb2b.cn/know/fjw228574.html
1 计算机工作原理

计算机的工作过程是将现实世界中的各种信息转换成计算机能够理解的二进制代码(信息编码),然后保存在计算机的存储器(数据存储)中,再由运算器对数据进行处理(数据计算)。在数据存储和计算过程中,需要通过线路将数据从一个部件传输到另外一个部件(数据传输)。数据处理完成后,再将数据转换成人类能够理解的信息形式(数据解码)。在以上工作过程中,信息如何编码和解码,数据存储在什么位置,数据如何进行计算等,都由计算机能够识别的机器指令(指令系统)控制和管理。

2 计算机指令系统

各计算机公司设计生产的计算机芯片,其指令的数量与功能、指令格式、寻址方式、数据格式都有差别,即使是一些常用的基本指令,如算术逻辑运算指令、转移指令等也是各不相同的。

为了缓解新机器的推出与原有应用程序的继续使用之间的矛盾,1964年在设计IBM360计算机时所采用的系列机思想较好地解决了这一问题。从此以后,各个计算机公司生产的同一系列的计算机尽管其硬件实现方法可以不同,但指令系统、数据格式、I/O系统等保持相同,因而软件完全兼容(在此基础上,产生了兼容机)。当研制该系列计算机的新型号或高档产品时,尽管指令系统可以有较大的扩充,但仍保留了原来的全部指令,保持软件向上兼容的特点,即低档机或旧机型上的软件不加修改即可在比它高档的新机器上运行,以保护用户在软件上的投资。

常见指令按功能可划分为:

①数据处理指令:包括算术运算指令、逻辑运算指令、移位指令、比较指令等。

②数据传送指令:包括寄存器之间、寄存器与主存储器之间的传送指令等。

③程序控制指令:包括条件转移指令、无条件转移指令、转子程序指令等。

④输入-输出指令:包括各种外围设备的读、写指令等。有的计算机将输入-输出指令包含在数据传送指令类中。

⑤状态管理指令:包括诸如实现置存储保护、中断处理等功能的管理指令。

计算机是通过执行指令来处理各种数据的。为了指出数据的来源、操作结果的去向及所执行的操作,一条指令必须包含下列信息:

(1)操作码。它具体说明了操作的性质及功能。一台计算机可能有几十条至几百条指令,每一条指令都有一个相应的操作码,计算机通过识别该操作码来完成不同的操作。

(2)操作数的地址。CPU通过该地址就可以取得所需的操作数。

(3)操作结果的存储地址。把对操作数的处理所产生的结果保存在该地址中,以便再次使用。

(4)下条指令的地址。执行程序时,大多数指令按顺序依次从主存中取出执行,只有在遇到转移指令时,程序的执行顺序才会改变。为了压缩指令的长度,可以用一个程序计数器(ProgramCounter,PC)存放指令地址。每执行一条指令,PC的指令地址就自动 1(设该指令只占一个主存单元),指出将要执行的下一条指令的地址。当遇到执行转移指令时,则用转移地址修改PC的内容。由于使用了PC,指令中就不必明显地给出下一条将要执行指令的地址。

一条指令实际上包括两种信息即操作码和地址码。操作码(OperationCode,OP)用来表示该指令所要完成的操作(如加、减、乘、除、数据传送等),其长度取决于指令系统中的指令条数。地址码用来描述该指令的操作对象,它或者直接给出操作数,或者指出操作数的存储器地址或寄存器地址(即寄存器名)。

指令包括操作码域和地址域两部分。根据地址域所涉及的地址数量,常见的指令格式有以下几种。

①三地址指令:一般地址域中A1、A2分别确定第一、第二操作数地址,A3确定结果地址。下一条指令的地址通常由程序计数器按顺序给出。

②二地址指令:地址域中A1确定第一操作数地址,A2同时确定第二操作数地址和结果地址。

③单地址指令:地址域中A 确定第一操作数地址。固定使用某个寄存器存放第二操作数和操作结果。因而在指令中隐含了它们的地址。

④零地址指令:在堆栈型计算机中,操作数一般存放在下推堆栈顶的两个单元中,结果又放入栈顶,地址均被隐含,因而大多数指令只有操作码而没有地址域。

⑤可变地址数指令:地址域所涉及的地址的数量随操作定义而改变。如有的计算机的指令中的地址数可少至 0个,多至6个。

3 程序运行时的内存原理

程序运行时,用于执行程序的内存区域大致可分为以下部分。

计算机执行程序原理(计算机工作原理和指令执行过程)(1)

4 指令执行过程

整体的过程如下所述:

计算机执行程序原理(计算机工作原理和指令执行过程)(2)

PC——Program Counter,程序计数器,存放当前欲执行指令的地址,并可自动计数形成下一条指令地址的计数器;

MAR——Memory Address Register,存储器地址寄存器,内存中用来存放欲访问存储单元地址的寄存器;

MDR——Memory Data Register,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器;

IR——Instruction Register,指令寄存器,存放当前正在执行的指令的寄存器;

CU——Control Unit,控制单元(部件),控制器中产生微操作命令序列的部件,为控制器的核心部件;

ACC——Accumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器;

ALU——Arithmetic Logic Unit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部件;

MQ——Multiplier-Quotient Register,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。

X——此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数;

I/O——Input/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送;

也可以分为四个步骤去理解

I 取指令

CPU内部的指令寄存器IP保存着当前所处理指令的内存单元地址,通过地址总线,可以查找到指令在内存单元的位置,然后利用数据总线将内存单元的指令保存到高速缓存。

计算机执行程序原理(计算机工作原理和指令执行过程)(3)

II 指令译码

译码单元解释指令的类型与内容,并且判定这条指令的作用对象(操作数),将操作数从内存单元读入高速缓存中。译码实际上就是将二进制指令翻译成特定的CPU电路微操作,然后由控制器传送给算术逻辑单元。

计算机执行程序原理(计算机工作原理和指令执行过程)(4)

III 指令执行

控制器根据不同的操作对象,将指令送入不同的处理单元。如果是整数运算、逻辑运算、内存单元存取等一般控制指令,则送入ALU处理。如果操作对象是浮点数据(如三角函数运算),则送入浮点处理单元(FPU)进行处理。如果在运算过程中需要相应的用户数据,则CPU首先从数据高速缓存中读取相应的数据。如果高速缓存中没有用户需要的数据,则CPU通过数据通道,从内存中获取必要的数据,运算完成后输出运算结果。

计算机执行程序原理(计算机工作原理和指令执行过程)(5)

VI 结果写回

将执行单元(ALU或EPU)的处理结果写回高速缓存或内存单元中。

计算机执行程序原理(计算机工作原理和指令执行过程)(6)

解释和执行指令后,控制单元告诉指令寄存器从内存单元中读取下一条指令,循环上面的过程。

  • 手机怎么样可以变成公交卡(手机秒变虚拟公交卡)
  • 2024-06-17手机秒变虚拟公交卡我以前一直使用乘车码坐地铁,很多时候因为网络不好,还要等一会,感觉很不方便后面研究了下如何把手机变成一个虚拟公交卡,发现很简单以华为手机为例,在华为手机里有一个钱包的app,点进去后,有个交通出行,点。
  • 反渗透净水器一直制水怎么办 当心净水器变毒水器
  • 2024-06-17反渗透净水器一直制水怎么办 当心净水器变毒水器家用净水器这几年深受大众的关注,销售也是逐年增加,在一些水质比较差的地区,净水器的使用和安装更是普遍!然而,市场中总有一些商家,只为了追求利益,忽视产品质量所以在购买净水器的时候,我们当心净水器变成“。
  • 兰花叶子发黄怎么处理(兰花叶子发黄如何处理)
  • 2024-06-17兰花叶子发黄如何处理兰花喜欢湿润的生长环境,对空气湿度的要求比较高浇水不足造成根系受损或者是空气过于干燥的时候,就会导致兰花叶子发黄反之,如果浇水过多,盆内积水并且排水不畅,就会使兰花的根部缺氧腐烂,会出现黄叶,甚至死亡。
  • 霞浦美食海鲜打卡点推荐(霞浦盛产的十一款海鲜干货)
  • 2024-06-17霞浦盛产的十一款海鲜干货来了霞浦怎么少得了海鲜??然而吃不完又带不走的烦恼时常困扰着我们针对这个问题小编搜罗了你方便带走的霞浦特产以及实用的烹饪方法大厨轻松上线赶快get起来把~干贝瑶柱俗称干贝,为海产八珍之一古人曰:“食后。
  • 带名字的网名(带名字的网名精选)
  • 2024-06-17带名字的网名精选吧唧xx一口别再错过xx了xx很乖壁咚xx进xx心房xx不吃鱼xx是年少的欢喜鸭xx不卑微月亮奔向xxxx有一丢丢呆xx是我的私有物XX俘获我心XX爱次糖霸占xx所有的爱即唧一下xxxx在你心对XX说。
  • 儿童线描画课程介绍(少儿线描课件教程)
  • 2024-06-17少儿线描课件教程《小猪佩奇》,又名《粉红猪小妹》,英文名为《PeppaPig》,是由英国人阿斯特利(Astley)、贝克(Baker)、戴维斯(Davis)创作、导演和制作的一部英国学前电视动画片,也是历年来最具潜力。
  • 店铺管理手册(店铺日常经营管理模板)
  • 2024-06-17店铺日常经营管理模板一、门店组织架构及职能(一)门店人员配置序号岗位名称人数姓名备注1店长人门店综合管理兼市场开发2某岗位人业务承接设计兼店务管理3某岗位人业务制作、安装、取送货、市场开发(二)岗位职责及职能岗位信息:岗。
  • (免费WiFi实现全省覆盖)
  • 2024-06-17免费WiFi实现全省覆盖你已经被免费WiFi包围,请注意!河北省很多地方都有免费WiFi了,你都知道吗?又有很多地方正在建免费WiFi,这你就不知道了吧到哪儿第一句都问WiFi密码的你,快来随小编看看我大河北哪里可以蹭免费W。
  • 一般普通一本有院士吗(院士高考回忆录徐兵河)
  • 2024-06-17院士高考回忆录徐兵河1977年正式恢复高考,也是唯一一次在冬天举行的高考当年有超过570万人参加考试,19岁的徐兵河是其中一员彼时,他在湖北大冶市一所小学当民办教师,在完成教学任务、经常帮学校食堂师傅挑水、做饭的同时,他。
  • 如何挑选乌龟种类(如何辨别乌龟种类)
  • 2024-06-17如何辨别乌龟种类大家好,欢迎观看今天晓梦走进农村更新的三农知识,如何辨别乌龟种类,乌龟有多少种,估计许多养龟达人都不一定清楚,光在我国就有数十种龟类,其中包括许多国家一级保护动物不管是养宠物龟还是大量养殖获利的龟,未。
  • 棋魂赢褚终究离开了吗(棋魂褚赢领盒饭)
  • 2024-06-17棋魂褚赢领盒饭作为一部漫改电视剧,《棋魂》真人版在刚播出的时候是普遍不被大家看好的,但改编得好不好,大家有目共睹,现在豆瓣上的评分已经达到了8.2,对于笔者来说已经是一部不错的作品,相比于新翻拍的《鹿鼎记》,那好的。