数字系统、位和字节
-
数字系统
- 数码
- 基数
- 位权
-
位和字节
-
位(bit)
计算机内构成信息的最小数据单位,即一个1或0,一般用小写字母“b”表示
-
字节(Byte)
计算机数据存储和处理信息的基本数据单位。一个字节为8位,即8个二进制位是一个字节。简记为"B",则有1B=8b。
1KB=2^10B=1024B
1MB=220B=210×2^10B=1024×1024b
-
位运算符与位运算
-
与(&)、或(|)、异或(^)、取反(~)
-
左移(<<)、右移(>>)
-
位运算赋值运算符
a&=0x19等价于a=a&0x19 a<<=2等价于a=a<<2
位段
-
位段结构类型
struct packed_falg { unsigned int f1:1; unsigned int f2:1; unsigned int f3:1; unsigned int type:4; unsigned int index:9; } struct 位段结构类型名 { 类型说明符1 位段名1:位段1占用位数; 类型说明符2 位段名2:位段2占用位数; }
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cm6KWKA7-1637821740348)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1637820423749.png)]
位段类型只能是int或unsigned类型;
无名位段是位段之间的分隔作用。
-
位段结构类型变量的定义与引用
struct packed_flag data; 位段结构类型名 变量名