¿Comando para rellenar ceros a ubicaciones específicas en números binarios?
Necesito rellenar ceros a ubicaciones específicas en números binarios. Bucle de la forma de matriz de un número binario comodec2bin(43)
y añadiendo los ceros y ajustando el tamaño de los sonidos de reinvención de la rueda.
¿Cómo rellenar ceros eficientemente a números binarios en Matlab?
Bucle
positions=[1,3,6];
x=de2bi(43);
xx=flip(x);
kk=1;
for ii=1:length(x)+length(positions)
if isequal(positions(kk),xx(ii))
%Transfer the tail from ii by one index ahead,
%left out here because I think my method is bad!
x(ii)=0;
positions=positions+1; %Increase positions by one now due to one padding
kk=kk+1;
end
end
que se siente demasiada reinvención: básicamente, ¿cómo obtener 0 justo antes de Y como de xxxxYabcd a xxxx0Yabcd donde xxxxYabcd es un número binario?
Ejemplo
Entrada
101011, (1,3,6)
Salida
100100110
1x010x11x (que muestra la ubicación de los ceros más claros con x donde se insertaron los ceros)