E?X % 256 = ?L
这似乎总是起作用,其中256是基数10,%是模数函数。
为什么?
答案 0 :(得分:0)
“mod 256”是除以256后的余数。
在二进制中,结果是最低的8位(因为256是2到8)。
这就像“mod 2”给出最低有效位(0或1)。
开(十进制,基数为10),“mod 100”给出最后两位小数(2013 mod 100 => 13)。
答案 1 :(得分:0)
这就是数学运作的方式。如果您将 x 除以 m n ,则余数将是的最低 n 位数基数 m 中的> x 。
例如,在基数10中,如果将任何数字除以10 n ,则除法的其余部分将是最不重要的 n 原始数字的数字。例子:
5 mod 10^1 = 5 mod 10 = 5
1245 mod 10^2 = 1245 mod 100 = 45
二进制中完全相同的事情 - 256是2 8 (如果你愿意的话,或者二进制的100000000)。如果将任何数字除以100000000,则余数将是该数字的最低8位。
答案 2 :(得分:0)
简单:
当您按256
进行修改时,您实际上正在按100000000
例如:假设您有32位数字11110011111111001111011011110000
并将其除以256
(基数为10)/ 100000000
,这样您基本上可以取出最后8位数字即11110000
,你可以这样想。在十进制中假设你想要最后4位数,所以你必须采用10000
(基数10)的mod。类似于二进制数