注意,这个函数只能转换二进制小数,即形如 0.1101110001的格式,而形如110110.00101001则无法进行转换。
function d = bintodec(binstr) binstr = binstr(3:end); %提取小数点后的字符len = length(binstr);sum = 0;for i = 1:len if binstr(i) == '0' %这个ifelse的作用是把字符值变换为数字值binstr(i) = 0;elsebinstr(i) = 1;endsum = sum + binstr(i)*2^(-i);end;d = sum;