English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
MATLABは様々なビット演算関数を提供しており、「ビットと」「ビットまたは」および「ビットノン」演算、シフト演算などがあります。
以下の表は、一般的に使用されるビット演算を示しています-
関数 | 説明 |
---|---|
bitand(a, b) | 整数 a と b のビットと |
bitcmp(a) | Aのビット符号補码 |
bitget(a,pos) | 整数配列aの指定位置からビットを取得します |
bitor(a, b) | 整数a和bの按ビット或 |
bitset(a, pos) | ビットをaの特定位置posにセットします |
bitshift(a, k) | 戻る一由向左移動ķビット、相当します2 ķ。kの負の値は右シフトまたは除算に対応します2 | k | 負の無限大に四捨五入して最も近い整数にします。オーバーフロー位は切り捨てられます。 |
bitxor(a, b) | 整数 a と b のビットxor |
swapbytes | バイトオーダーの交換 |
スクリプトファイルを作成し、以下のコードを入力します-
a = 60; % 60 = 0011 1100 b = 13; % 13 = 0000 1101 c = bitand(a, b) % 12 = 0000 1100 c = bitor(a, b) % 61 = 0011 1101 c = bitxor(a, b) % 49 = 0011 0001 c = bitshift(a, 2) % 240 = 1111 0000 */ c = bitshift(a,-2) % 15 = 0000 1111 */ファイルを実行すると、以下の結果が表示されます
c = 12 c = 61 c = 49 c = 240 c = 15