内容发布更新时间 : 2024/11/6 5:00:29星期一 下面是文章的全部内容请认真阅读。
(3)x= 19,y= 35;
(4)x= 0.110 11,y= -0.111 01。
解:先将数据转换成所需的机器数,然后计算,最后结果转换成真值。 (1)[x]原=0.110111,[y]原=1.101110,x*=0.110111, y*=0.101110 原码一位乘:
部分积 0.000 000 +0.000 000 0.000 000 0.000 000 +0.110 111 0.110 111 0.011 011 +0.110 111 1.010 010 0.101 001 +0.110 111 1.100 000 0.110 000 +0.000 000 0.110 000 0.011 000 000 101 001 010 010 101 101 011 010 111 右移一位 乘数为1,加上x* 右移一位 乘数为1,加上x* 右移一位 乘数为1,加上x* 右移一位 乘数为0,加上0 右移一位 乘数为1,加上x* 乘数y* 101 110 说明 部分积初值为0,乘数为0加0 +0.110 111 1.001 111 0.100 111 100 010 右移一位 即x*×y*=0.100 111 100 010,z0=x0? y0=0 ?1=1, [x×y]原=1.100 111 100 010,x·y= -0. 100 111 100 010 原码两位乘:[-x*]补=1.001 001,2x*=1.101 110
部分积 000 . 000 000 +001 . 101 110 001 . 101 110 000 . 011 011 +111 . 001 001 111 . 100 100 111 . 111 001 +111 . 001 10 001 011 10 001 011 00 100 010 右移2位 0 右移2位 根据yn-1ynCj=110,加[-x*]补,置Cj=1 0 乘数y* 00 101 110 Cj 说明 0 部分积初值为0,Cj=0 根据yn-1ynCj=100,加2x*,保持Cj=0 1 根据yn-1ynCj=101,加[-x*]补,置Cj=1 001 111 . 000 010 111 . 110 000 +000 . 110 111 000 . 100 111 即x*×y*=0.100 111 100 010,z0=x0? y0=0 ?1=1, [x×y]原=1.100 111 100 010,x·y= -0. 100 111 100 010 补码一位乘:[x]补=0.110111,[-x]补=1.001001,[y]补=1.010010
部分积 00 . 000 000 00 . 000 000 +11 . 001 001 11 . 001 001 11 . 100 1 010 1 Ynyn+1=01,部分积加[x]补 右移1位 乘数 1 010 010 0 101 001 Yn+1 0 0 说明 Ynyn+1=00,部分积右移1位 Ynyn+1=10,部分积加[-x]补 10 001 0 10 001 000 1 右移2位 根据yn-1ynCj=001,加x*,保持Cj=0 100 +00 . 110 111 00 . 011 011 00 . 001 101 00 . 000 110 +11 . 001 001 11 . 001 111 11 . 100 111 +00 . 110 111 00 . 011 110 00 . 001 111 +11 . 001 100 右移1位 1 101 010 1 110 101 0 0 Ynyn+1=00,部分积右移1位 Ynyn+1=10,部分积加[-x]补 右移1位 1 111 010 1 Ynyn+1=01,部分积加[x]补 0 111 101 0 右移1位 Ynyn+1=10,部分积加[-x]补