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!