数据存储与运算符部分总结
2018-03-12 18:28
120 查看
大学学习计算机组成原理的时候这部分非常枯燥,编程就会发现这些基础知识在实际中其实很有趣。
最小的数为−231−231,也就是
1. 补码可将减法转化为加法计算,简化运算器的线路设计。
正数
a067
负数
2) >>>(正负数移位都加0)
正数
负数
原码-补码的运算手算是有点复杂的:
1 如果是正数的话原码补码相同
2 负数:首位取1,其他位取反,结尾数再加1.(补码求原码同理)
A && B中,如果A被判断为false,则B是不再运行的,因此一定要注意顺序问题,或运算相同。
关于计算机中存储的数据
计算机中用补码来存储数据,最大的正数为231−1231−1,也就是0x7fffffff (0111 0000 0000 0000 0000 0000 0000 0000),
最小的数为−231−231,也就是
0x80000000 (1000 0000 0000 0000 0000 0000 0000 0000)。
1. 补码可将减法转化为加法计算,简化运算器的线路设计。
带符号移位>> 和不带符号移位(>>>
1) >>(后面丢弃,负数移位前面加1,正数移位前面加0)正数
4>>1 = (0100)>>1 = (0010) = 2
a067
负数
-4>>1 = (1100)>>1 = (1110) = -2
2) >>>(正负数移位都加0)
正数
4>>>1 = 2
负数
-4>>>1 = (0111 1111 1111 1111 1111 1111 1111 1110) = 2147483646
原码-补码的运算手算是有点复杂的:
1 如果是正数的话原码补码相同
2 负数:首位取1,其他位取反,结尾数再加1.(补码求原码同理)
异或 ^
二进制按位异或。9^12 = (1001) ^ (1100) = (0101) = 5
% 取模
需要注意的是a%b,b不能为0,因此作为判断或条件时,此条件应当优先,否则会报错。另外,0%b = 0(b非零)。& 与运算 &&短路与
(XXXX XXXX) & (ff00ff00) 取XXXX XXXX中含1的部分。A && B中,如果A被判断为false,则B是不再运行的,因此一定要注意顺序问题,或运算相同。
| 或运算 ||短路或
| 也可理解为取并,比如 (XXXX 0000) | (0000 YYYY) = (XXXX YYYY)相关文章推荐
- Android开发实践 数据存储 学习、应用、总结
- Android数据的四种存储方式----总结
- Android数据存储(总结篇)
- Android基础总结(5)——数据存储,持久化技术
- php总结2——php中的变量、数据类型及转换、运算符、流程控制中的分支结构
- 数据获取,解析,存储等知识的学习总结
- Android数据存储五种方式总结
- Javascript高级程序设计第3章回顾总结部分--数据类型
- Android数据存储五种方式总结
- iOS数据存储方式总结
- 变量,数据类型,运算符总结
- 单片机存储器总结以及内存数据存储
- 验证选择每日学习总结:DropDownList是否已选择验证、存储过程参数为sql字符串问题、将截断字符串或二进制数据。\r\n语句已终止
- Android数据存储五种方式总结
- Unity数据存储路径总结
- 尚学堂百战程序员1573题---答案总结>>>第二章 数据类型和运算符
- Android数据存储五种方式总结
- 学习java语言中数据与运算符总结
- iOS开发中本地数据存储的总结
- 实验九——基本数据类型存储及应用总结