How to convert binary stream of length 1*524288 to decimal string of length 1*65536?
2 次查看(过去 30 天)
显示 更早的评论
There is a need to group 8 bits in the binary stream of 1*524288 to make a decimal string..how to do this using matlab?
4 个评论
Image Analyst
2017-1-7
Can you give a short example of how you are getting a longer decimal string from the shorter binary string, like '1101001' goes to '123456787654627838' or something?
采纳的回答
Stephen23
2017-1-8
编辑:Stephen23
2017-1-8
bin2dec probably does most of what you want:
>> bin2dec(reshape('0000000100000010',8,[]).')
ans =
1
2
3 个评论
Stephen23
2017-1-9
编辑:Stephen23
2017-1-9
You seem to have put my code inside a loop, and then inside that loop you access one character of the string at a time, like this:
k(i)
What do you expect to do with one character at a time?
My answer works perfectly for a string with size 1*524288, and it does not need any loops:
>> str = char(randi(48:49,1,524288));
>> vec = bin2dec(reshape(str,8,[]).')
vec =
233
164
146
110
134
162
238
203
etc
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Conversion 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!