我正在学习Data Structures Problem Solving Using Java一书,并被要求在书中为给定函数的第5行提供详细的伪码。显然,第5行相当于16位二进制数的加法和移位,但我不明白它是如何工作的。我来自一个基本的Java背景,并将第5行理解为一个存储变量乘以37,并添加了循环迭代到的当前字母(假设在将其添加到int hashVal时,它将被转换为ASCII字符)。tableSize; hashVal += tableSize;
我有一个二进制no say,我在变量中有一个值,即value = 4。我想将二进制no右移存储在" value“变量中的位数,然后想要将移位的位存储在一个变量中,还想保存在另一个变量右移后获得的二进制nobinary_number = 110000001then shifting no of bits in "value" to right (11000001 >> value)
现在我最终想要有两个变量,一个包含移位后的二进