计算机组成原理第六章计算机的运算方法
- 格式:ppt
- 大小:4.04 MB
- 文档页数:7
计算机组成原理教案(数字媒体专业)第一章计算机系统概论内容简介:计算机系统的层次结构,冯·诺伊曼计算机的硬件结构和主要功能,计算机的工作步骤以及计算机的主要技术指标。
教学目标:了解计算机系统的层次结构;了解冯·诺伊曼计算机的特点及硬件构成;理解计算机的工作步骤,了解计算机的主要技术指标的含义及其对计算机的影响。
教学重点和难点:虚拟机的概念;计算机的硬件构成;计算机的工作步骤。
教学媒体和教学方法:使用幻灯片在多媒体教室进行教学;教学中采用讲授与讨论相结合的方法。
教学过程:一、计算机系统简介1.计算机的软硬件概念(1)硬件(2)软件(3)软硬件的关系2.计算机系统的层次结构(1)虚拟机的概念(2)各层虚拟机及与真实机器的层次关系3.计算机的基本组成(1)冯·诺伊曼计算机的特点(2)计算机硬件结构,总线的构成。
讨论、分析直连结构的问题,提出总线思想,并简单介绍总线结构。
(3)计算机的工作步骤提出计算机解决问题的基本步骤计算机基本构成部件的介绍(运算器、存储器、控制器)以计算ax2+bx+c为例分析计算机工作的过程4.计算机的主要技术指标(1)机器字长计算机同时处理的二进制位机器字长与数据总线宽度、存储字长的关系(2)存储容量存储容量的单位主存容量辅存容量(3)运算速度几种计算运算速度的方法并对它们进行比较运算速度的表示单位第二章计算机的发展及应用内容简介:计算机的发展史;计算机的应用领域;计算机的发展展望。
教学目标:了解计算机的产生和发展以及发展思路;了解计算机的应用领域;了解计算机的发展趋势。
教学重点和难点:计算机的应用领域。
教学媒体和教学方法:使用幻灯片在多媒体教室进行教学;教学中采用讲授与讨论相结合的方法。
教学过程:一、计算机的发展史1.计算机的产生和发展现代计算机的研究工作第一台电子计算机的产生计算机的发展阶段计算机的发展规律计算机的发展趋势2.微型计算机的出现和发展微型计算机的发展阶段微型计算机的发展带来的工作、学习、生活方式的变化3.软件技术的兴起和发展软硬件的融合,简介嵌入式发展方向二、计算机的应用1.科学计算和数据处理通过ENIAC进行计算的一个案例,直观体会计算机的计算能力2.工业控制和实时控制3.网络技术应用4.虚拟现实介绍虚拟现实技术的一些应用5.办公自动化和管理信息系统6.多媒体技术7.人工智能三、计算机发展的展望第三章系统总线内容简介:总线的概念;总线的分类;总线的特性和性能指标;总线结构;总线控制。
6.1 无符号数和有符号数寄存器的位数反映无符号数的表示范围8 位 0 ~ 255 16 位 0 ~ 65535带符号的数 符号数字化的数+ 0.101101011小数点的位置+ 110001100小数点的位置– 110011100小数点的位置– 0.101111011小数点的位置真值 机器数1. 机器数与真值2. 原码表示法—整数带符号的绝对值表示x 为真值n 为整数的位数如x = +1110[x ]原 = 0 , 1110[x ]原 = 24 + 1110 = 1 , 1110 x =1110[x ]原 = 0,x 2n> x ≥ 02n x 0 ≥ x > 2n用 逗号 将符号位和数值部分隔开x 为真值如x = + 0.1101[x ]原 = 0 . 1101x = – 0.1101[x ]原 = 1 – (–0.1101) = 1 . 1101x 1 > x ≥ 0[x ]原 =1 – x 0 ≥ x >–1x = – 0.1000000[x ]原 = 1 – (– 0.1000000) = 1 . 1000000x = + 0.1000000[x ]原 = 0 . 1000000用 小数点 将符号位和数值部分隔开用 小数点 将符号位和数值部分隔开2. 原码表示法—小数例 6.1 已知 [x ]原 = 1.0011 求 x 解:例 6.2 已知 [x ]原 = 1,1100 求 x 解:x = 1 – [x ]原 = 1 –1.0011 = –0.0011x = 24 – [x ]原 = 10000 – 1,1100 = –1100– –0.0011 1100由定义得由定义得例 6.4 求 x = 0 的原码解:设 x = +0.0000例 6.3 已知 [x ]原 = 0.1101 求 x解:x = + 0.1101同理,对于整数[+ 0]原 = 0,0000[+0.0000]原 = 0.0000x =0.0000[0.0000]原 = 1.0000[ 0]原 = 1,0000∴ [+0]原 ≠ [0]原根据 定义原码的特点:简单、直观但是用原码作加法时,会出现如下问题:能否 只作加法 ?找到一个与负数等价的正数 来代替这个负数就可使 减 加加法 正 正加加法 正 负加法 负 正加法 负 负减减加要求 数1 数2 实际操作 结果符号正可正可负可正可负负无符号数原码表示(整数)机器数与真值原码表示(小数)6.1 无符号数和有符号数。
第6章计算机的运算方法一、选择题1.unsigned short x=65530;unsigned int y=x;得到y的机器数为()。
[2012年统考]A.00007FFAHB.0000FFFAHC.FFFF7FFAHD.FFFF FFFAH【答案】B【解析】本题主要考查考生的逆向思维过程。
怎么快速地将65530转换成十六进制,考生应该记住对于16位无符号整数的最大值为65535(216-1),其十六进制为FFFFH,那么就可以很轻松地得到65530的十六进制为FFFAH(F-5=A)。
无符号短整型转换成无符号整型只需在高位补0即可。
所以,最终得到y的机器数为y=0000FFFAH。
2.一条C语言程序在一台32位机器上运行。
程序中定义了3个变量x、y和z,其中x和z是int型,y为short型。
当x=127,y=-9时,执行赋值语句z=x+y后,x、y和z 的值分别是()。
[2009年统考]A.x=0000007FH,y=FFF9H,z=00000076HB.x=0000007FH,y=FFF9H,z=FFFF0076HC.X=0000007FH,y=FFF7H,z=FFFF0076HD.x=0000007FH,y=FFF7H,z=00000076H【答案】D【解析】①在计算机中,机器数默认使用补码表示。
②符号位扩展问题:所有扩展位使用符号位填充,即正数用0填充,负数用l填充。
如1001扩充成8位,可以写成lllll001;0111扩充成8位,可以写成00000111。
③强制类型转换:如果一个运算符两边的运算数类型不同,先要将其转换为相同的类型,即较低类型转换为较高类型,然后再参加运算。
对于x:x为int型,说明x占32位的存储空间。
127换成二进制为00000000000000000000000001111111,对应的十六进制为0000007FH,故X的值为0000007FH。
对于y:y为short型,说明y占16位的存储空间。
计组第一次作业 计算机的运算方法1 题目:6.9 当十六进制9BH 和FFH 分别表示为原码、补码、反码、移码和无符号数时,所对应的十进制数各为多少(设机器数采用1位符号)? 答:十六进制9BH 转化成二进制为:10011011,若表示为原码时所对应的十进制数为:-27; 若表示为补码时所对应的十进制数为:-101; 若表示为反码时所对应的十进制数为:-100; 若表示为移码时所对应的十进制数为:101; 若表示为无符号数时所对应的十进制数为:155。
十六进制FFH 转化成二进制为:11111111, 若表示为原码时所对应的十进制数为:-127; 若表示为补码时所对应的十进制数为:-1; 若表示为反码时所对应的十进制数为:-0; 若表示为移码时所对应的十进制数为:1; 若表示为无符号数时所对应的十进制数为:255。
6.10在整数定点机中,设机器数采用1位符号位,写出±0的原码、补码和反码和移码,得出什么结论?答:+0: 原][x = 0,0000000;补][x = 0,0000000;反][x = 0,0000000;移][x = 1,0000000;-0: 原][x = 1,0000000;补][x = 0,0000000;反][x = 1,1111111;移][x = 1,0000000;结论:1.对于正数,原码 = 补码 = 反码 = 移码; 2.[+ 0]原 ≠ [- 0]原,[+ 0]反 ≠ [- 0]反, [+ 0]补 = [- 0]补, [+ 0]移 = [- 0]移;3.对于负数,符号位为 1,其数值部分:原码除符号位外每位取反末位加1→补码,原码除符号位外每位取反→反码,补码与移码只差一个符号位。
6.12 设浮点数格式为:阶码5位(含1位阶符),尾数11位(含1位数符)。
写出12851、 —102427、7.375、—86.5所对应的机器数。
要求如下: (1)阶码和尾码均为原码。
第6章 计算机的运算方法2. 已知X=1a2a3a4a5a (ai 为0或1),讨论下列几种情况时ai 各取何值。
(1)21X > (2)81X ≥ (3)161X 41>≥ 解: (1)若要21X >,只要a1=1,a2~a6不全为0即可。
(2)若要81X ≥,只要a1~a3不全为0即可。
(3)若要161X 41>≥,只要a1=0,a2可任取0或1; 当a2=0时,若a3=0,则必须a4=1,且a5、a6不全为0;若a3=1,则a4~a6可任取0或1;!当a2=1时, a3~a6均取0。
3. 设x 为整数,[x]补=1,x1x2x3x4x5,若要求 x < -16,试问 x1~x5 应取何值 解:若要x < -16,需 x1=0,x2~x5 任意。
(注:负数绝对值大的补码码值反而小。
)4. 设机器数字长为8位(含1位符号位在内),写出对应下列各真值的原码、补码和反码。
-13/64,29/128,100,-87 解:真值与不同机器码对应关系如下:真值-13/64 29/128 100 -87 。
二进制 1100100 -1010111 原码1010 1101 0110 0100 1101 0111;补码 1101 0110 0100 反码11010110 0100`5. 已知[x]补,求[x]原和x 。
[x1]补=; [x2]补=; [x3]补=; [x4]补=;[x5]补=1,0101; [x6]补=1,1100; [x7]补=0,0111; [x8]补=1,0000; 解:[x]补与[x]原、x 的对应关系如下:[x]补!1,01011,11000,0111 1,0000 [x]原无1,1011,1,01000,0111 无 x-1-1011-100,0,0111-100006.设机器数字长为8位(含1位符号位在内),分整数和小数两种情况讨论真值x 为何值时,[x]补=[x]原成立。
计算机组成原理--运算⽅法:加减乘除补码加减法补码加法公式:[x+y]补=[x]补+[y]补补码减法:为了将减法转变为加法,需证明公式: [x-y]补=[x]补+[-y]补(证明)为了求得同时[-y]补,需要证明[-y]补=[y]补+2^-n(意义是[-y]补等于[y]补取反,末位加1)溢出检测溢出的检测可能产⽣溢出的情况两正数加,变负数,上溢(⼤于机器所能表⽰的最⼤数)两负数加,变正数,下溢(⼩于机器所能表⽰的最⼩数)定点原码乘法定点乘法原理n位乘n位积可能为2n位.乘积的最后是所有部分积之和,有n个数相加,⽽FA只有两个输⼊端,机器⼀次只能进⾏两个数的相加,不能进⾏多个数据的加法。
⼿⼯计算中,乘数的每⼀位是0还是1都可直接看见,⽽在计算机中,采⽤放乘数的寄存器的每⼀位直接决定本次相加数是被乘数还是0是很不⽅便的,若采⽤该寄存器的最低⼀位来执⾏这种判断就简便了。
计算机中执⾏乘法时,积的符号位由被乘数和乘数的符号位通过⼀个半加器(即异或门)实现。
数值部分的运算规则是:从最低位Y0开始,当乘数Yi为1时,将上次部分积加上被乘数的绝对值,然后右移⼀位,得到新的部分积;当Yi为0时,则写下全0。
然后再对乘数Y的⾼⼀位进⾏类似乘法运算。
重复“加—右移”操作N次,可得到最后的乘积。
R0存放部分积,R2存放被乘数,R1存放乘数R0清零,R2存放被乘数,R1存放乘数。
乘法开始时,“启动”信号时控制CX置1,于是开启时序脉冲T,当乘数寄存器R1最末位为“1“时,部分积Z和被乘数X在加法器中相加,其结果输出⾄R0的输⼊端。
⼀旦控制脉冲T到来,控制信号LDR0使部分积右移1位,与此同时,乘数寄存其R1也在控制信号LDR1作⽤下右移⼀位,且计数器I记数⼀次;将步骤三重复执⾏N次当计数器I=n时,计数器I的溢出信号使控制触法器CX置0,关闭时序脉冲T,乘法宣告结束原码算法存在的缺点:⼀是符号位需要单独运算,最后给运算结构以正确的符号;⼆是对于采⽤补码存储的机器,从存储器中取出的是操作数的补码,需先将其转换成原码,这样很不⽅便,⽽且影响速度。