2011-01-22 35 views
0

老师给了我们这个问题,我无法回答,我希望能得到一些帮助。如何解决这个逻辑操作? (作业)

执行以下逻辑运算:
1 AB5D和CD5F
2- DD1D XOR B159

而且我想知道,我应该遵循找到正确的答案的步骤。

+1

为什么要将动词“I”连接起来? Doesn'tmakeiteasiertoread。请用正确的英文写。同样对于作业问题,你应该提供你的方法和你的想法。我们不会为你做你的功课。 – 2011-01-22 11:52:29

+1

请使用完整的单词和完整的句子来更改您的问题。另外,大会和这个有什么关系? – thkala 2011-01-22 11:56:03

回答

0

0xAB5D和0xCD5F = 0x895D

0xDD1D XOR 0xB159 = 06C44

使用 '计算' 在Windows或GNOME的Linux或只是Pyrhon /红宝石它的gnome-计算器“。

UPD:如果你想这样做在纸上,请按照接下来的几个简单的步骤:

  • convert your numbers to binary(为前0xAB5D == 1010101101011101; 0xCD5F == 1100110101011111)
  • 执行bitwise operation这两个二进制文件(1010101101011101 AND 1100110101011111 = 1000100101011101)
  • 转换结果为十六进制或十进制
2

将单独的十六进制字符转换为二进制,将它们放在另一个上,并且对于每一列,如果两个都是1,结果将是1;在所有其他情况下,结果将为零。把它写在另外两个二进制字符串的下面。然后,当你完成了所有数字时,将它转换回十六进制。

例子:

A = 1010 
C = 1100 
    ---- 
    1000 = 8 

还有就是你取与AB5D和CD5F的第一位。继续这样做,你会得到它。

异或操作给出1,其中一个或另一个数字是1,但不是两者。

你应该清楚所有的bitwise operations;他们都可以以同样的方式完成。

3

成员是十六进制的(AB5D,CD5F,...),所以如果你在二进制之前转换它们会更容易。您可以使用此表:

0 = 0000 4 = 0100 8 = 1000 C = 1100 
1 = 0001 5 = 0101 9 = 1001 D = 1101 
2 = 0010 6 = 0110 A = 1010 E = 1110 
3 = 0011 7 = 0111 B = 1011 F = 1111 

因此,AB5D是1010101101011101

然后你应用按位运算。这意味着,例如,A XOR 3的结果是:

A XOR 3 = 
1010 XOR 0011 = 
1001 = 
9 (see conversion table)