MATLAB的位運算操作

2021-07-07 05:27:36 字數 786 閱讀 6511

在matlab中想要直接對類似於c、c++中的位運算操作,即或『|』、與『&』、非『~』操作,如果直接寫成

result =anynum & 0xff;   %錯誤示範
在matlab中會把0xff認為是未定義的變數名而完成不了任務,因而想要在matlab中進行位操作,需要函式來操作。

在matlab中有如下的幾個位運算函式:

這裡舉乙個例子。

如函式:bitand 顧名思義bit and 按位與,他的操作如下:

0xabcd *****= 43981

0xfff *****= 4095

那麼: 0xabcd & 0xfff = 0xbcd ***** 3021

在matlab中的操作就是把他們的十進位制數放入bitand函式中即可:

result = bitand(43981,4095);

%結果是:

%result

= 3021;

也就是說,在matlab中進行位操作的時候,只需要把你要操作的十六進製制對應的十進位制數放入函式中即可。

這類函式適用於某些模組返回十六進製制的資料時,只有某幾位是有效位,那麼這個時候就要進行位操作,提取有效的資料。不用擔心第乙個引數的問題,你把資料讀入matlab的時候就已經轉化為十進位制的數了。所以你只需要考慮的是你要取得是那幾位,然後把相應的十進位制數帶入函式的第二個引數即可。

C C 位操作 位運算

在c語言中,可以單獨操控變數的位 bit 一般高階語言不會處理這級別的細節,c在提供高階語言便利的同時,還能為組合語言所保留的級別上工作,這使其成為編寫裝置驅動程式和嵌入式 的首選語言。目錄 二進位制整數 binary 有符號整數 八進位制 octal 十六進製制 hex 位運算子 按位與 的用途 ...

Matlab數值按位操作

dec2bin d,n 十進位制轉為二進位制 d為輸入,n值設定最小輸出位數 dec2bin 10,7 ans 0001010 bin2dec 二進位制轉換為十進位制 bin2dec 1011 內部需為字串 ans 11 dec2hex 十進位制轉換為十六進製制 hex2dec 十六進製制轉換為十進...

位運算操作詳解

在計算機中所有資料都是以二進位制的形式儲存的。位運算其實就是直接對在記憶體中的二進位制資料進行操作,因此處理資料的速度非常快。在實際程式設計中,如果能巧妙運用位操作,完全可以達到四兩撥千斤的效果,正因為位操作的這些優點,所以位操作在各大it公司的筆試面試中一直是個熱點問題。基本的位操作符有與 或 異...