第二章 运算方法与运算器(下)
- 格式:ppt
- 大小:15.56 MB
- 文档页数:75
第二章运算方法和运算器练习一、填空题1. 补码加减法中,(符号位)作为数的一部分参加运算,(符号位产生的进位)要丢掉。
2. 为判断溢出,可采用双符号位补码,此时正数的符号用(00)表示,负数的符号用(11)表示。
3. 采用双符号位的方法进行溢出检测时,若运算结果中两个符号位(不相同),则表明发生了溢出。
若结果的符号位为(01),表示发生正溢出;若为(10),表示发生负溢出。
4. 采用单符号位进行溢出检测时,若加数与被加数符号相同,而运算结果的符号与操作数的符号(不一致),则表示溢出;当加数与被加数符号不同时,相加运算的结果(不会产生溢出)。
5. 利用数据的数值位最高位进位C和符号位进位Cf的状况来判断溢出,则其表达式为over=(C⊕Cf)。
6. 在减法运算中,正数减(负数)可能产生溢出,此时的溢出为(正)溢出;负数减(正数)可能产生溢出,此时的溢出为(负)溢出。
7. 补码一位乘法运算法则通过判断乘数最末位Yi和Yi-1的值决定下步操作,当YiYi-1=(10)时,执行部分积加【-x】补,再右移一位;当YiYi-1=(01)时,执行部分积加【x】补,再右移一位。
8. 浮点加减运算在(阶码运算溢出)情况下会发生溢出。
9. 原码一位乘法中,符号位与数值位(分开运算),运算结果的符号位等于(两操作数符号的异或值)。
10. 一个浮点数,当其补码尾数右移一位时,为使其值不变,阶码应该(加1)。
11. 左规的规则为:尾数(左移一位),阶码(减1)。
12. 右规的规则是:尾数(右移一位),阶码(加1)。
13. 影响进位加法器速度的关键因素是(进位信号的传递问题)。
14. 当运算结果的补码尾数部分不是(11.0×××××或00.1×××××)的形式时,则应进行规格化处理。
当尾数符号位为(01)或(10)时,需要右规。
计算机组成原理复习重点及要求第二章运算方法和运算器1.定点数的表示方法:掌握定点数的概念;掌握定点数的机器码表示(主要是原码、补码和移码)。
2.定点数的运算方法:掌握补码加减运算方法、溢出概念及检测方法。
3.定点运算器:掌握全加器的功能;掌握行波进位加减法器的结构及工作原理;理解多功能ALU的结构原理;掌握定点运算器的基本结构及其特点(包括单总线结构、双总线结构和三总线结构)。
4.浮点数的表示方法:掌握浮点数的概念;掌握浮点数表示的一般格式;掌握浮点数规格化表示的方法及其意义。
5.浮点数的运算方法:掌握浮点数的加减运算方法及步骤。
第三章存储系统1.理解多级存储器体系结构的意义及各级存储器的主要作用。
2.SRAM存储器:理解存储器芯片的逻辑结构(包括存储阵列、双译码方式、读写控制等);掌握SRAM存储器芯片的外部引脚特征(包括地址、数据、控制引脚);掌握SRAM存储器容量扩充方法(包括位扩展、字扩展、字位同时扩展,以及与CPU 的连接等)。
3.DRAM存储器:掌握DRAM存储器的存储原理;理解DRAM存储器的刷新问题及刷新方法;掌握DRAM存储器芯片的外部引脚特征。
4.ROM存储器:掌握ROM存储器的种类;掌握EPROM的擦、写特点。
5.Cache存储器:掌握cache存储器的作用及工作原理,理解程序局部性原理的意义;掌握cache-主存系统性能指标的计算方法(包括命中率、平均访问时间及效率);掌握各种主存与cache的地址映射方式及其特点,理解各种映射方式下的主存与cache的地址格式及其各字段的含义;理解替换策略对cache存储器的意义。
6.虚拟存储器:掌握虚拟存储器的作用及相关概念;掌握各式虚拟存储器的工作原理及特点(包括页式、段式和段页式虚拟存储器);掌握各式虚拟存储器的地址变换过程,掌握各自的虚地址格式及其各字段的含义。
第四章指令系统1.指令系统的基本概念:掌握机器指令、指令系统、系列机、CISC、RISC等概念。
第二章习题一、填空题:1.一个定点数由A.______和B.______两部分组成,根据小数点位置不同,定点数有C.______和D.______两种表示方法。
2.数的真值变成机器码可采用A. ______表示法,B. ______表示法,C.______表示法,移码表示法。
3.若[ x1 ]补 = 11001100, [x2 ]原 = 1.0110 ,则数x1和x2的十进制数真值分别是A.______和B.______。
4.移码表示法主要用于表示浮点数的A.______码,以利于比较两个B.______数的大小和进行C.______操作。
5.按IEEE754标准,一个浮点数由A.___, 阶码E, 尾数M三个域组成。
其中阶码E 的值等于指数的B.___, 加上一个固定C.___。
6.若浮点数格式中阶码的基数已定,且尾数采用规格化表示法,则浮点数的表示范围取决于A. 的位数,而精度取决于B. 的位数。
二、选择题:1.(2000)10化成十六进制数是______。
A.(7CD)16 B.(7D0)16 C.(7E0)16 D.(7FO)162.在小型或微型计算机里,普遍采用的字符编码是______。
A. BCD码B. 16进制C. 格雷码D. ASCⅡ码3.下列有关运算器的描述中,______是正确的。
A.只做算术运算,不做逻辑运算B. 只做加法C.能暂时存放运算结果D. 既做算术运算,又做逻辑运算4.某机字长32位。
其中1位符号位,31位表示尾数。
若用定点整数表示,则最大正整数为______。
A. +(231-1)B. +(230-1)C. +(231+1)D. +(230+1)5.至今为止,计算机中的所有信息仍以二进制方式表示的理由是______。
A.节约元件 B. 运算速度快 C. 物理器件性能决定 D. 信息处理方便6.某机字长32位,其中1位符号位,31位表示尾数。
若用定点整数表示,则最小负整数为______。
第二章运算方法和运算器1.写出下列各数的原码、反码、补码、移码表示(用8位二进制数)。
其中MSB是最高位(又是符号位)LSB是最低位。
如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。
(1) -35/64 (2) 23/128 (3) -127 (4) 用小数表示-1 (5) 用整数表示-1解:(1)先把十进制数-35/64写成二进制小数:(-35/64)10=(-100011/1000000)2=(-100011×2-6)2=(-0.100011)2令x=-0.100011B∴ [x]原=1.1000110 (注意位数为8位) [x]反=1.0111001[x]补=1.0111010 [x]移=0.0111010(2) 先把十进制数23/128写成二进制小数:(23/128)10=(10111/10000000)2=(10111×2-111)2=(0.0001011)2令x=0.0001011B∴ [x]原=0.0001011 [x]反=0.0001011[x]补=0.0001011 [x]移=1.0001011(3) 先把十进制数-127写成二进制小数:(-127)10=(-1111111)2令x= -1111111B∴ [x]原=1.1111111 [x]反=1.0000000[x]补=1.0000001 [x]移=1.0000001(4) 令x=-1.000000B∴ 原码、反码无法表示[x]补=1.0000000 [x]移=0.0000000(5) 令Y=-1=-0000001B∴ [Y]原=10000001 [Y]反=11111110[Y]补=11111111 [Y]移=011111115.已知X和Y, 用变形补码计算X+Y, 同时指出运算结果是否溢出。
(2)X=0.11011 Y= -0.10101解:x+y = 0.00110无溢出6.已知X 和Y, 用变形补码计算X-Y, 同时指出运算结果是否溢出。
第二章运算方法与运算器2.1.1 数值数据在机内的表示在选择计算机的数值数的表示方式时,需要考虑以下几个因素:(1)要表示的数的类型(小数、整数、实数和复数);(2)可能遇到的数值范围;(3)数值精确度;(4)数据存储和处理所需要的硬件代价。
2.1.1.1 定点数与浮点数计算机处理的数值数据多数带有小数,小数点在计算机中通常有两种表示方法,一种是约定所有数值数据的小数点隐含在某一个固定位置上,称为定点表示法,简称定点数;另一种是小数点位置可以浮动,称为浮点表示法,简称浮点数。
1. 定点数表示法(fixed-point)所谓定点格式,即约定机器中所有数据的小数点位置是固定不变的。
在计算机中通常采用两种简单的约定:将小数点的位置固定在数据的最高位之前,或者是固定在最低位之后。
一般常称前者为定点小数,后者为定点整数。
定点小数是纯小数,约定的小数点位置在符号位之后、有效数值部分最高位之前。
2. 浮点数表示法(floating-point number)与科学计数法相似。
2.1.1.2 数的机器码表示1. 原码表示法原码表示法是一种比较直观的表示方法,其符号位表示该数的符号,正用“0”表示,负用“1”表示;而数值部分仍保留着其真值的特征。
2. 补码表示法由于计算机的运算受一定字长的限制,属于有模运算,所以,在计算机中可以使用补码进行计算。
在定点小数机器中数最大不超过1,也就是负的小数对“1”的补码是等价的。
但实际上,负数的符号位还有一个“1”,要把它看成数的一部分,所以要对2求补码,也就是以2为模数。
3. 反码表示方法反码表示法中,符号的表示法与原码相同。
正数的反码与正数的原码形式相同;负数的反码符号位为1,数值部分通过将负数原码的数值部分各位取反(0变1,1变0)得到。
4. 移码表示法移码通常用于表示浮点数的阶码。
2.1.2 非数值数据在机内的表示计算机中数据的概念是广义的,机内除了有数值的信息之外,还有数字、字母、通用符号、控制符号等字符信息有逻辑信息、图形、图像、语音等信息,这些信息进入计算机都转变成0、1表示的编码,所以称为非数值数据。
第⼆章运算⽅法和运算器第⼆章运算⽅法和运算器⼀、选择题1.在机器数中,(B)的零的表⽰形式是唯⼀的。
A.原码B.补码C.反码D.原码和反码2.计算机系统中采⽤补码运算的⽬的是为了(C)。
A.与⼿⼯运算⽅式保持⼀致B.提⾼运算速度C.简化计算机的设计D.提⾼运算的精度3.假定下列字符码中有奇偶校验位,但没有数据错误,采⽤偶校验的字符码是(D)。
A.11001011B.11010110C.11000001D.110010014.若某数X的真值为-0.1010,在计算机中该数表⽰为1.0110,则该数所⽤的编码⽅法是(B)码。
A.原B.补C.反D.移5.在浮点数原码运算时,判定结果为规格化数的条件是(D)。
A.阶的符号位与尾数的符号位不同B.尾数的符号位与最⾼数值位相同C.尾数的符号位与最⾼数值位不同D.尾数的最⾼数值位为16.运算器虽有许多部件组成,但核⼼部分是(B)。
A.数据总线B.算术逻辑运算单元C.多路开关D.通⽤寄存器7.下列说法中正确的是(C)。
A.采⽤变形补码进⾏加减法运算可以避免溢出B.只有定点数运算才有可能溢出,浮点数运算不会产⽣溢出C.只有带符号数的运算才有可能产⽣溢出D.只有将两个正数相加时才有可能产⽣溢出8.下溢指的是(B)。
A.运算结果的绝对值⼩于机器所能表⽰的最⼩绝对值B.运算的结果⼩于机器所能表⽰的最⼩负数C.运算的结果⼩于机器所能表⽰的最⼩正数D.运算结果的最低有效位产⽣的错误⼆、填空题1.⼀个定点数由(符号位)和(数值域)两部分组成。
根据⼩数点的位置不同,定点数有(纯⼩数)和(纯整数)两种表⽰⽅法。
2.按IEEE754标准,⼀个浮点数由(符号位)S、阶码E,尾数M三个域组成。
其中阶码E的值等于指数的(真值e)加上⼀个固定的(偏移值)。
3.对阶时,使(⼩)阶向(⼤)阶看齐,使⼩阶的尾数向(右)移位,每(右)移⼀位,其阶码加1,直到两数的阶码相等为⽌。
4.现代计算机的运算器⼀般通过总线结构来组织.按其总线数不同,⼤体有(单总线结构),(双总线结构)和(三总线结构)三种形式。
第⼆章运算⽅法与运算器(浮点数的加减法,IEEE754标准3264浮点规格化数)这⼀章,主要介绍了好多种计算⽅法。
下⾯,写⼀点⾃⼰对于有些计算(⼿写计算过程)的见解。
1.原码、反码、补码 原码:相信⼤家都会写,符号位在前⼆进制数值在后,凑够位数即可。
反码:原码符号位不变,其他位全部取反。
补码:反码末位加⼀ / 原码符号位不变,从右往左数第⼀个1及其右边的各位不变,其余位全部取反2.IEEE754的转换 IEEE754标准32/64浮点规格化数形式:X = (-1)S * 1.M * 2E-127(其中,S-阶符,M-尾数,E-阶码) 32位的规格化浮点数:SEM00000...(即⼆进制SEM后⾯补0,写够32位) 以27/64为例: ①化形式:27/64 = + (1.1011)2 * 2-2 ②找SEM:S=0,M=1011,E=(125)10=(01111101)2 ③写结果:00111110 11011000 00000000 00000000 = (3ED800)163.变形补码计算加减法 变形补码没什么稀奇,不过是符号位变成两位⽽已(00为正,11为负),它的价值在于可以作溢出判断(结果00//11表⽰未溢出,01-上溢(所谓上溢符号位还是0),11-下溢(下溢符号位还是1)),就正常求补码(符号位double),放在⼀起加和,做溢出判断,最后别忘了把补码再转换回原码作为最终结果。
x+y: 以x=11011, y=00011为例: ①求补:[11011]补=0011011, [00011]补=0000011 ②加和:011011 + 000011 = 0011110;符号位00,未溢出,故x+y=11110 x-y:(这⾥把减法化为加法,即 x-y = x+(-y),另外[-y]补 = [y]补 从右往左数第⼀个1及其右边的各位不变,其余位全部取反,这次连带符号位也要取反) 以x=11011, y=-11111为例: ①求补:[11011]补=0011011, [-11111]补=1100001,[-y]补=0011111 ②加和:[x]补+[-y]补 = 0011011 + 0011111 = 0111010;符号位01,正溢(上溢);故x-y=+1110104.浮点数加减法(我⽤的是补码计算) 这⾥⾯涉及的东西⽐较多,每⼀步都需要仔细,错⼀步结果就错了。