6.9.2013 原码 反码 补码。
来源:互联网 发布:cloud outliner 知乎 编辑:程序博客网 时间:2024/05/16 04:10
近几天小雨绵绵。 一遇高考就下雨。。
好几天没看java了,在此表示要坚持。
今天遇到个问题:
b=123456L;
a=short(b); // 显式类型转换,强制类型转换
结果 是-7616。
long为32位,short为16位 将long 转换为二制数 然后从右往左截取16位转换成十进制。
123456的二进制是:1111 0001 0010 00000
因为计算机中的数字都是补码表示的。 正数的原码 反码 补码 都相同。
负数的补码 是符号位不变 其他位取反 然后+1
1111 0001 0010 00000 的符号位为1 所以是负数。 其他位取反后为:1000 1110 1101 11111 然后+1为:1000 1110 1110 00000 最后取后边16位为:0001 1110 1110 00000
转换为十进制为7616 因为前边符号位是1 所以是-7616 (前三位是是0可以省略不要)。
short 范围 -32768 ~32767 123456 超出这个数了。在这个范围内还是原数 long范围2^64
continue. 当在循环体内遇见continue语句时,中断本次循环体的执行,立即执行下一次循环。
continue语句与break语句不同,break语句是退出循环。continue语句是结束本次循环,不再执行continue语句后面的语句,直接继续下一次循环。
///////////////////////////////////////////////////
int a=123 ,b=321;
a=a^b;
b=a^b;
a=a^b:
System.out.println("a=" + a + ", b=" + b);
a=321,b=123
^为位运算异或 原理是a^b为一个数c b就等于c与原来的b异或结果为a, a就等于c与b(现在等于原来的a)异或结果为b。 以此达到交换内容的目的。 //异或过来再异或回去。
异或为位运算 转换成二进制
- 6.9.2013 原码 反码 补码。
- 原码、反码、补码
- 原码-反码-补码
- 原码、反码、补码
- 原码、反码、补码
- 原码,反码,补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码补码反码
- 原码、反码、补码
- 原码、反码、补码
- 原码、反码、补码
- 原码 补码 反码
- 原码、反码、补码
- 新的开始
- Android中使用HttpGet和HttpPost访问HTTP资源和区别
- 关于Fiddler的使用教程
- UIALertView的基本用法与UIAlertViewDelegate对对话框的事件处理方法
- C++一些注意点之继承和派生
- 6.9.2013 原码 反码 补码。
- Cocos2d-x 剖析HelloWorld
- 现代通用编程语言简介
- 老生常谈之Android里的dp和sp
- 无线传感器网络节点太阳能电源系统设计
- 怎样在 Oracle RAC 环境下使用 Parallel 参数提高 Data Pump job 的性能
- IE盒子模型和标准W3C盒子模型
- Sublime Text 2 - 性感无比的代码编辑器!程序员必备神器!跨平台支持Win/Mac/Linux
- 禁止uiscrollview垂直方向滚动,只允许水平方向滚动;或只允许垂直方向滚动