参数x:原始十进制数,正负数都可以;
参数N:输出二进制补码的最小位数,位数不够则自动扩展;
输出值c:转换得到的二进制补码字符串数组;
输出值n:实际输出的二进制补码位数。
function [c,n] = dec2com(x,N)
n = 0;
if(nargin == 2)
n = max(n,N);
end
a=max(x);
if(a>0)
n=max(n,ceil(log2(a+1)) +1);
end
if(a<0)
n=max(n,ceil(log2(-a)) +1);
end
for i=1:length(x)
if x(i) < 0
x(i) = x(i) + 2^n;
end
end
c=dec2bin(x,n);
end