【问题标题】:How to convert binary bits into array如何将二进制位转换为数组
【发布时间】:2013-03-13 07:26:52
【问题描述】:

在我的项目中,我想将二进制位转换为数组。

例如:

二进制值

a= dec2bin(1) = 0001

但我想把它转换成数组并像这样存储

a=[0 0 0 1]

【问题讨论】:

    标签: arrays matlab binary


    【解决方案1】:

    使用转置数组astr2num

    a = dec2bin(1,4);
    
    out = str2num(a')';
    

    这样,字符串a的每个元素都被单独转换成一个数字。

    【讨论】:

      【解决方案2】:

      您可以使用bitand,例如,

      >> bitand(1, 2.^(7:-1:0)) > 0
      
      ans =
      
       0     0     0     0     0     0     0     1
      

      或者

      bitand(10, 2.^(7:-1:0)) > 0
      
      ans =
      
       0     0     0     0     1     0     1     0
      

      而且,如果您需要计算多个 2 的幂以包含任意数字,您可以使用 ceil(log2(theNumber))

      【讨论】:

        猜你喜欢
        • 2018-09-15
        • 2021-12-05
        • 2013-11-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-23
        • 2019-03-29
        • 2020-12-05
        相关资源
        最近更新 更多