- 浏览: 20727 次
- 性别:
文章分类
最新评论
Java中整数的三种表现形式:
十进制:0-9,逢10进1
八进制:0-7,逢8进1,以0开头表示
十六进制:0-9,A-F,逢16进1,以0x开头表示
在计算机中二进制数的表现形式:
正的二进制数的最高位为0,负的二进制数的最高位为1,由此可知,计算机中二进制数的最高位是符号位。
在计算机中如果用二进制表示负数,首先要将这个数的正数的二进制表现形式取反,然后再加1
这里拿Java中的byte(1字节-->8位)举例,如:
01111-1111---> 127(这个正数的二进制表现形式)↴
如果要表示-127,首先对127取反
0111-1111 ---> 1000-0000 ↴
然后再加1
1000-0000 ---> 1000-0001↴
如果要得到这个负的二进制数的正的二进制数的表现形式,要将这个负的二进制数取反,然后再加1
数据类型强转:
这里还是拿Java中的byte(1字节-->8位)举例,如:
1. byte b = 127; b = (byte) b + 1; b=?↴
0000-0000-0111-1111---> 127(首先在运算前会提升数据类型为int,这里为了书写方便,以short代替)↴
+0000-0000-0000-0001↴
=0000-0000-1000-0000 ---> 这时的结果为128,但是对结果进行了强转,导致前8位丢失,出现下面的情况↴
= 1000-0000 ---> 因为在计算机中二进制数的高位为符号位,这里为1,所以它是负数(-128), 然后对其执行下面的操作↴
= 0111-1111 ---> 首先对其进行取反↴
+ 0000-0001 ---> 再对其加1
= 1000-0000 ---> 这就是127+1再强转为byte在计算机中的二进制表现形式,对应十进制数-128
二进制移位:
<<(左移):被操作数乘以2的移动位数次幂(3 << 3 --> 3 * (2*2*2) --> 24)↴
0000-0000-0000-0011 << 3(左移3位后) ↴
0000-0000-0001-1000 ---> 24
>>(有符号右移,高位按原先高位值来补):被操作数除以2的移动位数次幂(-12 >> 2 --> -12 / (2*2) --> -3)↴
0000-0000-0000-0000-0000-0000-0000-1100 ---> 12 ↴
1111-1111-1111-1111-1111-1111-1111-0011 ---> 取反 ↴
+0000-0000-0000-0000-0000-0000-0000-0001 ---> +1 ↴
1111-1111-1111-1111-1111-1111-1111-0100 ---> -12(得到-12在计算机中的二进制表现形式) ↴
1111-1111-1111-1111-1111-1111-1111-1101 << 3 (右移2位后) ---> -3 ↴
0000-0000-0000-0000-0000-0000-0000-0010 ---> -3 (得到-3在计算机中的二进制表现形式) ↴
0000-0000-0000-0000-0000-0000-0000-0001 ---> +1 ↴
0000-0000-0000-0000- 0000-0000-0000-0011 ---> 3
>>>(无符号右移,高位补0):被操作数除以2的移动位数次幂(-12 >> 2 --> -12 / (2*2) --> 1073741821)↴
0000-0000-0000-0000-0000-0000-0000-1100 ---> 12 ↴
1111-1111-1111-1111-1111-1111-1111-0011 ---> 取反 ↴
+0000-0000-0000-0000-0000-0000-0000-0001 ---> +1 ↴
1111-1111-1111-1111-1111-1111-1111-0100 ---> -12 (得到-12在计算机中的二进制表现形式) ↴
00111111-1111-1111-1111--1111-1111-1101 <<< 3 (右移2位后,前两位为0,变成了正数) ---> 1073741821
发表评论
-
IO输入与输出
2012-08-13 17:21 0IO/输入输出 File类 它是IO包中唯一代表磁盘文件本身信 ... -
网络编程-总结01
2012-08-12 20:38 704网络模型: OSI参考模型 TCP/IP参考模型 ... -
IO-概念、流细节
2012-08-12 19:55 898流:就是用于读写数据的,在Java程序中,对于数据的输 ... -
黑马程序员-Java基础加强-知识总结
2012-07-30 04:24 1037------- android培训、java ... -
黑马程序员-银行业务调度系统的分析、设计、实现
2012-07-28 20:19 795------- android培训、java培训、期待与 ... -
黑马程序员-交通灯管理系统的分析、设计、实现
2012-07-28 01:49 715------- android培训、java培训、期待与 ... -
黑马程序员-编程基础03-单例设计模式
2012-07-27 17:47 583------- android培训、java培训、期待与 ... -
黑马程序员-编程基础02-小知识点
2012-07-27 17:12 846------- android培训、jav ... -
黑马程序员-Java开发前奏
2012-07-26 17:10 743------- android培训、java培训、期待与您交流 ... -
IO-1
2012-07-24 18:26 08.File类 1)File类是IO包中唯一代表磁 ... -
IO-2
2012-07-24 18:24 011.字符编码 计算机里只有数字,计算机里的一 ... -
为什么匿名内部类只能访问其所在方法中的final变量
2012-07-24 18:03 0(1).所谓“局部内部类”就是在对象的方法成员内部定义的类。而 ... -
黑马程序员-网络编程-总结02
2012-07-25 00:04 661------- android培训、java培训、期待与 ... -
黑马程序员-GUI
2012-07-25 00:08 640------- android培训、java培训、期待与 ... -
黑马程序员-IO包中的其它对象
2012-07-25 00:04 656------- android培训、ja ... -
黑马程序员-异常
2012-07-25 00:03 706------- android培训、java培训、期待与 ... -
黑马程序员-&和&&的区别
2012-07-24 14:31 539------- android培训、java培训、期待与 ... -
黑马程序员-将指定目录下的文件复制到指定的目录,并更改扩展名
2012-07-24 14:20 1001------- android培训、java培训、期待与 ... -
黑马程序员-几种常用排序算法
2012-07-24 14:06 572------- android培训、java培训、期待与 ... -
黑马程序员-wait and notify
2012-07-24 13:12 701------- android培训、jav ...
相关推荐
黑马程序员 - Java基础教学 - 04 - 数组、进制转换、二维数组
黑马程序员-SpringCloud-学习笔记01-认识微服务
黑马程序员 - Java基础教学 - 05 - 面向对象(1).doc
黑马程序员 - 毕向东 - Java基础教学 - 第01天 个人观看视频总结文档
黑马程序员-SpringCloud-学习笔记-03-Eureka注册中心
黑马程序员 - Java基础教学 - 03 - 变量的作用域、for循环、break、continue、内存结构
黑马QT讲义,适合QT入门,使用,教程很比较基础,新手可以看看,另外视频链接在哔哩哔哩中。
黑马程序员 - 毕向东 - Java基础教学 - 第02天 个人观看视频总结文档
黑马程序员 - Java基础教学 - 08 - 面向对象(4)-多态.doc
黑马程序员 - Java基础教学 - 06 - 面向对象(2) - 关于静态static的那些事.doc
黑马程序员-SpringCloud-学习笔记-02-微服务拆分及远程调用
黑马程序员-java32期培训视频(基础+就业)黑马程序员-java32期培训视频(基础+就业)
黑马程序员linux服务器开发网络编程配套文档,很好的参考资料
day01_Object类、常用API day02_Collection、泛型 day03_List、Set、数据结构、Collections day04_Map,斗地主案例 day05_异常,线程 day06_线程、同步 day07_等待与唤醒案例、线程池、Lambda表达式 day08_File类、...
黑马程序员-梅兰商城项目实战,包含图片素材和编写源码。
C++黑马程序员-演讲比赛流程管理系统记录
黑马程序员--毕向东全套Java视屏,讲解的相当全面,各位如果需要,尽快下载哦! 另外如果视频链接存在打不开的问题,请留言,必定及时更新链接。
NULL 博文链接:https://840198532-qq-com.iteye.com/blog/1490901
NULL 博文链接:https://840198532-qq-com.iteye.com/blog/1490903
NULL 博文链接:https://huangminwen.iteye.com/blog/1157983