计算机组成原理重要知识点及笔&面试常考题目(1)

相关热门博文——>计算机组成原理核心知识点总结&面试笔试要点

一 巩固习题

  1. 计算机的发展历史大概可以分为几个阶段?每个阶段的计算机分别有什么特点?
    分为四个阶段:
    电子管计算机:集成度低,体积大,功耗高,运行速度慢,操作复杂。
    晶体管计算机:相对电子管计算机,体积小,速度快,功耗低,可靠性高,配备显示器。
    集成电路计算机:操作系统诞生。
    超大规模集成电路计算机:集成度高,速度快,体积小,价格低,用途广泛。
  2. 你了解“摩尔定律”吗?“摩尔定律”对现代计算机产生了什么影响?
      摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出来的。其内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18-24个月翻一倍以上。这一定律揭示了信息技术进步的速度。尽管这种趋势已经持续了超过半个世纪,摩尔定律仍应该被认为是观测或推测,而不是一个物理或自然法。
  3. 你了解冯诺依曼机吗?你是否可以大概描述冯诺依曼机的基本组成和工作原理?冯诺依曼机相对于之前的计算机有什么重要改进?
      冯诺依曼机有五大组成部分:输入设备、输出设备、运算器、存储器、控制器。冯诺依曼机把程序指令和运行数据存储起来,使得计算机从专用电路计算机发展成为通用电路计算机。
  4. 什么是冯诺依曼瓶颈?冯诺依曼瓶颈对现代计算机产生了什么影响?
      冯诺依曼瓶颈指的是存储器和运算器之间的访问速率差异巨大,使得计算机性能无法提升。现代计算机以存储器为核心,根据局部性原理设计了存储器的层次结构,大幅提升计算机性能。
  5. 你了解程序解释和程序翻译吗?什么是编译型语言,什么是解释型语言呢?
      编程语言可以分为解释型语言和编译型语言,程序解释指的是程序代码在运行时,逐行翻译成较低层次的编程语言去执行;程序翻译指的是程序代码在编译阶段提前翻译成较低层次的编程语言逻辑,在运行时直接运行。
  6. 请你列举十种以上的编程语言,并分别分类他们属于什么类型的语言。
      编译型语言:C、C++、Go、OC,解释型语言:Php、Python、Javascript、Perl、Lua,翻译+解释型语言:Java、C#、Kotlin等。
  7. 你了解计算机的层次结构吗?今天的软件和硬件是怎么界定的。
      计算机的层次结构划分是为了方便理解计算机的整一个体系,在不同书籍或领域会有不一样的划分,没有绝对的正确。今天的软件、硬件的划分以硬件电路为界限,从涉及硬件电路逻辑往下的都归为硬件,要注意软件和硬件的划分也是与时俱进的,今天的软件很可能明天就变成了硬件,比如以前编写硬件逻辑代码是软件,而随着高级编程语言的出现和成熟,现在编写硬件逻辑代码已经视为硬件部分了。
  8. 请你尝试说明高级语言、汇编语言和机器语言的区别和联系?
      高级语言是方便程序员描述程序逻辑的编程语言,与人类语言接近;汇编语言时方便程序员描述硬件逻辑的编程语言,与底层硬件接近;机器语言时方便计算机理解和运行的编程语言,一般程序员无法理解。
  9. CPU的速度一般使用什么做单位?它具有什么物理意义?
      赫兹,是国际单位制中频率的单位,它是每秒中的周期性变动重复次数的计量。1Hz = 1/s,即在单位时间内完成振动的次数,单位为赫兹(1赫兹=1次/秒)。
  10. 网络的速度一般使用什么做单位?
      bps,比特率是指每秒传送的比特(bit)数。单位为 bps(Bit Per Second),比特率越高,每秒传送数据就越多。
  11. 20世纪80年代以前的计算机是不支持输入中文的,当时的计算机使用的是什么编码集?
    ASCII编码集。
  12. ASCII编码集占用多少个字节?
    ASCII有128个字符,占用7个比特位,扩展ASCII编码机占用8个比特位,一个字节。
  13. ‘A’, ‘b’, 'C’对应的ASCII十进制数值分别是多少?
    65、98、67。
  14. 你可以使用你熟悉的语言将 72、96、108转换为ASCII码吗?
    Python使用chr函数就可以将十进制数转换为ASCII码对应字符。
>>> chr(72)
'H'
>>> chr(96)
'`'
>>> chr(108)
'l'
  1. 你知道Unicode编码和UTF-8编码的区别和联系吗?
      Unicode全名为:统一码、万国码,是计算机科学领域里的一项业界标准。Unicode标准有不同的编码实现,比如UTF-8、UTF-16、UTF-32,也即是可以有多种规则来实现Unicode标准,比如UTF-8使用的是不定长字节表示Unicode字符,在表示高位Unicode字符时可以自动扩展,UTF-32使用的是定长4个字节表示Unicode字符。
  2. 假设有10000个汉字,6000个日本字,3000个韩国字,1000个特殊字符,如果让你设计一套通用的编码集,请问每个字至少几个比特位?
      10000+6000+3000+1000=19000个字符,最起码使用15个比特位,占2个字节。

二 重要概念需要详细了解

  1. 摩尔定律
  2. 冯诺依曼机
  3. 冯诺依曼瓶颈
  4. 程序解释
  5. 程序翻译
  6. 高级语言
  7. 汇编语言
  8. 机器语言
  9. 计算机硬件
  10. 计算机软件
  11. 计算机的层次结构
  12. 计算机编码集
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章