bi2de 대신 bit2int를 사용하십시오. 2진법이 아닌 표현의 숫자를 10진수로 변환하는 경우 base2dec를 사용하십시오.
다음 표의 코드는 권장되는 함수를 사용한 다양한 입력의 2진수-10진수 변환 방법을 보여줍니다.
권장되지 않는 기능
권장되는 대체 방법
% Default (left MSB)
n = randi([1 100]); % Number of integers
bpi = 3; % Bits per integer
x = randi([0,1],n*bpi,1);
y = bi2de(reshape(x,bpi,[])','left-msb')
% Default (left MSB)
n = randi([1 100]); % Number of integers
bpi = 3; % Bits per integer
x = randi([0,1],n*bpi,1);
y = bit2int(x,bpi)
% Right MSB, logical input
n = randi([1 100]); % Number of integers
bpi = 5; % Bits per integer
x = logical(randi([0,1],n*bpi,1));
y = bi2de(reshape(x,bpi,[])','right-msb')
% Right MSB, logical input
n = randi([1 100]); % Number of integers
bpi = 5; % Bits per integer
x = logical(randi([0,1],n*bpi,1));
y = bit2int(x,bpi,false)
% Right MSB, signed input, single input
n = randi([1 100]); % Number of integers
bpi = 8; % Bits per integer
x = randi([0,1],n*bpi,1,'single');
y = bi2de(reshape(x,bpi,[])','right-msb');
N = 2^bpi;
y = y - (y>=N/2)*N
% Right MSB, signed input, single input
n = randi([1 100]); % Number of integers
bpi = 8; % Bits per integer
x = randi([0,1],n*bpi,1,'single');
y = bit2int(x,bpi,false);
N = 2^bpi;
y = y - (y>=N/2)*N