第6章教案 联系客服

发布时间 : 星期三 文章第6章教案更新完毕开始阅读

计算机组成原理—存储器 被除数(余数) 0.1011 + 1.0011 1.1110 1.1100 + 0.1101 0.1001 1.0010 + 1.0011 0.0101 0.1010 + 1.0011 1.1101 1.1010 + 0.1101 0.0111

3、补码除法(补码加减交替法) 特点:符号位与数值部分一起参加运算。 1)商值的确定

比较被除数(余数)和除数的大小,然后确定商值。 ① 比较被除数(余数)和除数的大小方法

? 当被乘数与除数同号时,做减法;若得到的余数与除数同号,则表示“够减”,否则表示“不够减”;

? 当被乘数与除数异号时,做加法;若得到的余数与除数异号,则表示“够减”,否则表示“不够减”;

② 商值确定

? 当[x]补与[y]补同号,商为正,“够减”时上商“1”,“不够减”时上商“0”(按原码规则);

? 当[x]补与[y]补异号,商为负,“够减”时上商“0”,“不够减”时上商“1”(按反码规则);

规则归纳如下:

33

商 0.0000 0.0000 0.0000 0.0001 0.0010 0.0011 0.0110 0.0110 0.1100 0.1101 计算机组成原理—存储器 表6.23 商的确定

[x]补与[y]补 同号 异号

表6.24 简化的商值确定 [R]补与[y]补 同号 异号

2)商符的形成

① 商符在求商过程中自动形成。

在小数定点除法中,被除数的绝对值应小于除数的绝对值,以避免商大于1,因此:

? 当[x]补与[y]补同号时,[x]补-[y]补得到的余数[R0]补必与[y]补异号,商上“0”,恰好与商的符号(正)一致;

? 当[x]补与[y]补异号时,[x]补+[y]补得到的余数[R0]补必与[y]补同号,商上“1”,也与商的符号(负)一致;

② 商的符号可用于判断商是否溢出。例如:

? 当[x]补与[y]补同号时,若[R0]补与[y]补同号,上商“1”,即溢出; ? 当[x]补与[y]补异号时,若[R0]补与[y]补异号,上商“0”,即溢出;

3)新余数[Ri+1]补的获得 法则:

? 当[R0]补与[y]补同号时,上商“1”,新余数: [Ri+1]补=2[Ri]补-[y]补=2[Ri]补+[-y]补 ? 当[R0]补与[y]补异号时,上商“0”,新余数: [Ri+1]补=2[Ri]补+[y]补

34

商 正 负 [R]补与[y]补 同号,表示“够减” 异号,表示“不够减” 异号,表示“够减” 同号,表示“不够减” 商值 1 0 0 1 商值 1 0 计算机组成原理—存储器

如果对商的精度没有特殊要求,一般可采用“末位恒置1”法(操作简单,易于实现,且最大误差为2-n)。

【例】 已知 x=0.1001,y=0.1101,求[x/y]补。 【解】 [x]补=0.1011,[y]补=0.1101,[-y]补=1.0011 被除数(余数) 商 上商 0.1001 + 1.0011 1.1100 1.1000 + 0.1101 0.0101 0.1010 + 1.0011 1.1101 1.1010 + 0.1101 0.0111 0.1110

说 明 0.0000 [x]补与[y]补同号,+[-y]补 0 [R]补与[y]补异号,上商0 0 ←1位 +[y]补 01 [R]补与[y]补同号,上商1 01 ←1位 +[-y]补 010 [R]补与[y]补异号,上商0 010 ←1位 +[y]补 0101 [R]补与[y]补同号,上商1 01011 ←1位,末位商恒置“1” 35

计算机组成原理—存储器

6.4 浮点四则运算

机器中任何一个浮点数都可以表示为: x=Sx·rJx

S为浮点数的尾数,一般为绝对值小于1的规格化数; j为浮点数的阶码,一般为整数; r为基数,常用2、4、8和16。

6.4.1 浮点加减运算

设两个浮点数: x=Sx·rJx y=Sy·rJy

浮点数加减法的运算步骤:

1)对阶,使两数真实的小数点位置对齐 2)尾数求和(差) 3)规格化 4)舍入

5)结果溢出判断 1、对阶

使两操作数的真实小数点位置对齐,即使阶码相等。 · 先求阶码差,小阶码向大阶码看齐

· 阶码小的尾数向右移位,每右移一位,阶码加1

右移的次数等于阶码差。尾数右移时有可能丢失数码,精度降低。 【例】 x=0.1101×201,y=-0.1010×211,求x+y; [x]补=00,01;00.1101 [y]补=00,11;11.0110

阶码差 [Δj]补=[jx]补-[jy]补=00,01+11,01=11,10

即[Δj]补=-2,x的阶码比y小,将x的尾数右移2位,阶码加2。

36