二进制数位数扩展方法
1.当两个二进制数运算时,整数位和小数位字长必须相等,即两个数的整数位数应相同,小数位数应相同;若两个数的位数不同或者运算时溢出,则应该扩展位数!
2.整数和小数 扩展位数的规则:
(1)正数:有符号或无符号数的原码,反码,补码,一律整数在高位补0来补充少的位数,小数在低位补0来补充少的位数;
(2)原码负数:整数高位补0,小数低位补0;
(3)反码负数:整数高位补1,小数低位补1;
(4)补码负数:整数高位补1,小数低位补0;(非常重要,在硬件编程中经常用到!!!)
例子:verilog中,将a扩充为10位的b
wire [7:0] a;
wire [9:0] b = {{2{a[7]}},a};
本文来自博客园,作者:江北一滴水,转载请注明原文链接:https://www.cnblogs.com/zhangzongjun/p/15520433.html