How to change a bit from 0 to 1.

11 ビュー (過去 30 日間)
barath manoharan
barath manoharan 2023 年 2 月 15 日
回答済み: Steven Lord 2023 年 2 月 15 日
iam having 5 decimal numbers , i have converted this 5 decimal nos to binary numbers to perform some mathematical operations.
A consists of five decimal numbers and B consists of A's corresponding binary representation. Now each element has to be compared against the remaining elements. first element and last element differs by one bit so the expected output is 10111 similarly 2nd element and last element differs by 1 bit so the expected output is 10111. the remaining 2 elements cannot be merged because they have more than 1 dissimilar bit when compared against remaining elements. The expected output is 10111,1100,1011. Thank you in advance.
For example:
A = [7;19;12;11;23]
B = [00111;10011;01100;01011;10111]
Expected Output :
C = [10111;01100;01011]
  3 件のコメント
Dyuman Joshi
Dyuman Joshi 2023 年 2 月 15 日
So you want to compare 1st and nth element, 2nd and n-1 th element and 3rd and n-2 th element and so on?
Jan
Jan 2023 年 2 月 15 日
編集済み: Jan 2023 年 2 月 15 日
The same problem occurred already in the forum. "B = [00111;10011;01100;01011;10111]" is not a binary array. "00111" is the decimal number onehundreteleven.
So please explain, in which format the values are really represented.
If you really use decimal numbers to represent binary values, this is a surprisingly bad idea, which impedes easy solutions.

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

回答 (1 件)

Steven Lord
Steven Lord 2023 年 2 月 15 日
A = [7;19;12;11;23]
A = 5×1
7 19 12 11 23
B = bitset(A, 5)
B = 5×1
23 19 28 27 23
binA = dec2bin(A, 5)
binA = 5×5 char array
'00111' '10011' '01100' '01011' '10111'
binB = dec2bin(B, 5)
binB = 5×5 char array
'10111' '10011' '11100' '11011' '10111'

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

タグ

製品


リリース

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by