运算方法和运算器
计算机组成原理第二章课件(白中英编-科学出版社)
计算机组成原理
十进制整数转换为二或十六进制数
ห้องสมุดไป่ตู้
演示
整数部分转换:用除法
• 十进制数整数部分不断除以基数2或16,并记下余
数,直到商为0为止 • 由最后一个余数起逆向取各个余数,则为转换成的 二进制和十六进制数
126=01111110B 126=7EH
计算机组成原理
7
十进制小数转换为二或十六进制数
64位双精度规格化浮点数
IEEE 754标准
E=1~2046 e=-1022~+1023 表达的数据范围(绝对值) : 最小值: e=-1022,M=0(1.M=1) 十进制表达:2-1022≈2.23×10-308 最大值: e=1023,M=11…1(52个1) 1.M=1.11…1 (52个1) =2-2-52 十进制表达:(2-2-52)×21023 ≈ 2×21023 ≈1.79×10308
• 整数从左向右 • 小数从右向左 • 每4个二进制位对应一个十六进制位
00111010B=3AH,F2H=11110010B 十六进制数的加减运算类似十进制
• 逢16进位1,借1当16
23D9H+94BEH=B897H A59FH-62B8H=42E7H
计算机组成原理
9
真值和机器数
真值:现实中真实的数值 机器数:计算机中用0和1数码组合表达的数值 定点数:固定小数点的位置表达数值的机器数
目录
☼
☼
☼ ☼ ☼ ☼ ☼ ☼ ☼
第一章 第二章 第三章 第四章 第五章 第六章 第七章 第八章 第九章
计算机系统概论 运算方法和运算器 存储系统 指令系统 中央处理器 总线系统 外围设备 输入输出系统 并行组织
计算机组成原理华科版第二章运算方法与运算器课件
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
计算机组成原理
西安电子科技大学_计算机组成与体系结构_第3章运算方法与运算器_课件PPT
17
3.1.1 加减运算 4. n位加法器的实现
2) 先行进位加法器
三级门的延时
P3* G3*
C4
C3
C2
C1
≥1
≥1
≥1
≥1
≥1
&
&& &
&
&& &
&&
&
G3
&
X3 Y3
P3
≥1
X3 Y3
G2
&
X2 Y2
P2
≥1
G1 P1
& ≥1
G0 P0
& ≥1
X2 Y2 X1 Y1 X1 Y1 X0 Y0 X0 Y0 C0
x xxxxxxx
10
3.1.1 加减运算 2. 溢出判断 3) 根据运算结果的符号位和进位标志判别
适用于两同号数求和或异号数求差时判别溢出。溢出 的逻辑表达式为:
VF=SF⊕CF
0 xxxxxxx 1 xxxxxxx + 0 xxxxxxx + 1 xxxxxxx
c s xxxxxxx c s xxxxxxx
01100010 …98
11000001 … -63 + 11011101 …11111 … 63 + 11011101 … -35
100011100 … 28
7
3.1.1 加减运算 2. 溢出判断
当两个同符号的数相加(或者是相异符号数相减)
时,运算结果可能发生溢出。 00111111 …63
补码一位乘法:校正法,布斯(Booth)法
补码二位乘法
阵列乘法器
适于流水线工作的阵列乘法器
32
3.1.2 乘法运算 1. 原码乘法运算
1) 原码一位乘法的法则 假定被乘数X和乘数Y为用原码表示的纯小数,
计算机原理第二章运算方法和运算器
算术移位时,符号位保持不变,其 余位进行相应移动。算术左移相当 于乘以2,算术右移相当于除以2并 向下取整。
乘法运算方法
原码一位乘法
将被乘数和乘数均取原码,从乘数的最低位开始逐位判断,若为1则加上被乘 数的原码,若为0则不变。重复此过程直至乘数所有位均判断完毕。
补码一位乘法
将被乘数和乘数均取补码,从乘数的最低位开始逐位判断,若为1则加上被乘数 的补码并考虑进位,若为0则只考虑进位。重复此过程直至乘数所有位均判断完 毕。
节能技术
采用节能技术,如动态电压调整、睡眠模式等, 以降低运算器在空闲或低负载时的功耗。
06
计算机中数的表示和运算 方法扩展
大数表示和运算方法
大数的概念
超出计算机基本数据类型表示范围的整数或浮点数。
大数表示方法
采用多精度表示法,将大数拆分成多个基本数据类型的数进行表示 和存储。
大数运算方法
设计相应的大数运算算法,如大数加法、减法、乘法、除法等。
转换方法
根据机器数的表示方法,通过相应的运算将其转换为真值。
定点数与浮点数
定点数
表示范围与精度
小数点位置固定的数,可表示整数或 小数。
定点数表示范围有限,精度较高;浮 点数表示范围大,但精度相对较低。
浮点数
小数点位置可变的数,由阶码和尾数 两部分组成,可表示大范围的数值。
02
基本运算方法
定点加减法运算
运算流水线设计
在算术逻辑单元(ALU)中采用流 水线技术,将复杂的运算过程分解 为多个简单的运算步骤,提高运算 速度。
超标量流水线设计
在一个周期内同时发射多条指令, 通过多个功能部件并行执行,进一 步提高处理器的性能。
第三章运算方法与运算器(定点数除法)
■ 当上述结果小于0时,商上0,恢复余数,然后左移一位,减除数比较,即:
(2Ri-Y)+Y= 2Ri 2*2Ri -Y = 4Ri –Y
■ 若当结果小于0时,商上0,不恢复余数而直接将余数左移一位,加Y:
2(2Ri-Y)+Y = 2*2Ri -2Y + Y = 4Ri –Y
第三章 3.6 定点数除法
1 00.0011
1
00.0110 0.11
+[–Y]补 11.0101
0 11.1011
0
11.0110 0.110
+[Y]补 00.1011
1 00. 0001 0.1101 1
减Y比较
余数 <0 商上零 左移一位 加Y比较 余数>0,商上1 左移一位 减Y比较 余数>0,商上1 左移一位 减Y比较 余数<0 商上零 左移一位 加Y比较
■重复上述过程直到商达到所需要的位数为止。
第三章 3.6 定点数除法
2
原码恢复余数除法
已知 X=0.1001,Y=- 0.1011,用原码一位除法求X/Y
解:[X]原= 0 .1001 [Y]原= 1.1011
[|X|]补=0.1001 [|Y|] 补=0.1011 [-|Y|]补 =1.0101
最后结果: 商Q = (X0 Y0).1101=1.1101 余数 R = 0.0001 * 2 -4
该方法存在的不足: 运算步数不确定
左移一位 减Y比较
1 余数>0,商上1,移商
第三章 3.6 定点数除法
3
原码加/减交替除法运算方法(不恢复余数法)
■ 设某次余数为Ri,将Ri左移一位减除数进行比较并上商,即:
计算机组成原理第四版第二章
+ [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.压缩的十进制数串形式
➢ 计算机采用定点数表示时,对于既有整数又有小数的原始数据,需要设 定一个比例因子,数据按其缩小成定点小数或扩大成定点整数再参加运 算,运算结果,根据比例因子,还原成实际数值。若比例因子选择不当, 往往会使运算结果产生溢出或降低数据的有效精度。
运算器与运算方法
补码一位乘法
[P0]补=0;
1
[P1]补= [2-1(P0+(0-yn)X]补
2
[P2]补= [2-1(P1+(yn-yn-1)X]补
3
[P3]补= [2-1(P2+(yn-1-yn-2)X]补
4
….
5
[Pi+1]补=[2-1(Pi+(yn-i+1-yn-i)X]补
6
有递推公式
补码一位乘法
已知[X]原=01011,[Y]原=11101,求[X/Y]原 先计算商的符号位:0⊕1=1 运算中要减Y,用+[-|Y|补]实现,所以先求[-Y]补 运用运算规则完成计算 演示3-16.swf
在恢复余数的除法中,当部分余数和除数做为负数时,要多做一次+Y操作,降低了算法执行速度,控制线路也复杂。所以普遍采用不恢复余数法。 不恢复余数法中,设恢复余数前第i次余数为Ri’,恢复余数后为Ri,那么 先计算Ri’=2Ri-1-Y, 当Ri’>=0时,上商1,余数不恢复,Ri=Ri’,计算Ri+1,左移一位,得Ri+1=2Ri-Y 当Ri’<0时,上商0,应做恢复余数操作Ri=Ri’+Y,然后计算Ri+1=2Ri-Y=2(Ri’+Y)-Y=2Ri’+Y
乘数的每2位有4种组合,每种组合对应操作为 00 Pi+1=2-2Pi 01 Pi+1=2-2(Pi+X) 10 Pi+1=2-2(Pi+2X) ;2X为X左移1位值 Pi+1=2-2(Pi+3X);3X用4X-X替代 =2-2(Pi+4X-X) ;-X用[-X]补实现 =2-2(Pi-X)+X ;+X用T记录,求Pi+2时补 Pi+2=2-2(Pi+1….)
经典:计算机组成原理-第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
计算机组成原理第3章 运算器和运算方法
第三章运算方法和运算器3.1补码的移位运算1、左移运算:各位依次左移,末位补0对于算术左移,若没有改变符号位,左移相当于乘以2。
2、右移运算:算术右移:符号位不变,各位(包括符号位)依次右移。
(相当于除以2)逻辑右移:最高位补0,其余各位依次右移例1:已知X=0.1011 ,Y=-0.0101 求 [0.5X]补;[0.25X]补;[-X]补;2[-X]补;[0.5Y]补;[0.25Y]补; [-Y]补;2[-Y]补[X]补=0.1011 [Y]补=1.1011[0.5X]补=0.01011 [0.5Y]补=1.11011[0.25X]补=0.001011 [0.25Y]补=1.111011[-X]补=1.0101 [-Y]补=0.01012[-X]补=0.1010 (溢出) 2[-Y]补=0.10103.2定点加减法运算及其实现3.2.1 补码加减法运算方法由于计算机中的进行定点数的加减运算大都是采用补码。
(1)公式:[X+Y]补=[X]补+[Y]补[X-Y]补=[X]补+[-Y]补(证明过程见教材P38)例1 X=0.001010 Y=-0.100011 求[X-Y]补,[X+Y]补解:[X]补=0.001010 [-Y]补=0.100011则 [X-Y]补=[X]补+[-Y]补=0.001010 + 0.100011=0.101101 [X]补=0.001010 [Y]补=1.011101则 [X+Y]补=[X]补+[Y]补=0.001010 + 1.011101=1.100111例2:已知X=+0.25,Y=-0.625,求X+Y; X-Y写出计算的过程.例3:已知X=25,Y=-9,求X+Y; X-Y写出计算的过程.例4:已知X=-25,Y=-9,求X+Y; X-Y写出计算的过程.解: (8位二进制表示)例2: X=0.0100000 Y=-0.1010000[X]补=0.0100000 [Y]补=1.0110000则 [X+Y]补=[X]补+[Y]补=0.0100000 + 1.0110000=1.1010000[X+Y]原=-0.0110000=(-0.375)D[X]补=0.0100000 ,[-Y]补=0.1010000则 [X-Y]补 = [X]补+[-Y]补 = 0.0100000+0.1010000=0.1110000[X+Y]原 = 0.1110000 =(0.875)D例3: X=+0011001 Y=-0001001[X]补=00011001,[Y]补=11110111则 [X+Y]补 = [X]补+[Y]补= 00011001 + 11110111= 00010000[X+Y]原 =+0010000=(+16)D[X]补= 00011001 ,[-Y]补= 00001001则 [X-Y]补 = [X]补+[-Y]补= 00011001 + 00001001= 00100010[X+Y]原 = +0100010 =(34)D例4: X=-0011001 Y=-0001001[X]补=11100111,[Y]补=11110111则 [X+Y]补 = [X]补+[Y]补= 11100111 + 11110111[X+Y]原 =-00100010=(-34)D[X]补= 11100111 ,[-Y]补= 00001001则 [X-Y]补 = [X]补+[-Y]补= 11100111 + 00001001= 11110000[X+Y]原 = -0010000 =(-16)D3.2.2 定点加减法运算中的溢出问题溢出:运算结果大于机器所能表示的最大正数或者小于机器所能表示的最小负数.溢出只是针对带符号数的运算.比如:[X]补=0.1010,[Y]补=0.1001,那么[X]补+[Y]补=1.0011(溢出)溢出是一种错误,计算机中运算时必须能够发现这个现象,并加以处理判断溢出的方法:1、采用变形补码法[X+Y] 变补=[X] 变补+[Y] 变补[X-Y] 变补=[X] 变补+[-Y] 变补例1 X=0.1011 Y=0.0011 求[X+Y]补解: [X]变补 = 00.1011, [Y]变补 = 00.0011[X+Y]变补 = 00.1011 + 00.0011 = 00.1110所以 [X+Y]补 = 0.1110例2 X=0.1011 Y=0.1001 求[X+Y]补解: [X]变补 = 00.1011 [Y]变补 = 00.1001[X+Y]变补 = 00.1011 + 00.1001 = 01.0100运算结果的两符号位是01,不相同,发生溢出,因第一符号位是0,代表正数,所以称这种溢出为“正溢出”。
计算机组成原理与系统结构运算方法与运算器
3.3.1 浮点加减运算
1. 浮点数加减法的运算法则
1) 对阶 2) 尾数进行加(减)运算 3) 规格化
(1) 左规。 (2) 右规。
4) 舍入处理
(1) 截(尾)断法 (2) 末位恒置1法 (3) 0舍1入法
20
2. 浮点数加减法 运算流程
3.3.1 浮点加减运算
3. 浮点数加减法 运算实例
1) 行波进位加法器 2) 先行进位加法器
3.1.1 加减运算
5
3.1.1 加减运算
5. BCD数加法器
1) 概述
2) 8421 BCD码
(1) 定义。
(2) 加法运算。
(3) 校正。
6. 移码加减运算
1) 运算法则
2) 移码运算应注意的问题
6
1. 原码一位乘法运算
1) 原码一位乘法的法则 2) 原码一位乘法的实现思路
3.2.1 单元电路
15
1. 74181的引线
3.2.2 算术单元
2. 级联工作
16
1. 三种基本结构
3.2.3 运算器的结构
17
2. 计算机简化框图
3.2.3 运算器的结构
18
3.3 浮 点 运 算
有关浮点数的定义、 规格化等问题已在第 2章中作了详细说明, 本节只描述浮点数的 各种运算。
(1) 手工乘法运算。 (2) 思路流程。
3) 原码一位乘法器框图
3.1.2 乘法运算
7
3.1.2 乘法运算
2. 原码二位乘法运算 3. 补码一位乘法运算
1) 校正法 2) 布斯法
(1) 算法法则。 (2) 补码一位乘法器(布斯法)框图。
8
4. 补码二位乘法运算 5. 阵列乘法器
运算方法与运算器
16、若寄存器内容为11111111,若它等于+127,则寄存 器内容为()码;若它等于-1,则为()码。
17、若寄存器内容为00000000,若它等于-128,则寄存 器内容为()码;
18、 若寄存器内容为10000000,若它等于-128,则寄存 器内容为()码;
定点数的乘/除运算; 溢出概念和判别方法;
3、浮点数的表示与运算
(1)浮点数的表示:浮点数的表示范围;IEEE754标 准 (2)浮点数的加/减运算
4、算术逻辑单元ALU
(1)串行加法器和并行加法器 (2)算术逻辑单元ALU的功能和结构
误点疑点解惑(一)
1、真值和机器数的区别 2、模与补码表示法 3、原码和补码的区别 4、定点数的表示范围 5、浮点数的表示范围 6、浮点数规格化 7、移码偏置值的选择 8、定点数与浮点数的比较 9、3种汉字编码的区别 10、十进制数的BCD编码
立
27、补码定点整数10010101右移一位后的值是()
28、补码定点整数0101 0101左移2位后的值是()
29、补码的加减法是指()
30、在补码加减法中,用两位符号位判断溢出,判断规 则是怎样的?
31、补码相加,采用一位符号位,什么情况表示溢出?
32、变补操作的含义是(),如何实现变补操作?
33、原码乘法的运算规则是怎样的?
38、为什么现代计算机都用补码来表示整数?
39、假设有两个整数x和y,x=-68,y=-80,采用补码表示(含1位 符号位),x和y分别存放在寄存器A和B中。另外,还有两个 寄存器C和D。A,B,C,D都是8位寄存器。请回答下列问题(用 十六进制表示二进制序列):
计算机组成原理第3章
补码加、减运算举例
【例】已知x =-0.10111,y=-0.10001,求 1/2(x+y) 。 解: ∵[x]变补=11.01001,[y]变补=11.01111, ∴[ 1/2x]变补=11.10101,[ 1/2y]变补=11.10111;[ 1/2x] 变补是对[x]变补右移一位得到的,由于移位时丢掉了最低位1, 所以对[x]变补右移一位得到的结果(11.10100)进行修正, 即在最低位加1,便得到[ 1/2x]变补。 [ 1/2(x+y)]变补= [ 1/2x]变补+[ 1/2y]变补=11.10101+ 11.10111=11.01100 溢出判断:由于结果的双符号位相同,未产生溢出,运算结果正 确
2、补码加、减运算具体实现
补码表示的数的加减运算可以采用同一个电路实现。其核 心部分是全加器(运算电路的延迟时间
则全加器的Si的时间延迟为6T(每级异或门的延迟为3T),Ci+1的 时间延迟为5T。 则:一个n位的行波进位加法器的时间延迟ta为: ta=n×2T+9T
原码一位乘法举例
举例:假定 X=0.1101 Y=0.1011
原码一位乘法实现电路
实现原理框图:
Cj A Af CR 加法器 =1 Cn C Cn 移 位 脉 冲
&
& Bf C f Cn CT Q
启动
时钟脉冲
B
结束
2.2 2、原码两位乘法原理
两位乘数的取值可以有四种可能组合,每种组合对应于以下操作: 00 相当于0×X,部分积Pi右移2位,不进行其它运算; 01 相当于1×X,部分积Pi+ X后右称2位; 10 相当于2×X,部分积 Pi+ 2X后右移2位; 11 相当于3×X,部分积 Pi + 3X后右移2位。 上面出现了 + 1X, + 2X, + 3X 三种情况,+X 容易实现,+2X可把X左移1 位得2X,在机器内通常采用向左斜1位传送来实现。可是+3X一般不能一次完成, 如分成两次进行,又降低了计算速度。解决问题的办法是备: 以 +(4X-X) 来 代替 +3X运算,在本次运算中只执行 -X, 而 +4X 则归并到下一步执行,因为 下一步运算时,前一次的部分积已右移了两位,上一步欠下的 +4X 在本步已 变成 +X。实际线路中要用一个触发器C来记录是否欠下+4X的操作尚未执行, 若是,则1→C。因此实际操作要用Yi-1 Yi C三位的组合值来控制乘法运算操 作,运算规则如表2.12所示。
运算方法和运算器
第二章运算方法与运算器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表示的编码,所以称为非数值数据。
白中英计算机组成原理第2章-运算方法与运算器
2024年7月16日星期二
5
2.1 数据与文字的表示方法
2.1.1 数据格式 2.1.2 数的机器码表示 2.1.1 数据格式 2.1.3 字符与字符串的表示方法 2.1.4 汉字的表示方法 2.1.5 校验码
2024年7月16日星期二
6
2.1.1 数据格式——定点数
2024年7月16日星期二
3
2.0 数据的类型(1/2)
按数制分:
十进制:在微机中直接运算困难;
二进制:占存储空间少,硬件上易于实现,易于运算;
十六进制:方便观察和使用;
二-十进制:4位二进制数表示1位十进制数,转换简单。 按数据格式分:
真值:没有经过编码的直观数据表示方式,其值可带正负号, 任何数制均可;
-8 1000 0000 -7 1001 0001 -6 1010 0010 …… …… ……
可以比较直观地判断两个数据的大小; 0 0000 1000
浮点数运算时,容易进行对阶操作;
+1 0001 1001
表示浮点数阶码时,容易判断是否下溢; …… …… ……
当阶码为全0时,浮点数下溢。
+7 0111 1111
优点 与真值对应关系简单;
缺点 参与运算复杂,需要将数值位与符号位分开考虑。
2024年7月16日星期二
11
补码表示法的引入(1/3)
要将指向5点的时钟调整到3点整,应如何处理?
5-2=3
2024年7月16日星期二
5+10=3(12自动 丢失。12就是模)
12
补码表示法的引入(2/3)
继续推导: 5-2=5+10(MOD 12) 5+(-2)=5+10(MOD 12) -2=10(MOD 12)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
整理ppt
3
§2-1 数制与转换
数据信息分为:数值数据和非数值数据; 数值数据指该数据有确定的数值。表示数 值数据的三要素:小数点、进位计数制和符 号。 非数值数据是指文字、符号等。
整理ppt
4
数制中所使用的数码的个数称为“基数” r ;
某数制的数中每一位所具有的值称为 “权”ri
进位计数制
中文编码
汉字输入码:为便于汉字进行输入时的编码,将汉字代码 化。
汉字机内码:用于汉字信息的存储、交换、检索等操作的 机内代码。一般用两个字节表示。
汉字字型码:汉字输出时的编码。用点阵表示。
整理ppt
16
数值信息的编码
在选择计算机数值信息的表示方式时需要考 虑的主要因素有以下几点:
① 要表示的数的类型; ②可能遇到的数值范围; ③数值精确度; ④数据存储和处理所需要的硬件代价
整理ppt
7
(13.8125)10
首先,转换整数部分13
2 13
26
1
23
0
21
1
0
1
结果:1101
然后,转换小数部分0.8125
0.8125*2=1.625
1
0.625*2 =1.25
1
0.25*2 =0.5
0
0.5*2
=1.0
1
小数结果:0.1101
综合结果为
(13.8125)10
(1101.1101)2
定点小数X表示: Ns. N1 N2 … Nn
定义: [ X ]原=
X, 0 ≤ X < 1
1-X, -1 < X ≤ 0
定点整数X表示:Ns N1 N2 … Nn
定义: [ X ]原=
X, 0 ≤ X < 2n
2n-X, - 2n < X ≤ 0
整理ppt
20
数值数据—原码表示法
实例:X1 = 0.10110 -0.10110 [ X ] 原= 0.10110 1.10110
整理ppt
15
字符编码
用一定位数的二进制数“0”和“1”进行编码给出。
常用的字符编码ASCII (American Standard Code for Information Interchange)码。 ASCII码是美国信 息交换标准代码。包括0-9十个数字,大小写英文字母及 专用符号等95种可打印字符。另有33不可打印字符,被 用于控制码。
整理ppt
14
§2-2 数据在计算机中的表示
所谓编码,就是用少量简单的基本符号,选用一定的 组合规则,以表示出大量复杂多样的信息。
常用的信息分为: 定点数(fixed-point)
数值信息 浮点数(floating-point) 字符(character)
非数值信息 汉字(Chinese character 逻辑数据(logical data)
整理ppt
17
数值数据—真值与机器数
对二进制来说,真值与机器数的区别主要在符 号 的表示方法上。
数值前正号用“+”表示,负号用“-”表示的数 称为真值;数值前正号用“0”表示,负号用“1”表 示的数称为机器数。
如:真值:
+0.1011 -0.0010
机器码(原码): 0.整1理0pp1t 1 1.0010
整理ppt
22
数值数据—原码表示法
原码的优点是:简单易懂。 缺点是:难以用于加减运算。
原因是:如果是异号相加,则要进行减法运算。首 先要比较绝对值的大小,然后大数减小数,最后 确定符号。
注:如果转换为八进制,则每3位分一段即可然
后每一段用相应的八进制数取代.
整理ppt
12
(1101110.01011)2
(?) 16
01101110.01011000
6 E .5 8
(1101110.01011)2
(?) 8
001101110.010110
1 5 6.2 6
整理ppt
13
思考:
十六进制和八进制数如何转换 成为二进制数?
实例:X1 = 10110 -10110 [ X ] 原= 010110 110110
0.0000 0.0000 1.0000 0000 00000
10000
整理ppt
21
数值数据—原码表示法
性质: 原码为符号位加上数的绝对值,0正1负 原码零有两个编码,+0和 -0编码不同 原码难以用于加减运算,但乘除方便 N+1位二进制原码所表示的范围为: 小数:MAX=1-2-n ,MIN=﹣( 1-2-n ) 整数:MAX= 2n-1, MIN=﹣( 2n-1)
4
3
2
1
0
=2*8 +7*8 +4*8 +5*8 +1*8
-1
-2
+1*8 +2*8
(2AD.1C)16
2
1
0
-1
=2*16 +10*16 +13*16 +1*16
-2 +12*16
整理ppt
11
二进
十六进
以小数点为中心分界
每4位分为一段,不足补0
每一段用相应的十六进制数取代
例: (1101110.01011)2
18
数值数据—数的机器码表示
在计算机中对数据进行运算操作时,符号位 如何表示呢?是否也同数值位一道参加运算操作呢? 为了妥善的处理好这些问题,就产生了把符号位和 数字位一起编码来表示相应的数的各种表示方法, 如原码、补码、反码、移码等。通常将前者称为真 值,后者称为机器数或机器码。整理pFra bibliotekt19
数值数据—原码表示法
计算机组成原理
主讲教师: 赵 岚
整理ppt
1
第二章 运算方法和运算器
数据信息的表示方法 定点加、减法运算 定点乘法运算 定点除法运算 定点运算器的组成与结构 浮点运算方法和浮点运算器
整理ppt
2
一、计算机中的信息表示
掌握: 数制及其转换, 码制及其转换, 定、浮点数表示方法及标准格式
人用符号计数的科学方法
二进制
八进制
十进制
十六进制
二—十进制(BCD码)
整理ppt
5
数制 数码 进位方法 基数
二
0,1
逢2进1 2
八
0~7
逢8进1
8
十
0~9
逢10进1
10
十六 0~9, A ~F
逢16进1
16
整理ppt
6
数制间转换
原则:整数变整数,小数变小数;
十进
二进
整数部分:除2取余倒排,直到商为0 ; 小数部分:乘2取整,直到小数位为0 ; 例: (13.8125)10
整理ppt
8
二进,八进,十六进
十进
按N展开式求和
例: (11001.101)2 (27451.12)8 (2AD.1C)16
整理ppt
9
(11001.101)2
4
3
2
1
0
-1
=1*2 +1*2 +0*2 +0*2 +1*2 +1*2
-2
-3
+0*2 +1*2
整理ppt
10
(27451.12)8