计算机算法讲解的ppt,第三章(计算机算法)67讲解.ppt

第三章(计算机算法)67讲解

主要内容 二进制整数 无符号二进制整数 补码表示的带符号二进制整数 加减法算法及Verilog HDL实现 加法器和减法器设计 先行进位加法器设计 乘法算法及Verilog HDL实现 无符号数乘法器设计 带符号数乘法器设计 无符号数Wallace树型乘法器设计(略) 带符号数Wallace树型乘法器设计(略) 除法算法及Verilog HDL实现(略) 恢复余数器除法设计 不恢复余数器除法设计 带符号数不恢复余数除法器设计 Goldschmidt除数算法(略) Newton-Raphson除法算法(略) 开方算法及Verilog HDL实现(略) 逻辑运算(增加) 算术逻辑运算单元(ALU)举例(增加) 3.1 二进制整数 计算机中所有的信息,包括指令和数据,都是用二进制数表示的。 假设有一个32位的二进制数 0011 0011 1101 1110 0000 0001 0000 0000 它到底表示是什么? 指令? 数据:整数,浮点数? 图形图像? 音乐? IP地址? ? 缺点:读写起来太长,不方便。 3.1.1 无符号二进制整数(略) 3.1.2 补码表示的带符号二进制整数(略) 3.2.2 先行进位加法器设计 略 3.3 乘法算法及Verilog HDL实现 3.3.1 无符号数乘法器设计 与十进制乘法计算一样,二进制的乘法可以用加法和移位操作来完成,例如: 可以用全加器阵列来实现上述加法,也可以用循环迭代的方法实现。 四、阵列乘法器设计—P74 设有2个补码表示的8位带符号数A8和B8,试计算Z16=A8*B8。 已知[X]补=X0.X1X2···Xn,根据补码性质(3)知: X=[X]补-2X0=X0.X1X2···Xn-2X0 =0.X1X2···Xn-X0 若变成正整数,可得: A8=a7a6a5a4a3a2a1a0=-a7*27+a6a5a4a3a2a1a0 =-a7*27+A7 B8=b7b6b5b4b3b2b1b0=-b7*27+b6b5b4b3b2b1b0 =-b7*27+B7 Z16=A8*B8 =(-a7*27+A7)*(-b7*27+B7) =a7*b7*214+(-a7*B7)*27+(-b7*A7)*27+A7*B7 其中a7*b7和A7*B7与无符号数乘法相同,其他2项为负。 如下图所示。 写成二进制位的形式: a7*B7=0 0 a7b6 a7b5 a7b4 a7b3 a7b2 a7b1 a7b0 b7*A7=0 0 b7a6 b7a5 b7a4 b7a3 b7a2 b7a1 b7a0 已经知道-X=/X+1。对这2项同时取反再加1后得到: 化简并1放到适当位置后,得到: 把所有乘积项相加后,得到: 阵列乘法的Verilog HDL代码V1 module mul_signed(a,b,z); input [7:0] a,b; output [15:0] z; wire [7:0] ab0=b[0]?a:8’b0; wire [7:0] ab1=b[1]?a:8’b0; wire [7:0] ab2=b[2]?a:8’b0; wire [7:0] ab3=b[3]?a:8’b0; wire [7:0] ab4=b[4]?a:8’b0; wire [7:0] ab5=b[5]?a:8’b0; wire [7:0] ab6=b[6]?a:8’b0; wire [7:0] ab7=b[7]?a:8’b0; assign z=((8’b1,~ab0[7],ab0[6:0])+ {7’b0,~ab1[7],ab1[6:0],1’b0})+ ( {6’b0,~ab2[7],ab2[6:0],2’b0}+ {5’b0,~ab3[7],ab3[6:0],3’b0})+ ({4’b0,~ab4[7],ab4[6:0],4’b0}+ {3’b0,~ab5[7],ab5[6:0],5’b0})+ ({2’b0,~ab6[7],ab6[6:0],6’b0}+ {1’b1,ab7[7],~ab7[6:0],7’b0})); endmodule 阵列乘法的Verilog HDL代码V2 module mul_signed_v2(a,b,z); input [7:0] a,b; output [15:0]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值