How to group and convert to decimal?

1 回表示 (過去 30 日間)
Sharen H
Sharen H 2013 年 2 月 4 日
The output of r is 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1
I want to group every 8 digits and convert to decimal
Please help
  4 件のコメント
Sharen H
Sharen H 2013 年 2 月 4 日
r() function is a double value
Image Analyst
Image Analyst 2013 年 2 月 4 日
編集済み: Image Analyst 2013 年 2 月 4 日
You mean an "array" of doubles is returned by r(), like this [0, 0, 0, 1, 0, 1, 0, etc.], not just a single double like you implied. So, it's like what Azzi assumed.

サインインしてコメントする。

採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 4 日
x=[ 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1]
x=num2str(x)
x(x==' ')=[];
y=reshape(x,[],8);
out=bin2dec(y)
  3 件のコメント
Azzi Abdelmalek
Azzi Abdelmalek 2013 年 2 月 4 日
Ok, there is an error in reshape function
x=[ 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1]
x=num2str(x)
x(x==' ')=[];
y=reshape(x,8,[])';
out=bin2dec(y)
Sharen H
Sharen H 2013 年 2 月 4 日
Thanks a lot....

サインインしてコメントする。

その他の回答 (1 件)

Jan
Jan 2013 年 2 月 4 日
編集済み: Jan 2013 年 2 月 4 日
Converting from a double vector to a string and back to a double inside bin2dec is not efficient. Better convert from binary to decimal values directly:
x = [ 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1];
d = 2 .^ (length(x)-1:-1:0) * x(:);

カテゴリ

Help Center および File ExchangeData Type Conversion についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by