% Default (left MSB)
n = randi([1 100]); % Number of integers
bpi = 3; % Bits per integer
x = randi([0,2^bpi-1],n,1);
y = reshape(de2bi(x,bpi,'left-msb')',[],1)
% Default (left MSB)
n = randi([1 100]); % Number of integers
bpi = 3; % Bits per integer
x = randi([0,2^bpi-1],n,1);
y = int2bit(x,bpi)
% Default vector (or scalar) input
x = [4 5 9];
y = de2bi(x)
% Default vector (or scalar) input
x = [4 5 9];
y = int2bit(x,ceil(log2(max(x) + 1)), 0)'
% Right MSB
n = randi([1 100]); % Number of integers
bpi = 5; % Bits per integer
x = randi([0,2^bpi-1],n,1);
y = reshape(de2bi(x,bpi,'right-msb')',[],1)
% Right MSB
n = randi([1 100]); % Number of integers
bpi = 5; % Bits per integer
x = randi([0,2^bpi-1],n,1);
y = int2bit(x,bpi,false)
% Right MSB, signed input
n = randi([1 100]); % Number of integers
bpi = 8; % Bits per integer
N = 2^bpi;
x = randi([-N/2,N/2-1],n,1);
y = reshape(de2bi(x+(x<0)*N,bpi,'right-msb')',[],1)
% Right MSB, signed input
n = randi([1 100]); % Number of integers
bpi = 8; % Bits per integer
N = 2^bpi;
x = randi([-N/2,N/2-1],n,1);
y = int2bit(x+(x<0)*N,bpi,false)