推荐答案
测试一下
题目
下面表达式中结果位1' b1的是
A 4' b1010&4' b1101
B !4' b1001 || !4' b0000
C &4' b1101
D ~4' b1100
参考答案与知识点
参考答案
正确选项为B。解析:选项A中,4'b1010 & 4'b1101是按位与运算,结果为4'b1000,宽度为4位,不是1位,且值不等于1'b1。选项B中,!4'b1001是逻辑非,因4'b1001非0,结果为1'b0;!4'b0000是逻辑非,因4'b0000等于0,结果为1'b1;然后进行逻辑或运算,0||1=1'b1,结果为1位1'b1,符合要求。选项C中,&4'b1101是归约与运算,对每一位进行与操作:1&1=1,1&0=0,0&1=0,结果为1'b0。选项D中,~4'b1100是按位取反,结果为4'b0011,宽度为4位,不是1位。故只有B正确。考点:区分逻辑运算符(!、||、&&)和按位运算符(&、|、~、^)的作用和结果宽度;理解归约运算符(&、|、^、~&等)将向量归约为1位结果;注意逻辑非(!)将向量视为布尔值(非0即1),而按位非(~)逐位取反。易错点:误将按位与的结果当作1位,或混淆逻辑非与按位非。
涉及知识点
- 逻辑运算符与按位运算符区别
- 归约运算符的使用
- 运算符结果宽度判断
- 布尔值的向量表示