对 Unsigned int 取模的位掩码
Bitmask for modulo on Unsigned int
在 C 语言中对 unsigned int 进行模除以 256 使用什么位掩码?另外应该如何解决这个问题?
您必须使用所有比 256 位更不重要的位。
因此,在这种情况下,这将是 128、64、32、16、8、4、2 和 1 位。因此,生成的位掩码将为 0b11111111 = 0xff.
在 C 中,结果代码可能是 j & 0xff
。但是那种手动翻译通常是不必要的,你也可以使用j % 256
。如果出于性能原因想使用位掩码,请不要担心,编译器通常会将其优化掉。
在 C 语言中对 unsigned int 进行模除以 256 使用什么位掩码?另外应该如何解决这个问题?
您必须使用所有比 256 位更不重要的位。
因此,在这种情况下,这将是 128、64、32、16、8、4、2 和 1 位。因此,生成的位掩码将为 0b11111111 = 0xff.
在 C 中,结果代码可能是 j & 0xff
。但是那种手动翻译通常是不必要的,你也可以使用j % 256
。如果出于性能原因想使用位掩码,请不要担心,编译器通常会将其优化掉。