1.4 计算机系统概述思维导图小结-常见问题和易混淆知识点(组成原理)

文章目录

    • 1.计算机系统概述思维导图
    • 2.常见问题及易混淆知识点
      • (1)主频高的CPU一定比主频低的CPU快吗?为什么?
      • (2)不同级别的语言编写程序有什么区别?哪种语言编写的程序能被硬件直接执行?
      • (3)同一个功能可以由软件实现又可以由硬件实现吗?
      • (4)翻译程序、汇编程序、编译程序、解释程序的区别和联系是什么?
      • (5)什么是透明性?
      • (6)机器字长、指令字长、存储字长的区别和联系是什么?
      • (7)计算机体系结构和计算机组成的区别和联系是什么?
      • (8)基准程序执行得越快说明机器的性能越好吗?


1.计算机系统概述思维导图

1.4 计算机系统概述思维导图小结-常见问题和易混淆知识点(组成原理)_第1张图片

2.常见问题及易混淆知识点

(1)主频高的CPU一定比主频低的CPU快吗?为什么?

  • 不一定快,因为CPU运算速度不仅与主频有关还与CPU的流水线的各方面性能指标(架构、缓存、指令集、CPU位数、Cache大小等)。

(2)不同级别的语言编写程序有什么区别?哪种语言编写的程序能被硬件直接执行?

  • 机器语言和汇编语言与机器指令对应
  • 高级语言不与指令直接对应。具有较好的移植性
  • 机器语言可以被硬件直接执行

(3)同一个功能可以由软件实现又可以由硬件实现吗?

  • 可以,在逻辑功能上,软件和硬件是等效的,但不是等价的

(4)翻译程序、汇编程序、编译程序、解释程序的区别和联系是什么?

  • 翻译程序:高级语言源程序翻译成机器语言程序(目标代码)的软件
  • 翻译程序:编译程序+解释程序
  • 编译程序:它将高级语言程序一次全部转换成目标语言程序,目标语言可以是汇编语言或机器语言之类的“低级语言”,每次执行程序时,只需执行目标程序,因此只要源程序不变,就无须重新翻译。同一高级语言在不同体系结构下,翻译成目标程序是不一样的,目标程序与体系结构有关,但仍不是计算机硬件能够直接执行的程序
  • 汇编程序:也是一种语言翻译程序,它将汇编语言源程序翻译为机器语言程序,是一种面向机器的低级语言,是机器语言的符号表示,与机器语言一一对应

(5)什么是透明性?

  • 在计算机领域中,对于某类用户来说,看不见,感觉不到的事务和属性,我们就说是透明的,否则就是不透明的。
  • 比如高级语言程序员:浮点数格式、乘法指令等这些指令格式、数据如何在运算器中运算是透明
  • 对于机器语言和汇编语言程序员:指令格式、机器结构、数据格式等则不透明
  • 在CPU中,IR,MAR,MDR对各类程序员都是透明

(6)机器字长、指令字长、存储字长的区别和联系是什么?

  • 机器字长:计算机能直接处理的二进制数据位数,机器字长一般等于内部寄存器的大小,它决定了计算机的运输算精度
  • 指令字长:一个指令字中包含的二进制位数
  • 存储字长:一个存储单元存储的二进制位数,即一个存储单元中存储元件的个数,一个存储元件存储一个二进制数0/1
  • 它们必须是字节的整数倍,一般1(字节,B,byte )= 8 bit
  • 指令字长一般取存储字长的整数倍,若指令字长等于存储字长的2倍,那么需要访存2次取出一条指令,因此取指周期为机器周期的2倍;若指令字长等于存储字长,则取指周期等于机器周期;

在计算机中,为了便于管理,常把一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、存储器写等,这每一项工作称为一个基本操作。完成一个基本操作所需要的时间称为机器周期。

(7)计算机体系结构和计算机组成的区别和联系是什么?

  • 计算机体系结构:指机器语言或汇编语言程序员所看得到的传统机器属性,包括指令集、数据类型、存储器寻址技术等,大都属于抽象的属性。
  • 计算机组成:指如何实现计算机体系结构所体现的属性,它包含对许多程序员来说透明的硬件细节。
    例如:指令系统如何实现取指令、分析指令、取操作数、如何运算等都属于组成问题
  • 两台机器指令系统相同时,只能认为他们具有相同的结构,至于这两台机器如何实现其指令系统,可以完全不同,即可以认为他们的组成方式是不同的。
    例如:一台机器是否具备乘法指令是一个结构问题,但实现乘法指令采用什么方式则是一个组成问题。

(8)基准程序执行得越快说明机器的性能越好吗?

  • 一般情况下,基准测试程序能够反映机器性能的好坏。但是,由于基准程序中的语句存在频度的差异,因此运行结果并不能完全说明问题。

基准测试程序(Benchmark)用来测量机器的硬件最高实际运行性能,以及软件优化的性能提升效果,可分为微基准测试程序(Microbenchmark)和宏基准测试程序(Macrobenchmark)。

你可能感兴趣的:(#,计算机组成原理)