相关疑难解决方法(0)

2454
推荐指数
25
解决办法
111万
查看次数

LEA指令的目的是什么?

对我来说,它看起来像一个时髦的MOV.它的目的是什么,我什么时候应该使用它?

x86 assembly x86-64 x86-16

632
推荐指数
15
解决办法
54万
查看次数

什么是位屏蔽?

我对C编程很新,我遇到了掩码.有人可以向我解释位屏蔽的一般概念和功能吗?非常感谢例子.

c terminology bit-manipulation bitmask bitwise-operators

162
推荐指数
2
解决办法
24万
查看次数

为什么在hashCode中使用素数?

我只是想知道为什么在类的hashCode()方法中使用素数?例如,当使用Eclipse生成我的hashCode()方法时,总会使用素数31:

public int hashCode() {
     final int prime = 31;
     //...
}
Run Code Online (Sandbox Code Playgroud)

参考文献:

这是关于Hashcode的一篇很好的入门文章和关于我如何找到哈希工作的文章(C#但概念是可转移的): Eric Lippert的GetHashCode指南和规则()

java primes hashcode

160
推荐指数
4
解决办法
6万
查看次数

轮班操作员如何在Java中工作?

我试图了解班次运营商,并没有得到太多.当我尝试执行以下代码时

System.out.println(Integer.toBinaryString(2 << 11));
System.out.println(Integer.toBinaryString(2 << 22));
System.out.println(Integer.toBinaryString(2 << 33));
System.out.println(Integer.toBinaryString(2 << 44));
System.out.println(Integer.toBinaryString(2 << 55));
Run Code Online (Sandbox Code Playgroud)

我得到以下内容

1000000000000    
100000000000000000000000    
100    
10000000000000    
1000000000000000000000000    
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下吗?

java bit-shift

140
推荐指数
5
解决办法
22万
查看次数

两个左尖括号是什么意思?

我看到了一个我以前从未见过的循环:

for (int i = 0; i < (1 << list.Count); i++)
Run Code Online (Sandbox Code Playgroud)

我无法理解是什么(1 << list.Count)意思,也许有人可以解释我这个?

.net c# for-loop list bitwise-operators

118
推荐指数
0
解决办法
6570
查看次数

哪个更快:x << 1或x << 10?

我不想优化任何东西,我发誓,我只想出于好奇而问这个问题.我知道,在大多数硬件有位移(例如的组件的命令shl,shr),它是一个命令.但是,你转移了多少比特(纳秒级,或CPU技巧)是否重要?换句话说,在任何CPU上是否更快?

x << 1;
Run Code Online (Sandbox Code Playgroud)

x << 10;
Run Code Online (Sandbox Code Playgroud)

请不要因为这个问题而恨我.:)

c c++ cpu performance low-level

82
推荐指数
8
解决办法
7018
查看次数

按位移位(左或右)做什么以及它用于什么?

我已经看过运算符>>和我看过的<<各种代码(我实际上并没有理解),但我只是想知道它们实际上做了什么以及它们的实际用途是什么.

编辑

如果移位是喜欢x * 2x / 2,就是从实际使用的真正的区别*/运营商?有性能差异吗?

bit-manipulation bit-shift bitwise-operators

63
推荐指数
5
解决办法
11万
查看次数

在Python中,>>和<<是什么意思?

我注意到我可以做一些事情,比如2 << 5获得64并1000 >> 2获得250.

我还可以用>>print:

print >>obj, "Hello world"
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?

python syntax operator-keyword

55
推荐指数
7
解决办法
6万
查看次数

管理Web应用程序权限的最佳方法是什么 - 位掩码或数据库表?

我正在考虑为"管理"Web应用程序设计权限系统的最佳方法.该应用程序可能有许多用户,每个用户都可以被分配一定的角色; 可以允许其中一些用户执行角色之外的特定任务.

我可以想到两种设计方法:一种是"权限"表,每个用户都有一行,布尔列,每个任务一个,为他们分配执行这些任务的权限.像这样:

User ID          Manage Users     Manage Products     Manage Promotions     Manage Orders
1                true             true                true                  true
2                false            true                true                  true
3                false            false               false                 true

我想到的另一种方法是使用位掩码来存储这些用户权限.对于32位有符号整数,这会将可管理的任务数限制为31,但实际上我们不可能有超过31个用户可以执行的特定任务.这样,数据库模式就会更简单,每次添加需要访问控制的新任务时,我们都不必更改表结构.像这样:

User ID          Permissions (8-bit mask), would be ints in table
1                00001111
2                00000111
3                00000001

人们通常使用什么机制,为什么?

谢谢!

permissions database-design web-applications

52
推荐指数
4
解决办法
4万
查看次数