⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 conv.m

📁 用matlab实现ASCII和二进制码的互换
💻 M
字号:
function [numo,numinto,numfo]=conv(numint,numf,flag)
%二进制数的补码表示
%输入参数为numint整数部分的二进制表达式,numf小数部分二进制表达式,flag负数标志
%输出参数为numo输入的补码,numinto整数部分的补码,numfo小数部分的补码
if (flag==0)
    numo=[0,numint,5,numf];%正数
    numinto=numint;
    numfo=numf;
else%负数,整数和小数部分均进行按位取反并加一
    l1=length(numint);
    l2=length(numf);
    num=[numint,numf];
    l=l1+l2;
    
    for i=1:l
       
       if num(i)==1%按位取反
           num(i)=0;
       else
           num(i)=1;
       end       
       
    end
%取反后加一
  temp_l=l;
  while(temp_l~=0)
    if num(temp_l)==0%最低位为0
        num(temp_l)=1;
        temp_l=0;%结束循环
    else
        num(temp_l)=0;
        temp_l=temp_l-1;
    end
  end   
 numinto=num(1:l1);
  numfo=num(l1+1:l);
%   numinto=numint;
%   numfo=numf;
  numo=[1,numinto,5,numfo];
end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -