第二章 计算方法和运算器(十二)
计算机组成原理华科版第二章运算方法与运算器课件
4
计算机组成原理
⑵补码表示法
第二章 运算方法与运算器
• 由于补码在作二进制加、减运算时较方便,所以 在计算机中广泛采用补码表示二进制数。
• 补码运算中,可以用加法代替减法,节省元件, 降低成本。
5
计算机组成原理
第二章 运算方法与运算器
⑵补码表示法
原码求补码方法:正数不变(相同)。负数符号位不变, 数值位求反加1
第二种浮点表示的格式为
1,10001001,01111111110000000000000
17
计算机组成原理
⑶ 浮点数的表示举例
第二章 运算方法与运算器
某机用32b表示一个数,阶码部分占8b(含一位符号 位2格5式6).。5,,尾x数2=1部27分/2占56,2 4试b(写含出一x1和位x符2的号两位种)浮。点数设表x1示=-
最小负数 最大负数
最小正数
最大正数
1.0000000 1.1111111
0.0000001
0.1111111
-1
-2-7
2-7
1-2-7
11
计算机组成原理
第二章 运算方法与运算器
定点整数的表示范围:
①设字长为8b,用原码表示时,其表示范围如下:
最小负数 最大负数 最小正数 最大正数
11111111 10000001 00000001 01111111
计算机组成原理
1.真值与机器数
第二章 运算方法与运算器
采用正、负符号加上二进制的绝对值,则这种 数值称为真值。
将正负号分别用一位数码0和1来代替,一般将 这种符号位放在数的最高位。这种在机器中使 用的连同数符一起数码化的数,称为机器数。
1
计算机组成原理
计算机原理第二章运算方法和运算器
算术移位时,符号位保持不变,其 余位进行相应移动。算术左移相当 于乘以2,算术右移相当于除以2并 向下取整。
乘法运算方法
原码一位乘法
将被乘数和乘数均取原码,从乘数的最低位开始逐位判断,若为1则加上被乘 数的原码,若为0则不变。重复此过程直至乘数所有位均判断完毕。
补码一位乘法
将被乘数和乘数均取补码,从乘数的最低位开始逐位判断,若为1则加上被乘数 的补码并考虑进位,若为0则只考虑进位。重复此过程直至乘数所有位均判断完 毕。
节能技术
采用节能技术,如动态电压调整、睡眠模式等, 以降低运算器在空闲或低负载时的功耗。
06
计算机中数的表示和运算 方法扩展
大数表示和运算方法
大数的概念
超出计算机基本数据类型表示范围的整数或浮点数。
大数表示方法
采用多精度表示法,将大数拆分成多个基本数据类型的数进行表示 和存储。
大数运算方法
设计相应的大数运算算法,如大数加法、减法、乘法、除法等。
转换方法
根据机器数的表示方法,通过相应的运算将其转换为真值。
定点数与浮点数
定点数
表示范围与精度
小数点位置固定的数,可表示整数或 小数。
定点数表示范围有限,精度较高;浮 点数表示范围大,但精度相对较低。
浮点数
小数点位置可变的数,由阶码和尾数 两部分组成,可表示大范围的数值。
02
基本运算方法
定点加减法运算
运算流水线设计
在算术逻辑单元(ALU)中采用流 水线技术,将复杂的运算过程分解 为多个简单的运算步骤,提高运算 速度。
超标量流水线设计
在一个周期内同时发射多条指令, 通过多个功能部件并行执行,进一 步提高处理器的性能。
第2章运算方法与运算器ppt课件
INFO DEPT@ZUFE HANGZHOU.CHINA
6
数制转换原则:
• 若 两个有理数相等=> • 则 这两个有理数的整数部分、小数部分
应分别相等。 • 因此,数制转换原则为:
整数部分、小数部分、分别进行转换
INFO DEPT@ZUFE HANGZHOU.CHINA
7
1. 任意进制数转换为十进制数
• (B3.B8)16 =B×161+3×160+B×16-1+8×16-2 =11×161+3×160+11×16-1+8×16-2 =176+3+0.6875+0.03125 =(179.71875)10
INFO DEPT@ZUFE HANGZHOU.CHINA
9
2.十进制数转换为任意进制数
• 转换方法:整数部分除基取余 • ① 把被转换的十进制整数除以基数R,取其余数即为R
• 1 3 4.5 6
• (1011100.10111)2=(134.56)8
• 01011100.10111000
•
5 C .B 8
• (1011100.10111)2=(5C.B8)16
INFO DEPT@ZUFE HANGZHOU.CHINA
15
2.1 数据信息的表示方法
2.1.1 数值数据编码的表示方法 2.1.2 非数值数据编码的表示方法 2.1.3 信息抗干扰编码的表示方法
• 因为16=24,8=23 • 二进制数与八进制数之间的转换方法: • 整数部分从最低有效位开始,每三位二进制数
对应一位八进制数,不足三位高位补“0”。 • 小数部分从最高有效位开始,每三位二进制数
对应一位八进制数,不足三位,低位补“0”。 • 二进制与十六进制数间的转换方法: • 整数部分从最低有效位开始,每四位二进制数
运算方法和运算器
64位的浮点数中符号位1位,阶码域11位,尾 数域52位,指数偏移值是1023。因此规格化 的64位浮点数x的真值为: x=(-1)S×(1.M)×2E-1023
e=E-1023 一个规格化的32位浮点数x的真值表示为
x=(-1)S×(1.M)×2E-127
e=E-127
2019/10/31
2、机器中表示
阶符
阶码
指数E
尾数M,纯小数
数符
尾数
2019/10/31
12
2.1.1数据格式
3、IEEE754标准(规定了浮点数的表示格式,运 算规则等)
规则规定了单精度(32)和双精度(64)的基本格式. 规则中,尾数用原码,指数用移码(便于对阶和比较)
2019/10/31
13
2.1.1数据格式
x2=-123, 求:[X2]原,[X2]反 ,[X2]补,[X2]移
2019/10/31
30
[例7]将十进制真值(-127,-1,0,+1,+127)列 表表示成二进制数及原码、反码、补码、移码 值。
2019/10/31
31
[例8]设机器字长16位,定点表示,尾数15位,数符 1位,问:定点原码整数表示时,最大正数是多少? 最小负数是多少
S=0, E=4+127=131, M=010010011 最后得到32位浮点数的二进制存储格式为:
01000001101001001100000000000000=(41A4C000)16
2019/10/31
18
2.1.1数据格式
4、十进制数串的表示
字符串形式,一个字节存放一个十进制数 BCD(压缩),一个字节存放两者个十进制数 编码方式
《计算机组成与体系结构》白中英第三版课后答案
[x]补=0.11011 [y]补=1.00001
(0) 1 1 0 1 1 ×) (1) 0 0 0 0 1 ----------------------------------
(0) 1 1 0 1 1 (0) 0 0 0 0 0 (0) 0 0 0 0 0 (0) 0 0 0 0 0 (0) 0 0 0 0 0 (0) (1) (1) (0) (1) (1) ----------------------------------------(1) 0 0 1 0 1 1 1 0 1 1
(略)
13. "计算机应用"与"应用计算机"在概念上等价吗?用学科角度和计算机系统的层次结构来寿 命你的观点。
课后答案网
www.khd课后a答w案.网com
(略)
第二章运算方法和运算器 习题参考答案
1. 写出下列各数的原码、反码、补码、移码表示(用 8 位二进制数)。其中 MSB 是最高位(又 是符号位)LSB 是最低位。如果是小数,小数点在 MSB 之后;如果是整数,小数点在 LSB 之后。 (1) -35/64 (2) 23/128 (3) -127 (4) 用小数表示-1 (5) 用整数表示-1
2. 数字计算机如何分类?分类的依据是什么?
解:分类:
数字计算机分为专用计算机和通用计算机。通用计算机又分为巨型机、大型机、 中型机、小型机、微型机和单片机六类。
分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。 通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、 指令系统规模和机器价格等因素。
[x]移=0.0111010
计算机组成原理第四版第二章
+ [y]补 0. 0 1 0 1 [x+y]补 0. 1 1 1 0
所以x+y=+0.1110
Back
第二章 运算方法和运算器
B 补码减法
➢ 公式:
[x-y]补=[x]补-[y]补=[x]补+[-y]补
➢ 举例
已知 x=+0.1101 , y=+0.0110,求x-y。 解: [x]补=0.1101 [y]补=0.0110 ,[-y]补=1.1010 [x]补 0. 1 1 0 1 + [-y]补 1. 1 0 1 0 [x-y]补 1 0. 0 1 1 1
最大正数,称为“上溢” 或“正溢出”
两个负数相加,结果 小于机器所能表示的最
小负数,称为“下溢” 或“负溢出”
判断方法
举例说明
Back
第二章 运算方法和运算器
溢出检测方法常用以下两种方法:
1.采用双符号位(变形补码)判断方法:
变形补码: “00”表示正数、“11”表负数,两符号位同时参加运算, 运算结果符号出现01或10表明溢出。
发生溢出;而在浮点运算时,运算结果超出尾数的表示范围 却并不一定溢出,只有当阶码也超出所能表示的范围时,才 发生溢出。
Back
3.十进制数串的表示方法
➢ 目前,大多数通用性较强的计算机都能直接 处理十进制形式表示的数据。十进制数串 在计算机内主要有两种表示形式:
➢ 1.字符串形式 ➢ 2.压缩的十进制数串形式
➢ 计算机采用定点数表示时,对于既有整数又有小数的原始数据,需要设 定一个比例因子,数据按其缩小成定点小数或扩大成定点整数再参加运 算,运算结果,根据比例因子,还原成实际数值。若比例因子选择不当, 往往会使运算结果产生溢出或降低数据的有效精度。
计算机原理第二章运算方法和运算器
1. 整数转换 →
2 58 2 29 2 14 27 23 21 0
“ 除2 取余” 法
余0 余1 余0 余1 余1 余1
∴ (58)10=(111010)2
低位 高位
2. 纯小数转换 → “乘 2 取整 ” 法
0. 6 2 5
×
2
1. 2 5 0
1
×
2
0. 5 0 0
0
×
2
1. 0 0 0
1
∴ (0.625)10=(0.101)2
补码浮点表示
阶码 绝对值最大负数: 01111111
绝对值最小负数: 10000000
最大正数:
01111111
尾数 10000000
11111111
01111111
真值
2(27 1) .(-1) =-2127 2-27.(-2-7)=-2-135
2(27 1) .(1-2-7)
非零最小正数: 10000000
X=-0.1001111 ,则〔X〕原=1.1001111, 〔X〕反=1.0110000。
公式表示:若二进制小数 X=±0.x1x2…xn,则
〔X〕反=
X (2-2-n)+X
0 X 1 1 X 0
其中n代表二进制位数
〔例2〕X=+0.1101111,则〔X〕反=X=0.1101111 X=-0.1101111,则〔X〕反=(2-2-7)+X =10.0000000-0.0000001+(-0.1101111) =1.1111111-0.1101111=1.0010000
n1
a i 8 i im
〔例2〕 ( 703.64 )8 7 82 081 380 681 482 ( 451.8125 )10
经典:计算机组成原理-第2章-运算方法和运算器
第二章:运算方法和运算器
2.1 数据与文字的表示方法 2.2 定点加法、减法运算 2.3 定点乘法运算 2.4 定点除法运算 2.5 定点运算器的组成 2.6 浮点运算方法和浮点运算器
其中尾数域所表示的值是1.M。因为规格化的浮点数的尾数域最
左位(最高有效位)总是1。故这一位经常不予存储,而认为隐藏
在小数点的左边。
64位的浮点数中符号位1位,阶码域11位,尾数域52位,指数偏
移值是1023。因此规格化的64位浮点数x的真值为:
x=(-1)s ×(1.M) × 2E-1023 e=E-1023
[X]反=1.x1x2...xn 对于0,有[+0]反=[-0]反之分:
[+0]反=0.00...0
[-0]反=1.11...1
我们比较反码与补码的公式
[X]反=2-2-n+X
[X]补=2+X
可得到 [X]补=[X]反+2-n
8
若要一个负数变补码,其方法是符号位置1,其余各位0变1,1变 0,然后在最末位(2-n)上加1。
10100.10011=1.010010011*24 e=4 于是得到:S=0,E=4+127=131=10000011, M=010010011 最后得到32位浮点数的二进制存储格式为: 0100 0001 1010 0100 1100 0000 0000 0000=(41A4C000)164
第二章运算方法与运算器(浮点数的加减法,IEEE754标准3264浮点规格化数)
第⼆章运算⽅法与运算器(浮点数的加减法,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.浮点数加减法(我⽤的是补码计算) 这⾥⾯涉及的东西⽐较多,每⼀步都需要仔细,错⼀步结果就错了。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川警安职业学院标准教案纸
2.6.3 定点运算器的基本结构
运算器包括ALU、阵列乘除器、寄存器、多路开关、三态缓冲器、数据总线等逻辑部件。
运算器的设计,主要是围绕着ALU和寄存器同数据总线之间如何传送操作数和运算结果而进行的。
在决定方案时,需要考虑数据传送的方便性和操作速度,在微型机和单片机中还要考虑在硅片上制作总线的工艺。
计算机的运算器大体有如下三种结构形式:
1.单总线结构的运算器
单总线结构的运算器如图2-20(a)所示。