第一次嵌入式C++学习

位运算操作

左移:

[数据]乘法 * 2 (二进制下的移位)

例如:m<< 1   =    m*2

           m << n  =    m * 2^n

4 :   0 0 1 0 0

8:    0 1 0 0 0

右移:

第一位与符号变量有关

除法  m>> n   =   m / 2^n

int a;   a>> n

unsigned int a;    a >>n

与或非:(&.|)

A & 0 ====>   0    (&:屏蔽,屏蔽低八位

A & 1 =====>  1   (&:取出,取出高八位

&:清0器

A | 0 =====> A    (| : 保留 )

A | 1 ====> 1   

| : 设置器

int a;

a  | (0x1<<n)    #将第n位设置高电平(1),其余为低电平(0)

int a;

a  & ~(0x1<<n)    #对第n位清0

异或、取反(^  ~)

1 ^ 1 = 0 (相同取0,为假;不同取1,为真)

用于交换 a ,b 的值

int a=20;
int b=30;

a = a ^ b;

b = a ^ b;

a = a ^ b;

a = 30, b = 20

~ : 逐位取反 (与!不同)

static

修饰三种数据

1)函数内的变量

int fun(){

int a;  ====> static int a;

}

2) 函数外部的变量(全局变量)

int a ;   ====> static int a ;

int fun() {

}

3) 函数的修饰符

int fun() ===> static int fun()

const

常量的定义(只读的变量)

const int a = 100  (a不能变)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值