《原码一位乘法》PPT课件.ppt_第1页
《原码一位乘法》PPT课件.ppt_第2页
《原码一位乘法》PPT课件.ppt_第3页
《原码一位乘法》PPT课件.ppt_第4页
《原码一位乘法》PPT课件.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章运算方法与运算器,小飞守角制作,本章学习内容,运算器的设计方法定点数的加、减、乘、除运算浮点数的加、减、乘、除运算十进制数的运算,小飞守角制作,3.3定点乘法运算,利用乘除运算子程序实现乘除运算基本思想:采用软件实现乘除运算。通常是利用计算机中的加/减运算指令、移位指令及控制类指令组成循环程序,通过在运算器中的加法器、移位器等基本部件上的反复加/减操作,得到运算结果。这种方式所需硬件简单,但实现速度较慢,主要应用在早期的小、微型机上。,小飞守角制作,采用乘除运算部件实现乘除运算基本思想:在加法器的基础上增加左、右移位及计数器等逻辑线路构成乘除运算部件来实现乘除运算。设置有乘除运算指令,用户只需执行乘除指令即可进行乘除运算。实现乘除运算的速度比上一种方式快,但需要根据一定的乘除算法构建乘除运算部件,所需的硬件线路较复杂。,小飞守角制作,利用专用阵列乘除运算器实现乘除运算基本思想:将多个加减运算部件排成乘除运算阵列,依靠硬件资源的重复设置,同时进行多位乘除运算的乘除运算,从而赢得乘除运算的高速度。,小飞守角制作,定点乘法运算原码乘法运算补码乘法运算定点除法运算原码除法运算补码除法运算,采用乘除运算部件实现乘除运算,小飞守角制作,例3.8:x0.1101,y0.1011求xy?,小飞守角制作,现象:(1)每个部分积的值是由乘数y对应位的数值决定的。当乘数对应位数值为1时部分积取值为被乘数x,当乘数对应位数值为0时部分积取值为全0。(2)各相加数从乘数的最低位到最高位,逐位求取,并将求得的各相加数逐个左移一位,最后一步一次求和。(3)两个n位数相乘得8位乘积,共n个部分积需2n位加法器相加。,小飞守角制作,有问题!(1)在最后一步一次完成了n个部分积的求和,而计算机运算器很难实现一次完成多个数据的同时相加,通常只能完成对两个数的求和。(2)每次得到的部分积都需左移一位,最终部分积的位数将变为乘数y位数的两倍,这将要求计算机加法器的位数是寄存器位数的两倍,而计算机设计时加法器的位数一般与寄存器的位数相同。(3)部分积取被乘数x的值还是取零值是由乘数对应位上的取值为1还是0决定的,乘数y每一位的值是0还是1都能直接看见。而在计算机内从存放乘数的寄存器中逐位取出每一位来判别该位值是0还是1来决定相加数的值是不方便的。,小飞守角制作,3.3.1原码乘法运算,在定点机中,两个数的原码乘法运算包括:(1)乘积的符号处理(2)两数绝对值相乘设x原xf.x1x2xny原yf.y1y2ynZ原x原y原zf.z1z2zn符号处理:根据“同号相乘,乘积为正;异号相乘,乘积为负”,得符号运算的表达式为zfxfyf。,小飞守角制作,一位原码乘法运算,xyx0.y1y2y3y4x(2-1y12-2y22-3y32-4y4)2-1xy12-2xy22-3xy32-4xy42-12-3xy42-2xy32-1xy2xy12-12-12-2xy42-1xy3xy2xy12-12-12-1(2-1xy4xy3)xy2xy12-12-12-1(2-1xy3)xy2xy1,小飞守角制作,根据上式,可将乘法转换为一系列加法与移位操作。将递推公式推广到n位,得:Z00(初始部分积为0)Z12-1(Z0xyn)Z22-1(Z1xyn-1)Zn2-1(Zn-1xy1)xy,小飞守角制作,原码一位乘法的算法,积的符号单独按两操作数的符号模2加(异或)得到。用被乘数和乘数的数值部分进行运算。以乘数的最低位作为乘法判别位,若判别位为1,则在前次部分积(初始部分积为0)上加上被乘数,然后连同乘数一起右移一位;若判别位为0,则在前次部分积上加0(或不加),然后连同乘数一起右移一位。重复第步直到运算n次为止。(n为乘数数值部分的长度),小飞守角制作,例3.9根据原码一位乘法的算法计算例3.8。解:x原0.1101,y原1.1011,乘积z原xy原符号位单独处理得zf011将被乘数和乘数的绝对值的数值部分相乘。|x|原0.1101|y|原0.1011原码一位乘法计算演示动画数值部分为4位,共需运算4次。得:|xy|0.10001111加上符号部分得:xy原1.10001111即:xy0.10001111,小飞守角制作,原码一位乘法的硬件实现,小飞守角制作,A寄存器:存放部分积高位部分,初始为0B寄存器:存放被乘数xC寄存器:存放乘数y和部分积低位部分,初始为乘数yCR:计数器。用于记录乘法次数运算初始时,CR0,每进行一次运算CR1,当计数到CRn时,将CT清0,结束运算。Cj:进位位CT:乘法控制触发器,CT1,允许发出移位脉冲,进行乘法运算CT0,不允许发出移位脉冲,停止乘法运算,小飞守角制作,问题回顾(1)在最后一步一次完成了n个部分积的求和,而计算机运算器很难实现一次完成多个数据的同时相加,通常只能完成对两个数的求和。(2)每次得到的部分积都需左移一位,最终部分积的位数将变为乘数y位数的两倍,这将要求计算机加法器的位数是寄存器位数的两倍,而计算机设计时加法器的位数一般与寄存器的位数相同。(3)部分积取被乘数x的值还是取零值是由乘数对应位上的取值为1还是0决定的,乘数y每一位的值是0还是1都能直接看见。而在计算机内从存放乘数的寄存器中逐位取出每一位来判别该位值是0还是1来决定相加数的值是不方便的。,小飞守角制作,问题解决啦!(1)设初始部分积的值为0,每求得一个部分积,就同时与上一次部分积相加,每次运算器都是完成两个数据的加法,最终可得到结果。(2)将每次的部分积左移一位操作变为加法之前部分积右移一位来实现,因为前一次部分积的最低位是不参与相加计算的,将右移操作移出位用专门的寄存器来保存。(3)每求一次部分积时,使存放乘数y的寄存器执行一次右移操作,这样每次就从寄存器的最低位直接取值就

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论