以下的表格顯示了常用的按位運(yùn)算:
函數(shù) | 目的/作用 |
---|---|
bitand(a, b) | 整數(shù)a和b的逐位AND |
bitcmp(a) | a的位補(bǔ)碼 |
bitget(a,pos) | 在指定位置pos中獲取位,在整數(shù)數(shù)組A中 |
bitor(a, b) | 整數(shù)a和b的逐位OR |
bitset(a, pos) | 在某一位置上設(shè)置位 |
bitshift(a, k) | 返回向左移位k位,相當(dāng)于乘以2k。k的負(fù)值對(duì)應(yīng)于向右移位或除以2 | k | 并舍入到最接近的整數(shù)到負(fù)無窮大。任何溢出位都被截?cái)唷?br> |
bitxor(a, b) | 整數(shù)a和b的逐位異或 |
swapbytes | 交換字節(jié)順序 |
詳細(xì)例子
在MATLAB中建立一個(gè)腳本文件,并輸入下面的代碼:
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 */
運(yùn)行該文件,顯示以下結(jié)果:
c = 12 c = 61 c = 49 c = 240 c = 15
更多建議: