[matlab] bitshift
https://www.cnblogs.com/picassooo/p/13357476.html
bitshift(A, k)函数:先把A变成二进制数,然后把这个二进制数向左移动k位(如果k是负数,表示向右移动k位),再把得到的二进制数所对应的十进制数返回出来。比如,3的二进制是11,向左移一位是110,十进制就是6;向左移两位是1100,十进制就是12,如下图所示:

又例如:
|
1
2
3
4
|
for k = 0:8 a = bitshift(1, k); % 把1向左移动k位 fprintf('%5d %9s\n', a, dec2bin(a));end |
运行结果:
|
1
2
3
4
5
6
7
8
9
|
1 1 2 10 4 100 8 1000 16 10000 32 100000 64 1000000128 10000000256 100000000 |

浙公网安备 33010602011771号