注意,这个函数只能转换二进制小数,即形如 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; else binstr(i) = 1; end sum = sum + binstr(i)*2^(-i); end; d = sum;
时间: 2024-11-10 13:49:14