int2bin.asv

来自「用离散余弦变换实现JPEG编码」· ASV 代码 · 共 20 行

ASV
20
字号
%整形转换成二进制数
function b = int2bin(x,n)


x = abs(x);
if nargin==2,
  if max(x) >= 2^n,
     error(' x must be smaller than 2^n')
  end
elseif nargin==1,
  n=max(floor(log2(abs(x)))+1);
end
idx=diag(2^(diag([n-1:-1:0])));
for j=1:n
   tmp = x - sign(x)*idx(j).*[x~=0];
     % if x > 0, tmp = x - 2^(n-j), if x < 0, tmp=x+2^(n-j)
   b= [b [tmp >= 0].*[x~=0]];
   x=tmp;
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?