文章目录

  • 1.计算机工作过程分为三步骤
  • 2.从源程序到可执行文件
    • (1)预处理阶段
    • (2)编译阶段
    • (3)汇编阶段
    • (4)链接阶段
  • 3.指令执行过程的描述
    • 举个例子
    • (1)取指令:PC->MAR->M->MDR->IR
    • (2)分析指令:OP(IR)->CU
    • (3)执行指令:Ad(IR)->MAR->M->MDR->ACC

1.计算机工作过程分为三步骤

2.从源程序到可执行文件

  • 这里以UNIX系统中的GCC编译器程序为例,将C语言源程序转换为可执行文件(以二进制磁盘文件形式存储)

(1)预处理阶段

  • 预处理器(cpp)对源程序中以#开头的命令进行处理,例如将#include命令后面的.h文件内容插入程序文件。输出结果是一个以.i为扩展名的源文件hello.i

(2)编译阶段

  • 编译器(ccl)对预处理后的源程序进行编译,生成一个汇编语言程序hello.s。汇编语言源程序中的每一条语句都以一种文本格式描述了一条低级指令

(3)汇编阶段

  • 汇编器(as)将hello.s 翻译成机器语言指令,把这些指令打包成一个称为可重定位目标文件hello.o,一种二进制文件,用文本编辑器打开会乱码

(4)链接阶段

  • 链接器(ld)将多个可重定位目标文件标准库函数合并为一个可执行目标文件, 或简称可执行文件。本图例子中,链接器将hello.o库函数printf所在的可重定位目标模块printf.o合并,生成可执行文件hello。最终生成的可执行文件被保存在磁盘上。

3.指令执行过程的描述

  • 简单描述:程序中第一条指令位于PC中,根据PC取出第一条指令,经过译码,执行步骤等,控制计算机各功能部件的协同运行,完成这条指令的功能,并计算下一条指令的地址。用新得到的指令地址继续读出第二条指令并执行,知道程序结束为止。

  • 图中从控制器送出的虚线是控制信号↓↓↓↓↓↓
  • 可以控制如何修改PC以得到下一条指令的地址
  • 可以控制ALU执行什么运算
  • 可以控制主存进行读/写操作

举个例子

例题:以取数指令(即将指令地址码指示的存储单元中的操作数取出后送至运算器的累加器(ACC)中)为例进行说明。其信息流程如下:

累加器ACC:二进制8位寄存器,存放操作数或运算结果。
M : 主存储器

(1)取指令:PC->MAR->M->MDR->IR

根据PC取指令到IR。将PC的内容送MAR,MAR中的内容直接送地址线,同时控制器将读/写信号送读/写信号线,主存根据地址线上的地址和读信号,从指定存储单元读出指令,送到数据线上,MDR从数据线接受指令信息,并传送到IR中。

(2)分析指令:OP(IR)->CU

指令译码器解释操作码OP(IR)并送出控制信号。指令寄存器(IR)将操作码OP(IR)送至指令译码器(ID)进行解释翻译,将翻译的信息送至操作控制器(OC),OC生成相应的控制信号,送到不同的执行部件。

(3)执行指令:Ad(IR)->MAR->M->MDR->ACC

取数操作。将IR中的指令地址码送MAR,MAR将内容送至地址线,同时控制器将读/写信号送读/写线,从主存指定单元读出操作数,并通过数据线送至MDR,再传送到ACC中。

  • 每取完一条指令,(PC)+1->PC,取下一条指令的地址。

1.2.4 计算机的工作过程(从源程序到可执行文件、指令执行过程的描述)相关推荐

  1. 6 计算机组成原理第五章 中央处理器 CPU功能和结构 指令执行过程

    文章目录 1 CPU功能和基本结构 1.1 CPU的功能 1.2 运算器的基本结构 1.3 控制器的基本结构 1.4 CPU基本结构 1.5 CPU的功能和基本结构小结 2 指令周期和数据流 2.1 ...

  2. CPU内部组成结构及指令执行过程

    计算机的基本硬件系统由运算器.控制器.存储器和输入.输出设备五大部件组成.运算器和控制器等部件被集成在一起统称为中央处理单元(Central Processing Unit,CPU). CPU的功能 ...

  3. CPU结构与指令执行过程简介

    CPU(Central Processing Unit)是计算机中进行算术和逻辑计算处理指令的主要部件. CPU结构 CPU由通用寄存器组,运算器,控制器和数据通路等部件组成. 寄存器包括 数据寄存器 ...

  4. 通过分析一个C程序的汇编指令执行过程,理解计算机的工作。

    郑德伦 原创作品转载请注明出处 <Linux内核分析>MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 首先创建一个C程序的文 ...

  5. 计算机的指令系统、控制器、运算器以及指令执行的过程

    目录 一.计算机的指令系统 1.机器指令的形式 2.机器指令的操作形式: 3.机器指令的寻址方式: 二.计算机的控制器 三.计算机的运算器 四.计算机指令执行的过程 一.计算机的指令系统 1.机器指令 ...

  6. 【计算机组成原理】指令执行过程

    机器周期和时钟周期 机器周期:又称CPU周期. 时钟周期:又称CPU时钟周期,是CPU操作的最基本单位. 指令周期 指令周期是CPU从主存中取出并执行一条指令的时间,不同指令的指令周期可能不同. 指定 ...

  7. (计算机组成原理)第五章中央处理器-第二节:指令执行过程(取指周期、间址周期、执行周期和中断周期)

    文章目录 一:指令周期 二:指令周期流程 (1)取指周期 (2)间址周期 (3)执行周期 (4)中断周期 三:指令执行方案 (1)单指令周期 (2)多指令周期 (3)流水线方案 一:指令周期 指令周期 ...

  8. mysql数据库查询语句过程_mysql(一) SQL查询语句执行过程

    mysql基础架构 示意图 首先 mysql  大概分为 server层 和 存储引擎层 两个部分, 引擎的架构模式是插件形式的,mysql支持多种引擎如 InnoDB.MyISAM.Memory 等 ...

  9. 多台计算机共享内存_共享内存多处理器和指令执行| 计算机架构

    多台计算机共享内存 共享内存多处理器 (Shared Memory Multiprocessor) There are three types of shared memory multiproces ...

最新文章

  1. SEL重磅:重新认识菌根:菌根真的如普遍认为的那样重要吗?
  2. POJ 3259 Wormholes
  3. Accusoft结构化工具包FormSuite for Structured Forms常见问题解答(二)
  4. [JavaWeb-JavaScript]JavaScript概念与功能
  5. HashMap、TreeMap、Hashtable、HashSet和ConcurrentHashMap区别
  6. springAOP与注解
  7. IPLAT62--后台返回提示参数
  8. AndroidStudio使用gradle出现Could not download... 或unable to resolve dependency for...
  9. 【JS基础】JavaScript语言简介及简单例子
  10. Echarts世界地图中国分区显示
  11. 经济学人The right call on Huawei (20190427)
  12. excel小技巧(一)统计单元格中3的个数
  13. 计算机毕业设计Java-ssmC语言教学辅导网站源码+系统+数据库+lw文档
  14. 小外包公司的商业运作模式,希望大家多补充补充!
  15. 数据化决策-数据分析与高效经营1
  16. 低功耗、高性能智能开发主板MED3568
  17. 内容:提出含冰蓄冷空调的微电网多时间尺度优化调度模型,研究冰蓄冷空调 的不同运行方式对优化调度的影响
  18. 吉特仓库管理系统-ORM框架的使用
  19. Eigen/Matlab库矩阵运算方法
  20. 什么是网络爬虫,网络爬虫的职能是什么

热门文章

  1. http协议的缺点和确保web安全的https协议
  2. Mac下安装Mysql以及修改Mysql密码
  3. 利用gcc的__attribute__编译属性section子项构建初始化函数表【转】
  4. 挖掘Windows 10看图的习惯用法
  5. 轻量集群管理工具PSSH
  6. Start – Modern minimalist OpenCart 2.X 自适应主题模板 ABC
  7. Java Web整合开发(26) -- Spring概述
  8. C#基础篇三流程控制2
  9. 如何画出漂亮的气象(实时流量)图
  10. linux故障排除与修复(troubleshooting)