社区
Java SE
帖子详情
java 求x和16的商和余数,怎么才能效率高啊!
guzhong
2007-09-29 09:42:55
求x和16的商和余数,怎么才能效率高啊!
如不用/和%
...全文
506
4
打赏
收藏
java 求x和16的商和余数,怎么才能效率高啊!
求x和16的商和余数,怎么才能效率高啊! 如不用/和%
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
天漏客
2008-09-14
打赏
举报
回复
求余数不是或运算吧。
应该是15的与运算。
可以自己试验。
17与15的或运算结果为:31
17与15的与运算结果为:1
所以与运算才是求余数。
manbaum
2007-09-29
打赏
举报
回复
Computeryp 说的没错。
Computeryp
2007-09-29
打赏
举报
回复
求商使用>>运算符,右移一位相当于除2.>>运算符速度比除法运算符快
a=x>>4;
求余用|运算符,按为或
a=x|15;
得到的结果就是余数
宋玮-深圳
2007-09-29
打赏
举报
回复
.....这个最原子的操作,你还要优化??
效率瓶颈肯定不再这里吧
java
long型数据做
余数
运算_
Java
基本数据类型运算
Java
基本数据类型及其运算1. 整型运算四则运算对于整型类型,
Java
只定义了带符号的整型,因此,最高位的bit表示符号位(0表示正数,1表示负数)。各种整型能表示的最大范围如下:byte:-128 ~ 127short: -32768 ~ 32767int: -2147483648 ~ 2147483647long: -9223372036854775808 ~ 922337203685477...
高效的
求
余数
的办法((n-1)&hash)
然后就是&操作了,直接&8的话是不行的,假设最后四位是1XXX,那么1XXX&1000=1000,很明显对8取余得到的结果不可能是8,
余数
应在0到除数减一之间,
Java
的HashMap源码中用到的(n-1)&hash这样的运算,查找发现这是一种高效的
求
余数
的办法,但其中的原理是什么呢为什么可以这么做呢?(其余2n除数也同理)先上结论:假设被除数是x,对于除数是2n的取余操作x%2n,都可以写成x&(2n-1),位运算
效率高
!因为比8更高位的都来自于8的2次幂,所以高位的1都是可以整除8,可以直接舍弃。...
java
long型数据做
余数
运算_
Java
数据类型 类型转换 运算符
常用的进制二进制八进制十进制十六进制进制之间是可以互相转换的。进制如何转换 以二进制和十进制进制为例10 -> 2不停的除以2直 至结果是1 然后从1开始 从下至上 拼接
余数
2 -> 101010 -> 10 02^0 + 12^1 + 02^2 + 12^3 = 101110 -> 14 02^0 + 12^1 + 12^2 + 12^3 = 14100000000 -&...
Java
实现Modbus协议中的CRC
16
校验算法
本文还有配套的精品资源,点击获取 简介:在工业自动化领域,Modbus协议使用CRC
16
进行数据传输的错误检测。为了验证数据帧的正确性,CRC
16
通过计算
16
位校验码来确保数据的准确性和完整性。本文介绍了CRC
16
的基本原理和在
Java
中的实现方法,包括定义CRC生成多项式、初始化CRC寄存器、位移操作和返回CRC值。此外,还展示了
Java
代码实现的简化示例,并阐述了CRC...
Java
运算符(超详细!)
一、算术运算符 运算符 含义 +
求
和 - 相减 * 乘积 /
商
%
求
余数
(
求
模) ++ 自加一 – 自减一 1. ++运算符 1.1 ++在变量前 当++出现在变量前,会先自加一,在做赋值运算 int x = 100; int y = ++x; 步骤: ② ① System.out.println(x); // 101 System.out.println(y); // 101 1.2 ++在变量后 当++出现在变量后,会先做赋值运算,再自加1
Java SE
62,623
社区成员
307,257
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章