取 $X$ 的低四位,可以用 Y = 0000 1111,用 X & Y 获取 $X$ 的低四位。( )
答案A。结合题目信息和所学知识分析。
仔细审题,注意"不正确""不属于""不是"等否定词。用排除法缩小范围。
【考点】二进制表示|按位与运算|位掩码
1. 考纲定位 本题考查 GESP 二级/三级大纲中"二进制与位运算"核心考点。命题人专门设此题,就是要卡住那些只背过"按位与是逻辑与"却不懂二进制本质的考生——低四位对应的是 15(0xF),不是 7、不是 111、更不是 10111。
2. 解题思维 看到"取低四位",第一反应必须是二进制视角:低四位 = 1 + 2 + 4 + 8 = 15 = 0000 1111。要保留某几位、清零其余位,标准手法就是按位与一个掩码。X & 0000 1111 正好把 X 的高位全部抹成 0,只留下低四位原样——这就是位掩码(bitmask)技术,所有只取某几位、只改某几位的操作都绕不开它。
3. 陷阱拆解 选项 B(错误)是典型的"概念混淆"陷阱:有的考生会机械翻译"低四位"成"7(111)"或"111(二进制)",忘了四位是 0~15 的掩码;更阴的是,有人会纠结"取"字是否隐含赋值,但题目明确说"用 X & Y",操作已给定,只问掩码对不对。记住:位运算题里,"取某位"= "按位与对应掩码",这是铁律。
4. 反命题思维 命题人想考的是"理解掩码构造"而非"死记结论"。若把条件改成"取高四位",掩码就变成 0xF000;若改成"取低三位",就是 0x07;若改成"取奇数位",就得用 0x5555。刷到类似题,先问自己:要保留/清零哪些位? → 二进制里这些位置 1,其余置 0 → 这就是掩码。