原码:
用最高位表示符号位,其他位存放该数的二进制的绝对值。
反码:
正数的反码还是等于原码;负数的反码就是它的原码除符号位外,按位取反。
补码:
正数的补码等于它的原码;负数的补码等于反码+1。
在这个基础上,计算绝对值可以:
if(data[最高位] == 1)
abs_data = (~data) + 1
else
abs_data = data
assign abs_data = data[max]? (~data) + 1:data;
原码:
用最高位表示符号位,其他位存放该数的二进制的绝对值。
反码:
正数的反码还是等于原码;负数的反码就是它的原码除符号位外,按位取反。
补码:
正数的补码等于它的原码;负数的补码等于反码+1。
在这个基础上,计算绝对值可以:
if(data[最高位] == 1)
abs_data = (~data) + 1
else
abs_data = data
assign abs_data = data[max]? (~data) + 1:data;