gpt4 book ai didi

c - c语言逻辑运算符的误解

转载 作者:太空狗 更新时间:2023-10-29 16:09:35 26 4
gpt4 key购买 nike

我的书中有这样的问题,我这样做是为了检查自己,但我不知道正确答案,也没有任何解释。

它有“a”和“b”两部分

a) A = B & C[0]
b) A = A ? B : C[0]

C[0] = 0x00001234
A = 0x00000000
B = 0x00002222

它想从我这里得到

1)what is the result of A 
2) the MIPS instruction for each part
3)show the bit level representation of each in structure.

谢谢

最佳答案

& 是按位与。如果对应的两个输入位都为 1,则输出的每一位都为 1:

0x00001234 = .... 0001 0010 0011 0100
0x00002222 = .... 0010 0010 0010 0010

AND result = .... 0000 0010 0010 0000 = 0x00000220

我不知道 MIPS,但该指令可能只是称为 and

? 是三元运算符:您的示例表示“如果 A 是一个真正的 bool 表达式,则返回 B,否则返回 C[0]”。通常在 C 中 false 为零而 true 非零(我不是 100% 确定这是否标准化 - 我不认为它在早期的标准中,但它是常见的用途)所以

  • 如果 A = 0x0000,则 (bool)A == false,结果为 C[0]。
  • 如果 A = 0x0220(继承 a 部分的结果)则 (bool)A == true,结果为 B。

关于c - c语言逻辑运算符的误解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4285745/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com