计算机程序是怎么运行的?

作者&投稿:纳珊 (若有异议请与网页底部的电邮联系)
计算机程序的执行过程是怎样的?~

执行程序的过程 :
开始执行程序时,必须先给程序计数器PC赋以第一条指令的首地址00H,然后就进入第一条指令的取令的取指令阶段。

第一条指令的执行过程:
取指令阶段:
①将程序计数器PC的内容(00H)送至地址寄存器AR,记为PC AR。
②程序计数器PC的内容自动加1变为01H,为取下一个指令字节作准备,记为PC+1 PC。
③地址寄存器AR将00H通过地址总线送至存储器,经地址译码器译码,选中00号单元,记为AR M。
④CPU发出"读"命令。
⑤所选中的00号单元的内容B0H读至数据总线DB,记为(00H) DB。
⑥经数据总线DB,将读出的B0H送至数据寄存器,记为DB DR。
⑦数据寄存器DR将其内容送至指令寄存器IR,经过译码,控制逻辑发出招待该条指令的一系列控制信号,记为DR IR,IR ID、PLA。经过译码,CPU"识别"出这个操作码就是MOV A,03指令,于是,它"通知"控制器发出执行这条指令的各种控制命令。

为了使计算机程序得以运行,计算机需要加载代码,同时也要加载数据,然后由处理器执行指令。整个过程可以总结为编译、链接、装载、执行。
1、编译
编译过程又可以被分为两个阶段:编译、汇编。
编译是指编译器读取字符流的源程序,对其进行词法与语法的分析,将高级语言指令转换为功能等效的汇编代码。
汇编器是将汇编代码转变成机器可以执行的命令,每一个汇编语句几乎都对应一条机器指令。汇编相对于编译过程比较简单,根据汇编指令和机器指令的对照表一一翻译即可。
2、链接
链接的主要内容是将各个模块之间相互引用的部分处理好,使得各个模块之间能够正确地衔接。链接又分为静态链接和动态链接:
静态链接是指在编译阶段直接把静态库加入到可执行文件中去,这样可执行文件会比较大;
动态链接则是指链接阶段仅仅只加入一些描述信息,而程序执行时再从系统中把相应动态库加载到内存中去。
3、装载
程序在经过链接后,得到了可执行文件,下一步就需要将可执行程序加载到内存中。

由于现代操作系统均采用分页的方式来管理内存,所以操作系统只需要读取可执行文件的文件头,之后建立起可执行文件到虚拟内存的映射关系,而不需要真正的将程序载入内存。
4、运行
加载器将可执行目标文件中的代码和数据从磁盘复制到内存中,然后通过跳转到程序的第一条指令或入口点来运行程序。
在程序的运行过程中,CPU发现有些内存页在物理内存中并不存在并因此触发缺页异常,此时CPU将控制权限转交给操作系统的异常处理函数,操作系统负责将此内存页的数据从磁盘上读取到物理内存中。
数据读取完毕之后,操作系统让CPU jmp到触发了缺页异常的那条指令处继续执行,此时指令执行就不会再有缺页异常了。

扩展资料
为使计算机按预定要求工作,首先要编制程序,无论是最早的操作系统还是现代操作系统,程序的运行都是计算机工作的本质。
早期计算机是单任务执行,由程序员直接编写操作系统可以识别的机器语言,到现在可以实现多道程序并行,并且程序的开发由更利于程序员理解的高级语言编写,源程序在经过一系列翻译过程,变成计算机理解的机器语言,再执行。
整个程序执行的过程,需要CPU、内存、程序代码、设备等配合,才能实现程序要表达的功能。
参考资料来源:百度百科-计算机

计算机程序是指导计算机执行某个功能或功能组合的一套指令。要使指令得到执行,计算机必须执行程序,也就是说,计算机要读取程序,然后按准确的顺序实施程序中编码的步骤,直至程序结束。一个程序可多次执行,而且每次用户输给计算机的选项和数据不同,就有可能得到不同的结果。
程序可分为两大类:应用程序和操作系统。应用程序直接为用户执行某项功能,如字处理或玩游戏。操作系统管理计算机和与之相连的各种资源和设备,如随机访问存储器、硬盘驱动器、监视器、键盘、打印机和调制解调器,以便使其他程序可以使用它们。操作系统的例子包括:DOS、Windows 95、OS/2和UNIX。

概念上讲,一部计算机的存储器可以被视为一组“细胞”单元。每一个“细胞”都有一个编号,称为地址;又都可以存储一个较小的定长信息。这个信息既可以是指令(告诉计算机去做什么),也可以是数据(指令的处理对象)。原则上,每一个“细胞”都是可以存储二者之任一的。算术逻辑单元(ALU)可以被称作计算机的大脑。它可以做两类运算:第一类是算术运算,比如对两个数字进行加减法。算术运算部件的功能在ALU中是十分有限的,事实上,一些ALU根本不支持电路级的乘法和除法运算(由是使用者只能通过编程进行乘除法运算)。第二类是比较运算,即给定两个数,ALU对其进行比较以确定哪个更大一些。输入输出系统是计算机从外部世界接收信息和向外部世界反馈运算结果的手段。对于一台标准的个人电脑,输入设备主要有键盘和鼠标,输出设备则是显示器,打印机以及其他许多后文将要讨论的可连接到计算机上的I/O设备。控制系统将以上计算机各部分联系起来。它的功能是从存储器和输入输出设备中读取指令和数据,对指令进行解码,并向ALU交付符合指令要求的正确输入,告知ALU对这些数据做那些运算并将结果数据返回到何处。控制系统中一个重要组件就是一个用来保持跟踪当前指令所在地址的计数器。通常这个计数器随着指令的执行而累加,但有时如果指令指示进行跳转则不依此规则。20世纪80年代以来ALU和控制单元(二者合成中央处理器,CPU)逐渐被整合到一块集成电路上,称作微处理器。这类计算机的工作模式十分直观:在一个时钟周期内,计算机先从存储器中获取指令和数据,然后执行指令,存储数据,再获取下一条指令。这个过程被反复执行,直至得到一个终止指令。由控制器解释,运算器执行的指令集是一个精心定义的数目十分有限的简单指令集合。一般可以分为四类:1)、数据移动(如:将一个数值从存储单元A拷贝到存储单元B)2)、数逻运算(如:计算存储单元A与存储单元B之和,结果返回存储单元C)3)、条件验证(如:如果存储单元A内数值为100,则下一条指令地址为存储单元F)4)、指令序列改易(如:下一条指令地址为存储单元F)指令如同数据一样在计算机内部是以二进制来表示的。比如说,10110000就是一条Intel x86系列微处理器的拷贝指令代码。某一个计算机所支持的指令集就是该计算机的机器语言。因此,使用流行的机器语言将会使既成软件在一台新计算机上运行得更加容易。所以对于那些机型商业化软件开发的人来说,它们通常只会关注一种或几种不同的机器语言。更加强大的小型计算机,大型计算机和服务器可能会与上述计算机有所不同。它们通常将任务分担给不同的CPU来执行。今天,微处理器和多核个人电脑也在朝这个方向发展。超级计算机通常有着与基本的存储程序计算机显著区别的体系结构。它们通常由者数以千计的CPU,不过这些设计似乎只对特定任务有用。在各种计算机中,还有一些微控制器采用令程序和数据分离的哈佛架构

电脑是用中心软件读程序的,

你找造计算机的人啊

就那样解决的吗?


卡西欧计算器怎么编程啊?
都大不一样,就比如卡西欧4800和卡西欧5800计算器,编程语句和关键字很多不一样的了,如果你问的仅仅是进入计算器编程界面的话,对于卡西欧5800计算器那就是:“MODE SRTUP”——5号键,PROG——1号键,NEW——输入程序名称——选择程序模式(一般情况下都是在COMP模式下)——进入代码输入界面,输入程序代码再运行就行...

电脑怎么打开运行程序?
打开电脑运行程序,您可以按照以下步骤操作:1. 打开电脑:按下电脑的电源按钮,等待电脑启动。2. 登录操作系统:在电脑开启后,选择登录账号进入操作系统,输入相应的用户名和密码。3. 寻找程序:在操作系统的桌面或开始菜单中可以找到已安装的程序的快捷方式或图标。可以使用鼠标单击图标,或使用键盘上的...

计算器是怎么工作的?用什么语言编写的?
计算器由运算器、控制器、存储器等程序共同协调工作。用程序语言编写。计算器一般由运算器、控制器、存储器、键盘、显示器、电源和一些可选外围设备及电子配件通过人工或机器设备组成。低档计算器的运算器、控制器由数字逻辑电路实现简单的串行运算,其随机存储器只有一、二个单元,供累加存储用。高档计算器...

计算机二级c语言最后一道程序设计题要怎么运行呢?
当然,你也可以不使用vs2010,用cfree,devc++这种不需要创建工程的软件,单独一个文件是可以运行的。如何备考 1.选择题:如果C语言有一定基础,考前一周开始刷题没大问题(因为刷早了会忘)。我发的模拟考试软件里有,做完题有讲解。另外背一背公共基础知识和一些程序设计基础,软件设计基础blabla,...

试简述利用计算机程序解决问题的基本过程
利用计算机程序解决问题的基本过程有五步,分别是:分析问题、设计算法、编写程序、调试运行、检测结果。计算机本身作为机器可以获得专利,但计算机程序是一种数学逻辑方法,各国一般不予保护。随着电子技术的广泛应用,导致产生了专门提供计算机所需软件的新兴工业部门及新型商品——计算机程序。

程序是如何运行的?
程序也可以用于娱乐和教育领域,例如游戏、动画、教育软件等。这些应用程序可以提供丰富的互动体验和知识传授,帮助人们更好地放松和学习。5、控制系统:程序还可以用于控制各种系统,例如机器人、无人机、智能家居等。这些控制系统需要程序来处理传感器数据并控制系统的行为,以确保系统的正常运行和安全性。

C语言代码,怎么运行。
1、创建一个文件名为main.c,然后用任意一个款你熟悉的文本编辑软件,比如说记事本,在里面输入下面的代码,记住,要用文本文件编辑软件,不能用word的。2、然后用gcc编译程序:gcc .\/main.c 你会得到一个a.out文件。3、运行a.out

冯诺依曼式计算机的构思思想及其运行原理揭示了程序存储的原始思想对吗...
并规定了这五部分的基本功能。上述概念奠定了现代计算机的基本结构,并开创了程序设计的时代。虽然计算机技术发展很快,但存储程序原理至今仍然是计算机内在的基本工作原理,仍然是理解计算机系统功能与特征的基础。自计算机诞生的那天起,这一原理就决定了人们使用计算机的主要方式——编写程序和运行程序。

计算机之所以能实现自动连续运算是由于采用了什么原理
计算机俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件系统和软件系统所组成,没有安装任何软件的计算机称为裸机。可分为超级计算机、工业控制计算机、网络计算机、个人...

机算机中、程序和指令和数据有什么不一样?分别是什么内容?说清楚点_百 ...
为了一个程序运行,计算机加载程序代码,可能还要加载数据,从而初始化成一个开始状态,然后调用某种启动机制。在最低层上,这些是由一个引导序列开始的。在大多数计算机中,操作系统例如Windows等,加载并且执行很多程序。在这种情况下,一个计算机程序是指一个单独的可执行的映射,而不是当前在这个计算机上...

尉犁县19734688975: 计算机程序的执行过程是怎样的? -
禤博吲达: 执行程序的过程 : 开始执行程序时,必须先给程序计数器PC赋以第一条指令的首地址00H,然后就进入第一条指令的取令的取指令阶段. 第一条指令的执行过程:取指令阶段:①将程序计数器PC的内容(00H)送至地址寄存器AR,记为...

尉犁县19734688975: 计算机程序是怎么运行的? -
禤博吲达: 计算机程序是指导计算机执行某个功能或功能组合的一套指令.要使指令得到执行,计算机必须执行程序,也就是说,计算机要读取程序,然后按准确的顺序实施程序中编码的步骤,直至程序结束.一个程序可多次执行,而且每次用户输给计算机的选项和数据不同,就有可能得到不同的结果. 程序可分为两大类:应用程序和操作系统.应用程序直接为用户执行某项功能,如字处理或玩游戏.操作系统管理计算机和与之相连的各种资源和设备,如随机访问存储器、硬盘驱动器、监视器、键盘、打印机和调制解调器,以便使其他程序可以使用它们.操作系统的例子包括:DOS、Windows 95、OS/2和UNIX.

尉犁县19734688975: 计算机怎么执行的程序 程序在计算机中到底是如何运行的 -
禤博吲达: ß有了硬件和软件,电脑又是如何运行的呢?ß电脑的运行过程是:通过键盘输入命令,从磁盘把程序和相应的数据读入随机访问存储器中,中央处理器从随机访问存储器中读取程序指令及数据并执行,再把执行结果送显示器显示,必要时可以...

尉犁县19734688975: 程序在计算机上的执行过程是怎样的? -
禤博吲达: 操作系统加载程序,把可执行程序读入内存,再由CPU逐条读取和执行程序包含的指令.想知道更详细的就看计算机组成原理和操作系统的书

尉犁县19734688975: 计算机是怎样运行程序的? -
禤博吲达: 概念上讲,一部计算机的存储器可以被视为一组“细胞”单元.每一个“细胞”都有一个编号,称为地址;又都可以存储一个较小的定长信息.这个信息既可以是指令(告诉计算机去做什么),也可以是数据(指令的处理对象).原则上,每一...

尉犁县19734688975: 电脑程序是怎么运行的,原理是什么? -
禤博吲达: 原理多了,一层套一层,先是转化成执行平台能运行的文件,在底层由操作系统转换成机器代码,然后由cpu操作寄存器等玩意计算处理,总之,就是层层翻译的一个过程,想知道硬件操作过程,建议学习汇编语言和计算机组成原理,以及数字电路

尉犁县19734688975: 一个程序是怎么在电脑中运行的 -
禤博吲达: 程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合. 为了一个程序运行,计算机加载程序代码,可能还要加载数据,从而初始化成一个开始状态,然后调用某种启动机制.在最低层上,这些是由一个引导序列开始的. 在大多数计算机中,操作系统例如视窗等,加载并且执行很多程序.在这种情况下,一个计算机程序是指一个单独的可执行的映射,而不是当前在这个计算机上运行的全部程序.

尉犁县19734688975: 计算机是如何执行程序的 -
禤博吲达: cpu控制器读取一条指令和相应的操作数放到寄存器中,然后交给cpu内部的运算单元进行处理,处理过程中可能改变一些状态寄存器的值,处理结果可能改变内存的值

尉犁县19734688975: 电脑是如何运行的 -
禤博吲达: 电脑的运行本来就是二进制的,计算机是由逻辑电路组成,逻辑电路通常只有两个状态,开关的接通与断开,这两种状态正好可以用“1”和“0”表示. 电子计算机所使用的是由"0"和"1"组成的二进制数,二进制是计算机的语言的基础....

尉犁县19734688975: 请问计算机运行程序的基本过程是什么?
禤博吲达: 计算机程序程序运行为了一个程序运行,计算机加载程序代码,可能还要加载数据,从而初始化成一个开始状态,然后调用某种启动机制

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网