如果我想快速查看进行移位的代码(左/右)的结果,我通常会记下二进制表示并进行移位。
但对于例如4的移位实际上写入十六进制表示并将字符/数字1位置向左/右移动实际上更快?
还有其他任何技巧吗?
答案 0 :(得分:0)
基本上,移位4位是删除1个十六进制,因为每个十六进制数字是二进制的4位。因此,移位8位就像删除2个十六进制,依此类推。
如果你愿意,你也可以用八进制进行相同类型的移位,虽然我们将使用3而不是4位。
或者,如果您希望以十进制而不是八进制或十六进制的形式查看转换,则可以将转换视为表示除法和乘法的方式。
向左移动,您可以使用x1<< x2作为乘以2 ^ x2的形式。
右移,您可以使用x1>> x2作为除以2 ^ x2的形式。请注意,这适用于正数,而不是负数。