将数字数组转换为二进制数

时间:2013-10-29 15:15:27

标签: arrays matlab binary

我怎样才能将数字数组转换为二进制数?例如:

a=[1 0 1 0 1 0]

我想转换为二进制数

b=101010

是否可以不使用循环?

2 个答案:

答案 0 :(得分:19)

也许这就是你想要的:

char(a+'0')

示例:

>> a=[1 0 1 0 1 0]

a =

     1     0     1     0     1     0

>> char(a+'0')

ans =

101010

这可以通过将每个数字转换为ASCII码(+'0'),然后将结果数字的矢量转换为字符串(char())来实现。

答案 1 :(得分:7)

您可以将其转换为字符串:

sprintf('%d',a)

我认为它是逻辑数组的唯一替代品。