convert an array of 0s and 1s to binary & reverse

19 次查看(过去 30 天)
hi Community,
I have an array of type double that contain only zeros and ones.
i want to convert it to binary value like below
[0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1] ----> [0 255]
and do the same thing in reverse
already tried de2bi()
but nothing !!!
  2 个评论
Stephen23
Stephen23 2021-6-13
编辑:Stephen23 2021-6-14
What shape is the input data? What encoding does it use?
Rik
Rik 2021-6-13
@Stephen, isn't that the normal encoding? 0-255 is a normal 8 bit range, right? Or am I confused?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2021-6-14
编辑:Walter Roberson 2021-6-14
pad with 0 to a multiple of 8
2.^(7:-1:0) * reshape(padded, 8,[])
The result will be a vector of values 0 to 255
reverse:
bits = reshape(de2bi(bytes, 8),1,[])
and remember to remove the padding bits

更多回答(1 个)

Stephen23
Stephen23 2021-6-14
B = [0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1];
D = pow2(7:-1:0)*reshape(B,8,[])
D = 1×2
0 255

类别

Help CenterFile Exchange 中查找有关 Data Types 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by