6
A
回答
5
如果你想翻轉位數值num
的不首先將其轉換成的'0'
和'1'
字符數組,那麼你可以使用功能,如BITXOR ,BITGET和BITSET(如Andrey also mentions):
num = bitxor(num, 4); %# Flip the bit in the 4's place (i.e. bit 3)
%# Or ...
num = bitset(num, 3, ~bitget(num, 3)); %# Flip bit 3
然而,如果你做想要的字符數組進行操作,你也可以做到這一點很奇怪的事情:
X(i) = 'a' - X(i);
%# Or ...
X(i) = 97 - X(i);
這工作,因爲characters'a'
和X(i)
首先被轉換爲等效的Unicode UTF-16在執行數學運算之前的數值。由於'a'
的數值爲97,因此從'a'
中扣除的'0'
(數值爲48)或'1'
(數值爲49)將導致其他值的數值。等式右側的結果數字值在放回到字符數組X
中時將轉換回字符。
12
如果我理解正確的話,你要設置一個位爲1的使用位集
bitset(x, bitNumber)
如果你想翻轉位從0到1,副verca,使用BITXOR
num = bin2dec('101110');
bitNum = 1;
res = bitxor(num, 2^(bitNum-1));
disp(dec2bin(res));
這是更好,因爲你並不需要將數字轉換爲焦炭。
相關問題
- 1. 計劃邏輯反轉
- 2. 反轉邏輯與條件
- 3. 在MATLAB中,我可以將Java布爾轉換爲MATLAB邏輯?
- 4. 邏輯移位和旋轉
- 5. 在Matlab中創建反向邏輯數組
- 6. Matlab中的邏輯掩碼
- 7. 在MATLAB中實現邏輯迴歸
- 8. 在MATLAB中使用邏輯或查找?
- 9. 轉換Ç按位邏輯邏輯到PL/SQL
- 10. 在Matlab中反轉到im2java?
- 11. 在Matlab中反轉soundsc
- 12. 安全地將位/邏輯向量的SystemC結構轉換/轉換爲單個位/邏輯向量
- 13. 在渲染()中反應內聯邏輯
- 14. 映射一個數組邏輯陣列中的Matlab的
- 15. 將Spark邏輯計劃轉換爲Spark Catalyst中的另一個邏輯計劃
- 16. MATLAB邏輯操作符:&& vs&
- 17. 在javascript中一個變量的邏輯相反值的一個例子
- 18. C中的按位邏輯
- 19. 具有位邏輯
- 20. 邏輯&按位AND
- 21. 邏輯vs按位
- 22. XSLT按位邏輯
- 23. 如何在MATLAB中編輯圖像的軸以反轉方向?
- 24. 如何將'1 * 1 char'轉換爲MATLAB中的邏輯向量?
- 25. MATLAB中的邏輯與數值數組
- 26. 比較matlab中邏輯矩陣的行?
- 27. Matlab中的二維邏輯矩陣
- 28. MATLAB中圖像的邏輯與
- 29. 我怎麼做邏輯掩蔽在MATLAB
- 30. Matlab-如何在單個矩陣中執行邏輯與操作
雖然這會起作用,恕我直言,它不是很好,因爲你不明白的意思。所以我不會低估它,但我認爲你應該考慮清晰的代碼。 – 2012-01-10 19:24:07