- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件设计师考前冲刺与考点分析
第 2 章 计算机硬件基础知识
1.1 考点脉络
计算机硬件系统是软件运行的基础,掌握一些基本硬件的工作原理是软件技术提高的前提,所以硬件基础知识是软件设计师考试中的一个必考模块。在此科目中,涉及到的知识点非常多,但真正常考的却不多,本章将对考点脉络进行梳理,对重要知识点进行精讲,并辅以习题,以便考生加深印象。
根据考试大纲,本章要求考生掌握以下几个方面的知识点。
(1)数据的表示:数制及其转换、原码、反码、补码、移码、浮点数、溢出、算术运算、逻辑运算、校验码。
(2)计算机系统的组成、体系结构分类及特性:CPU、存储器的组成、性能和基本工作原理、常用I/O设备、通信设备的性能及基本工作原理、I/O接口的功能、类型和特性、CISC/RISC、流水线操作、多处理机、并行处理。
(3)存储系统:虚拟存储器基本工作原理、多级存储体系、RAID类型和特性。
(4)可靠性与系统性能评测基础知识:诊断与容错、系统可靠性分析评价、校验方法、计算机系统性能评测方法。
从历年的考试情况来看,本章的考点主要集中以下方面。
在数据的表示中,主要考浮点数运算、溢出、算术、逻辑运算。
在计算机系统的组成与体系结构中,主要考查CPU的构成,常见寄存器的作用、计算机体系结构分类、指令系统基础、CISC与RISC、流水线操作的相关内容。
在存储系统中,主要考查Cache存储器。
在可靠性与系统性能评测基础知识中,主要考查系统可靠性分析和校验方法。
1.2 数据的表示
在数据的表示这个考点中,主要涉及到数制转换、数据编码、浮点数计算三个方面的内容,其中难度最高的是浮点数计算。
1.2.1 考点精讲
1. 数制转换
(1)R进制数转换成十进制数
R进制数转换成十进制数通常使用按权展开法。具体操作方式为:将R进制数的每一位数值用Rk形式表示,即幂的底数是R,指数为k,k与该位和小数点之间的距离有关。当该位位于小数点左边,k值是该位和小数点之间数码的个数,而当该位位于小数点右边,k值是负值,其绝对值是该位和小数点之间数码的个数加1。
例如二进制数l0101.01的值可计算如下:
l0101.01=1×24+1×22+1×20+1×
按照上面的表示法,即可计算出R进制数十进制的值。
(2)十进制数转换为R进制数
最常用的是“除以R取余法”。例如将十进制数85转换为二进制数:
2 |85余1
2 | 420
2 |21 1
2 |100
2 | 5 1
2 | 2 0
1 1
将所得的余数从低位到高位排列(1010101)2就是85的二进制数。
(3)二进制数与八进制数、十六进制数之间的转换
二进制转八进制:将每3个二进制数转换为八进制数;
二进制转十六进制数:将每4个二进制数转换为八进制数;
八进制转二进制:将每个八进制数转换为3位二进制数;
十六进制转二进制:将每个十六进制数转换为4位二进制数。
上面的转换都是以小数点作为计算数码个数的起点。八进制数和十六进制数转换可先转换为二进制数,然后再转换为目标进制。
2. 原码、反码、补码、移码
在计算机中,数据编码方式可以有多种,最为常见的有原码、反码、补码、移码。一个正数的原码、补码、反码是相同的,负数则不同。
(1)原码
将最高位用做符号位(0表示正数,1表示负数),其余各位代表数值本身的绝对值的表示形式。这种方式是最容易理解的。
例如,+1 的原码是0000 0001,–1 的原码是1000 0001。
但是直接使用原码在计算时却会有麻烦,比如(1)10+(–1)10 = 0,如果直接使用原码则:
(0000 0001)2+(1000 0001)2=(1000 0010)2
这样计算的结果是–2,也就是说,使用原码直接参与计算可能会出现错误的结果。所以,原码的符号位不能直接参与计算,必须和其它位分开,这样会增加硬件的开销和复杂性。
(2)反码
正数的反码与原码相同。负数的反码符号位为1,其余各位为该数绝对值的原码按位取反。这个取反的过程使得这种编码称为“反码”。
例如,–1的反码:1111 1110 。
同样对上面的加法,使用反码的结果是:
(0000 0001)2+ (1111 1110)2 = (1111 1111)2
这样的结果是负0,而在人们普遍的观念中,0是不分正负的。反码的符号位可以直接参与计算,而且减法也可以转换为加法计算。
(3)补码
正数的补码与原码相同。负数的补码是该数的反码加1,这个加1就是“补”。
例如,–1的补码:1111 1110+1 = 1111 1111。
再次做加法是这样的:
(0000 0001)2 +
文档评论(0)