文章目录
算术操作符
-
加法+
-
减法-
-
乘法*
-
除法---- /
整形的除法: 1/2=0
浮点型的除法 1.0/2=0.5
- 取模%
注: 取模操作符的两端必须是整数
移位操作符
-
移位操作符,移动的是二进制,操作数只针对整数
-
>> 右移操作符
<< 左移操作符
//int–4个字节–32个比特位
// 正数7----原码,反码,补码相同
//00000000 00000000 00000000 00000111----原码
//00000000 00000000 00000000 00000111----反码
//00000000 00000000 00000000 00000111----补码
// 7 >> 1
//对补码操作,向右移动一位,补0
//00000000 00000000 00000000 00000011–3
// 7 << 1
//对补码操作,向左移动一位,补0
//00000000 00000000 00000000 00001110–14
//负数-7
//10000000 00000000 00000000 00000111----原码
//11111111 11111111 11111111 11111000----反码(原码符号位不变,其他位按位取反)
//11111111 11111111 11111111 11111001----补码(反码+1)
//数据存储的是补码,所以位移操作符操作的是补码;
//右移操作符
算数操作符–右边丢弃,左边补原符号位
逻辑操作符–右边丢弃,左边补零
// -7 >> 1
// //符号位不变,向右移动一位,补0
//11111111 11111111 11111111 11111100----补码
//11111111 11111111 11111111 11111011----反码
//10000000 00000000 00000000 00000100----原码
//-4
// -7<< 1
//符号位不变,向左移动一位
//11111111 11111111 11111111 11110010----补码
//11111111 11111111 11111111 11110001----反码
//10000000 00000000 00000000 00001110----原码
// -14
#include<stdio.h>
int main