Mapping two binary bits to one

1 回表示 (過去 30 日間)
salad9996
salad9996 2019 年 12 月 1 日
コメント済み: Walter Roberson 2019 年 12 月 9 日
I have generate a set of bits 0 and 1,
N=10000;
m=(sign(randn(1,N))+1)/2;
The problem is how do I group the bits? For example
00=-j
01=-1
10=1
11=j
  1 件のコメント
Image Analyst
Image Analyst 2019 年 12 月 1 日
No idea what you want, but look at dec2bin() and/or bin2dec().

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

採用された回答

Walter Roberson
Walter Roberson 2019 年 12 月 2 日
vals = [-1j, -1, 1, 1j];
m2 = reshape(m, 2, []);
idx = m2(1,:) * 2 + m(2,:) + 1;
output = vals(idx);
  4 件のコメント
Walter Roberson
Walter Roberson 2019 年 12 月 8 日
ismember to get an index. Use that as a row index into a 4x2 array.
Walter Roberson
Walter Roberson 2019 年 12 月 9 日
[, idx] = ismember(Symbols, [-1j, -1, 1, 1j]);
bits = [0 0; 0 1; 1 0; 1 1] .';
bit_vector = reshape(bits(:, idx), 1, []);

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNumbers and Precision についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by