首页 > 试题广场 >

下列能实现一个正整数N对256求余运算的代码是:

[不定项选择题]
下列能实现一个正整数N对256求余运算的代码是:
  • N%256
  • N<<8
  • N>>8
  • N & 0xFF
对数进行256取模时,只要取出低八位的数即可求得最后的模值。做题一定要注意灵活变通 。
发表于 2016-06-03 20:39:38 回复(1)
其实D选项仅仅是在于取模的数为2的n次幂才成立。理由很简单,在2进制表示的时候,满足2的n次幂的二进制数只需一位来表示。从低位开始算,这个位是第n+1位。任意正整数N对它求余,就只需要保留从低位起到第n位的数字即可,也就是上述很多答案所说的。但是如果取模的数不是只有一位表示的话,就不能这么做了.
发表于 2017-02-10 20:26:11 回复(1)
不知道是多选啊,直接选了个A
发表于 2016-03-23 15:30:21 回复(0)
左移位运算是乘运算,但右移位运算是除运算,而不是模运算!
编辑于 2016-03-07 19:04:51 回复(1)
对256取余,255表示为 0xFF(11111111),只需取出N低8位部分,其他位置为0,故使用运算符&。>>8和<<8是移位处理,会将N缩小或放大2的8次方倍,缩小时会失去低8位即余数。
发表于 2016-06-27 23:12:00 回复(0)
对256取余,255表示为0xFF(11111111),只需取出N低8位部分,其他位置为0,故使用运算符&。>>8和<<8是移位处理,会将N缩小或放大2的8次方倍,缩小时会失去低8位即余数。
编辑于 2015-09-19 10:32:56 回复(4)
A mol B = A-(A div B)*B
发表于 2016-12-27 14:57:19 回复(0)
ai_头像 ai_
1,  N & 0xFF , 其中 FF 表示的是后八位(4 + 4) 都设置为1, N & 0xFF 则是舍去前面的,保留后面八位; 
2,还可以, N - (N >> 8) , 得到的也是。 
发表于 2016-10-20 19:09:50 回复(2)
选AD,A求余,BC二进制的位运算,相当于除以或者乘以2的8次方;D是与运算,0xff是11111111,进行与运算时只取低八位,其他为0,进行求余。
发表于 2016-03-11 08:42:50 回复(0)