《《定点乘法运算》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《定点乘法运算》PPT课件.ppt(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、定点乘法运算定点乘法运算主讲教师:李主讲教师:李 瑞瑞 红红 单单 位:位:软件学院软件学院三、乘法运算三、乘法运算1.分析笔算乘法分析笔算乘法A=0.1101 BAB=0.1 1 0 10.1 0 1 11 1 0 11 1 0 10 0 0 01 1 0 10.1 0 0 0 1 1 1 1符号位单独处理符号位单独处理乘数的某一位决定是否加被乘数乘数的某一位决定是否加被乘数 4个位积一起相加个位积一起相加乘积的位数扩大一倍乘积的位数扩大一倍乘积的符号心算求得乘积的符号心算求得?12.笔算乘法改进笔算乘法改进A B=A AAAAAA+(AA)A+0 A+0.1(AA)=A+0.1 0 A+0
2、.1(AA)=2-1A+2-1 0 A+2-1(A+2-1(A+0)第一步第一步 被乘数被乘数A+0第二步第二步 1,得新的部分积,得新的部分积第八步第八步 1,得结果,得结果第三步第三步 部分积部分积+被乘数被乘数右移一位右移一位23.改进后的笔算乘法过程(竖式)改进后的笔算乘法过程(竖式)0.0 0 0 00.1 1 0 10.1 1 0 10.1 1 0 10.0 0 0 00.1 1 0 1初态,部分积初态,部分积=0乘数为乘数为 1,加被乘数,加被乘数乘数为乘数为 1,加被乘数,加被乘数乘数为乘数为 0,加,加 01.0 0 1 110.1 0 0 11 11.0 0 0 11 1
3、1乘数为乘数为 1,加,加 被乘数被乘数0.1 0 0 01 1 1 11,得结果,得结果1 0 1 1=0.0 1 1 01,形成新的部分积,形成新的部分积1 1 0 1=0.1 0 0 11,形成新的部分积,形成新的部分积1 1 1 0=0.0 1 0 01,形成新的部分积,形成新的部分积1 1 1 1=部部 分分 积积 乘乘 数数 说说 明明34小结小结 被乘数只与部分积的高位相加被乘数只与部分积的高位相加 由乘数的末位决定被乘数是否与原部分积相加,由乘数的末位决定被乘数是否与原部分积相加,然后然后 1 形成新的部分积,形成新的部分积,同时同时 乘数乘数 1(末(末 位移丢),空出高位存
4、放部分积的低位。位移丢),空出高位存放部分积的低位。乘法乘法 运算运算 加和移位。加和移位。n=4,加加 4 次,移次,移 4 次次54.原码乘法原码乘法(1)原码一位乘运算规则原码一位乘运算规则以小数为例以小数为例设设x原原=x0.x1x2 xn y原原=y0.y1y2 yn=(x0 y0).x*y*x y原原=(x0 y0).(0.x1x2 xn)(0.y1y2 yn)式中式中 x*=0.x1x2 xn 为为 x 的绝对值的绝对值 y*=0.y1y2 yn 为为 y 的绝对值的绝对值 乘积的符号位单独处理乘积的符号位单独处理 x0 y0数值部分为绝对值相乘数值部分为绝对值相乘 x*y*6(
5、2)原码一位乘递推公式原码一位乘递推公式x*y*=x*(0.y1y2 yn)=x*(y12-1+y22-2+yn2-n)=2-1(y1x*+2-1(y2x*+2-1(ynx*+0)z1znz0=0z1=2-1(ynx*+z0)z2=2-1(yn-1x*+z1)zn=2-1(y1x*+zn-1)z07已知已知 x=0.1110 y=0.1101 求求x y原原解:解:数值部分的运算数值部分的运算0.0 0 0 00.1 1 1 00.1 1 1 00.0 0 0 00.1 1 1 00.1 1 1 0部分积部分积 初态初态 z0=0 部部 分分 积积 乘乘 数数 说说 明明0.0 1 1 101
6、.0 0 0 11 01.0 1 1 01 1 00.1 0 1 10 1 1 01,得得 z4逻辑右移逻辑右移逻辑右移逻辑右移1 1 0 1=0.0 1 1 11,得得 z10 1 1 0=0.0 0 1 11,得得 z21 0 1 1=0.1 0 0 01,得得 z31 1 0 1=8 数值部分按绝对值相乘数值部分按绝对值相乘 乘积的符号位乘积的符号位 x0 y0=1 0=1x*y*=0.1 0 1 1 0 1 1 0则则 x y原原 =1.1 0 1 1 0 1 1 0特点特点绝对值运算绝对值运算逻辑移位逻辑移位例例6.21 结果结果用移位的次数判断乘法是否结束用移位的次数判断乘法是否结束9