8

如何将数字数组转换为二进制数?例如:

a=[1 0 1 0 1 0]

我想转换成二进制数

b=101010

没有循环可以吗?

4

2 回答 2

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())。

于 2013-10-29T15:21:23.007 回答
7

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

sprintf('%d',a)

我认为这是逻辑数组的唯一替代方案。

于 2013-10-29T15:19:28.433 回答