摘要:所有变量都为 reg[9:0] 的变量也就是,,正数为0--511 负数为1023--512 ,,, -1为1024-1023 -512为1024-512=512一、第一组测试a7=2*B_K;a5=-N_K;a6=2*(-5);1、if(-2<=-34 && -2>=512)a3=1;else a3=2;2、if((2*B_K<=-N_K && 2*B_K>=512))a4=1;else a4=2;3、if((2*B_K<=-N_K) && (2*B_K>=512))a5=1;else a5=2;可以看到a7
阅读全文
摘要:module yunsuan1(input clk,rst_n,output reg [7:0]a,b,b1,b2,b3,c,d,count);always @(posedge clk)begin count=count+1;if(count==10) a=-25;if(count==11) a=-26;if(count==12) a=25;if(count==13) a=2;b=~a+1;b1=b>>1;b2=~b1+1;if(a[0])b3=~b1;else b3=~b1+1;end endmodule可以看出负数补码分为奇数和偶数表示:-25和-26的补码都为-13.
阅读全文
摘要:一、建模在FPGA中没有负数的概念,要是用intetger 类型变量来实现正负数,显然过于浪费逻辑资源,因为他为32位数据。怎样用reg类型来建模呢,迫在眉睫。。。。。。。。。。 8位数在c语言中的表示范围:无符号: 0 ~ 255有符号:-128 ~ 127 在FPGA中如此表示:定义reg 【7:0】 a;0 a=01 a=12 a=23 a=3-----------------------------127 a=127-128 a=128-1 a=255-1 = 256-1=255为-1的补码 又例如:在FPGA中如此表示:定义reg 【2 :0】 a; 0,1,2,3 有符号数...
阅读全文