java移位计算(java移位运算的几道题)
本文目录
java移位运算的几道题
数在计算机中是以补码表示的。。因此10就表示为00001010 (假设是8个bit) 而-10 就是11110110 java中 int占4个字节(32位),long占8个字节。。如果对int进行移位操作的话,移的位数是n%32,就是说《《100 和《《4的结果是一样的(这个我没测过,书上写的); long类型的应该也是类似的。。记得有一个c语言面试题,如何快速计算出2*8等於多少,就是用2《《3,计算机只是2进制的,所以就进行移位计算机立即得到数值byte 8位,,也就是说它表示的范围是-128~127,而255 应该是两个字节才能表示再来,也就是 00000000 11111111,对它进行强转,好像是截断取低位,取8个1,由於是补码转换成十进制也就是-1 ps:至於-1为什麽用11111111表示,呵呵 负数的补码是它的绝对值(的补码)取反再加1。。正数的反码和补码都是其本身,1的原码(补码)是00000001,取反11111110 再加1 得11111111。以上如果有错。。那就是我记错了。。。 如果正解就给分哈。。。这个问题以前也困扰了我好多天。。
java中的几个移位运算符总结
/** 《《:左移 左边最高位丢弃,右边补齐0* 》》:右移 最高位是0,左边补齐0,;最高位是1,左边补齐1* 》》》:无符号右移 无论最高位是0还是1,左边补齐0* */public class Demo4 {public static void main(String args) {//《《把《《左边的数据乘以2的移动数的次幂System.out.println(3《《2);//3*2^2 = 12//《《把《《左边的数据除以2的移动数的次幂System.out.println(12》》2);//12/2^2 = 3System.out.println(-24》》》2); //1073741818}}
java移位运算
按8位2进制为例(更多位同样道理):2:00000010移动之后:00001000这样就是8了明白2进制和10进制的转换看得明白。2《《2等同于2*4所以等于8
更多文章:
hypersonic安装教程(hypersonic2 怎么安装)
2024年6月17日 13:30
echarts自定义滚动条样式(echarts的dataZoom详解及用法)
2024年7月23日 16:19
工作汇报ppt模板下载免费(如何为工作汇报PPT选一个合适的模板)
2024年7月12日 13:37
什么软件可以无缝切图(把4张图p在一起的无缝p图是什么软件)
2024年7月9日 10:45
compare搭配(2019年6月英语四级语法用法辨析:compare用法与搭配)
2024年7月19日 17:20
containskey重写比较器方法(java重写比较器,传入参数,如年龄或姓名,分别按其排序,)
2024年8月28日 23:45
白盒测试用例设计实例(4. 白盒测试设计测试用例的原则是什么)
2024年6月8日 03:51
javagui编程(java编程中,GUI界面的一般框架有什么希望大神给写个程序实例,程序内容包括布局的应用,多个)
2024年6月26日 05:41
初学android开发书籍推荐(有一个很好的创意,想开发一个应用软件,但自己才高二,没有任何专业知识,怎么办)
2024年7月19日 03:17
雪暴是什么意思 雪暴的意思?东北雪暴吹出末日景象,恶劣天气是怎么产生的
2024年7月22日 11:59
graphics是什么意思啊(电脑右下角出现Intel(R)ExtremeGraphics)
2023年5月13日 00:40
软件工程与uml项目化实用教程(简述UML的含义及在软件工程中的作用)
2024年7月23日 05:21
jsp内置对象和作用(写出jsp的9个内置对象,并写出其作用或1~2常用方法)
2024年7月24日 12:01