MATLAB 入门教程 MATLAB位运算

2024-02-25 开发教程 MATLAB 入门教程 匿名 2

MATLAB提供位运算,如'位','位或'和'位不操作,移位操作等各种函数

以下的表格显示了常用的按位运算:

函数目的/作用
bitand(a, b)整数a和b的逐位AND
bitcmp(a)a的位补码
bitget(a,pos)在指定位置pos中获取位,在整数数组A中
bitor(a, b)整数a和b的逐位OR
bitset(a, pos)在某一位置上设置位
bitshift(a, k)返回向左移位k位,相当于乘以2k。k的负值对应于向右移位或除以2 | k | 并舍入到最接近的整数到负无穷大。任何溢出位都被截断。
bitxor(a, b)整数a和b的逐位异或
swapbytes交换字节顺序

详细例子


在MATLAB中建立一个脚本文件,并输入下面的代码:

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