计算机组成原理4.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:122 大小:12.6MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

计算机组成原理4.ppt

计算机组成原理4.ppt

预览

免费试读已结束,剩余 112 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第4章运算方法与运算器4.1定点数的加减运算及实现一、补码加减运算与运算器1、补码加减运算方法求补运算:[Y]补→[-Y]补补码加减运算举例2、补码加减运算的溢出判断常用的判溢方法(补码加减运算)双符号位判溢方法举例3、补码加减运算器3、补码加减运算器的实现二、机器数的移位运算补码的算术移位补码的算术移位举例三、移码加减运算与判溢三、移码加减运算与判溢四、十进制加法运算4.2定点数的乘法运算及实现一、原码乘法及实现一、原码乘法及实现一、原码乘法及实现一、原码乘法及实现二、原码乘法算法举例一、原码乘法及实现原码一位乘法第一次求部分积00000000000000000000000000000000000原码一位乘法流程:二、补码乘法及实现二、补码乘法及实现二、补码乘法及实现例如:X=+0.1011,Y=-0.1101,用补码一位乘法的校正法计算P=X·Y。[X]补=00.1011[Y]补=11.0011[-X]补=11.0101例:设X=-0.1101,Y=-0.1011,即:[X]补=11.0011,[Y]补=11.0101,求[X*Y]补(2)补码一位乘法——Booth算法做出如下推导:[X·Y]补=[X]补·(0.Y1……Yn)+Y0·[-X]补=[X]补·(Y1·2-1+Y2·2-2+……+Yn·2-n-Y0)=[X]补·[Y1·(20-2-1)+Y2·(2-1-2-2)+……+Yn·(2-n+1-2-n)-Y0·20]=[X]补·[Y1·20-Y1·2-1+Y2·2-1-Y2·2-2+……+Yn·2-n+1-Yn·2-n-Y0·20]=[X]补·[(Y1-Y0)·20+(Y2-Y1)·2-1+(Y3-Y2)·2-2+……+(Yn-Yn-1)·2-n+1-Yn·2-n]=[X]补·[(Y1-Y0)·20+(Y2-Y1)·2-1+(Y3-Y2)·2-2+……+(Yn-Yn-1)·2-n+1+(Yn+1-Yn)·2-n]=[X]补·(a0·20+a1·2-1+a2·2-2+……+an-1·2-n+1+an·2-n)其中,将乘数Y的补码在最末位添加一位附加位Yn+1(初始为0),ai=Yi+1-Yi,i=0,1,……,n-1,n。假设[Y]补=Y0.Y1……Yn被乘数X和乘数Y均以补码的形式参加乘法运算,运算的结果是积的补码。部分积和被乘数X采用双符号位,乘数Y采用单符号位。初始部分积为0;运算前,在乘数Y的补码末位后添加一位附加位Yn+1,初始为0。根据YnYn+1的值,按照表4.3进行累加右移操作,右移时遵循补码的移位规则。累加n+1次,右移n次,即最后一次不右移。例如:X=+0.1011,Y=-0.1101,用补码一位乘法的Booth算法计算P=X·Y。解:[X]补=00.1011[Y]补=11.0011[-X]补=11.01013、Booth乘法的硬件实现控制逻辑电路三、阵列乘法器绝对值阵列乘法器补码求绝对值电路补码阵列乘法器4.3定点数除法运算及实现一、原码除法及实现一、原码除法及实现一、原码除法及实现例如:X=+0.1011,Y=-0.1101用原码恢复余数算法计算X÷Y。解:[X]原=0.1011[Y]原=1.1101|X|=0.1011|Y|=0.1101[-|Y|]补=11.0011QS=XS⊕YS=1RS=0一、原码除法及实现一、原码除法及实现例如:X=+0.1011,Y=-0.1101,用原码不恢复余数算法计算X÷Y。解:[X]原=0.1011[Y]原=1.1101|X|=0.1011|Y|=0.1101[-|Y|]补=11.0011QS=XS⊕YS=1RS=0一、原码除法及实现原码不恢复余数除法流程二、补码除法及实现二、补码除法及实现二、补码除法及实现X=+0.1011,Y=-0.1101,用补码不恢复余数算法计算X÷Y。[X]补=00.1011[Y]补=11.0011[-Y]补=00.1101第一种方法:二、补码除法及实现二、补码除法及实现二、补码除法及实现三、阵列除法器三、阵列除法器4.4定点运算器的组成与结构一、定点运算器的组成二、定点运算器的总线结构二、定点运算器的总线结构2、双总线结构双总线运算器的结构形式1双总线运算器的结构形式23、三总线结构三、标志寄存器三、标志寄存器三、标志寄存器(举例)4.5浮点运算及运算器一、浮点加减运算浮点加减运算步骤浮点加减运算步骤一、浮点加减运算一、浮点加减运算浮点加减运算流程举例:12位浮点数,阶码4位,包含1位阶符,尾数8位,包含1位数符,用补码表示,阶码在前,尾数(包括数符)在后,已知:X=(-0.1001011)×2001Y=0.1100101×2-010求Z=X+Y。(2)尾数相加:[MZ]