一
位运算(二进制)
计算机中最小的单位:位
字节:1byte = 8bit
1, &:两真才为真,一假则为假
5&6 0000 0101
0000 0110
0000 0100
相同留下,不同去掉
2, |:一真则真,两假才假
5|6
3, ^:相反为真,相同为假
10^11
0000 1010
0000 1011
0000 0001
4, ~:包含符号位一起取反
~2
0000 0010
1111 1101(补码)--------->1111 1100(反码=补码-1)------------>1000 0011(原码=反码保留符号位,其余位取反) -3
5, >>
8>>2========= 0000 1000
00 001000
0000 0010 右移:除以2的n次方(n为右移几位)
6, <<
8<<2 0000 1000
0000 1000
0010 0000 左移:乘以2的n次方(n为左移的位数
0000 0000
八位,最前面的位作为符号位0表示正,1表示负
-10 1000 1010 存储-127到+127
1000 0000 代表-128
原码、反码、补码--------解决负数计算错误问题
原码:数值的标准的二进制位
反码:符号位不变、其他位取反
补码:反码+1
原码 反码 补码
-3 1000 0011 1111 1100 1111 1101
2 0000 0010
-1 1000 0001 1111 1110 1111 1111
正数没有原码、反码、补码,计算机底层基于补码
二,程序结构
1,顺序结构
2,选择结构
3,循环结构
选择结构:
关键字是: if
if 表达式:
代码块
if else语句:
if 表达式:
代码块
else :
代码块
if--elif--else 语句
if语句嵌套