2.二进制数据

1.计算机是由集成电路构成,高电平表示“1”,低电平表示“0”.
2.二进制值可以表示字符,图片,视频,音频等。
3.二进制和十进制的转换:
0:0 1:1 2:10 3:11 4:100 5:101 6:110 7:111 8:1000 9:1001 10:1010
11:1011 12:1100 13:1101 14:1110 15:1111 16:10000
4. 二进制的运算:
运算符: << 运算:左移 范例:3<<2=12–>322=12 乘法
运算符: >> 运算:右移 范例:3>>1=1–>3/2=1 除法
运算符: >>> 运算:无符号右移 范例:3>>>1=1–>3/2=1 逻辑右移
运算符: & 运算:与运算 范例:6&3=2
运算符: | 运算:或运算 范例:6|3=7
运算符: ^ 运算:异或运算 范例:6^3=5
确定二进制数值的长度(硬性的规定),
加法:逢2进1 计算机只能进行累加运算
减法:1101 +(-0011)加上补数,舍弃溢出
Q:如何表示负数?
补数:正数取反+1 超出长度的舍弃;0没有补码,负数位范围会比正数位范围+1;
乘法:左移N位,即乘以2^N
除法:右移N位,即除以2^N.可分为算术右移和逻辑右移;
算术右移:根据首位是“0”还是“1”,决定补“0”还是补“1”;
逻辑右移:不会在乎首位是“0”还是“1”,直接右移。一般表示数据的整体右移;
逻辑运算:真值表
5.二进制表示浮点数float:
1 0 1 1 . 1 1 1 1
8 0 2 4 . 0.5 0.25 0.125 0.0625
计算机存储模式:IEEE编码
float运算偏差解决办法:
1.不当小数运算
int main()
{
float sum=0;
for(int i = 0; i <100 ; i ++ ){
sum += 0.1****/10***;
};
printf("%f",sum***/10***);
return 0;
}
2.忽略后面,满足精度即可

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值