美文网首页
计算机如何执行一个程序

计算机如何执行一个程序

作者: 绝露 | 来源:发表于2017-02-26 18:03 被阅读0次

我们编写,运行一个程序,从开始到最后表面上看似流畅,连续.但是在实际的操作过程中,一个软件的编写,和执行过程是分阶段的.前人在每一个执行阶段都花费了巨大的精力,以使其效率达到最优.下面就作一概述.

对于磁盘上的一段程序来说:它本质上是一堆指令和数据的集合.而对内存中运行着的程序来说它多了一个堆栈空间.

我们先介绍计算机的两个核心部件CPU,和内存

内存 临时的工作空间

内存只是一片存储空间,是一种一断电就不能用的存储设备,是被程序使用的一种资源.根据程序使用它的方式不同.它也可以被叫做堆,栈,表等等. 内存和CPU直接相连.绝大多数时候也只有内存和CPU直接交互.其他的也写设备都是间接的通过内存和CPU交互.

CPU 执行指令的部件

CPU中包含了一些其他的部件,这些部件组合起来共同完成了,输入信号,执行信号,输出信号的功能.CPU工作的节奏是根据时钟这个部件的频率来的.时钟和一块叫做触发器的电路共同组成了控制器中的程序计数器. 控制器根据程序计数器的指示读取内存中的指令和数据,将其送给运算器.运算器通过寄存器的辅助,完成运算.最后在控制器的辅助下输出结果.

执行过程

有了这两个概念之后,我们就可以大致来解释一条语句的执行过程.一条语句刚一开始,是被我们存储在硬盘中的.在我们正式运行它之前,需要先进行编译和链接的操作.之后我们就得到了一个完整的可执行文件(一个指令集合).然后就可以直接执行这个程序.

在执行刚开始的时候,我们需要先将程序加载到内存当中.操作系统会将程序计数器的值设为该被执行程序的第一个指令的地址.然后随着程序计数器的不断递增,指令集中的指令会被一条一条执行直至完成.在执行的过程中CPU会将输出信息返回给内存.在从内存返回到各个外部设备中.

相关文章

  • 操作系统是如何管理内存的

    计算机是如何工作的? 一个程序在执行时,程序有进程睡眠时就会把该进程交换到磁盘中,那么如何记录程序的地址呢? 程序...

  • 进程和线程

    并行与并发 1. 计算机是如何执行程序指令的? 2. 计算机是如何实现并发? 轮询调度实现并发执行 3. 真正的并...

  • 程序是如何被计算机所执行的?

    一、计算机程序要明白程序是如何被计算机所执行的,首先要明白什么是程序?先看看一下几个问题: 程序的概念?程序(pr...

  • 第1章 程序设计和C语言

    1.1什么是计算机程序 程序,就是一组计算机能识别和执行的指令。每一条指令使计算机执行特定的操作。只要让计算机执行...

  • GCD总结

    什么是并行、并发 并行是指计算机利用多核技术,同时执行若干程序,每个cpu执行一个程序,这些程序同时执行。 并发是...

  • 计算机如何执行一个程序

    我们编写,运行一个程序,从开始到最后表面上看似流畅,连续.但是在实际的操作过程中,一个软件的编写,和执行过程是分阶...

  • Python 自动化运维之路(上)

    一.编程范式 编程是程序员用特定的语法+数据结构+算法组成的代码来告诉计算机如何执行任务的过程 。 一个程序是程序...

  • 07 程序执行原理(科普)

    程序执行原理(科普) 目标 计算机中的 三大件 程序执行的原理 程序的作用 01. 计算机中的三大件 计算机中包含...

  • 程序是什么

    程序执行原理(科普) 目标 计算机中的 三大件 程序执行的原理 程序的作用 01. 计算机中的三大件 计算机中包含...

  • 程序是怎么跑起来的——虚拟内存与动态链接

    Linux程序是怎么执行的——动态链接 0、前言 计算机的核心任务就是运行程序,而程序是如何运行的?这个问题一直困...

网友评论

      本文标题:计算机如何执行一个程序

      本文链接:https://www.haomeiwen.com/subject/bfgowttx.html