开发者

Boolean Logic and Truth Tables Explanation

I'm needing to create a truth table, and I really need to find a resource to explain 开发者_开发知识库how it works. I'll give an example of a problem. I have to create a truth table based on this: A*(B+AB)=AB So the truth table looks something like:

0 0

0 1

1 0

1 1 for A*(B+AB)=AB

How do I even begin to solve this? Are there any good resources that give a good explanation on what to do?

Ok So I then did one more complicated that involves a NOT. ! indicates not

!(A*!B+!AB) = AB+!(A+B)

So I did C = A*!B D=!A*B then !(C+D) for the left side. My final answer for that side is

0 0 1  
0 1 0
1 0 0
0 0 1

So the right side is this

C = A * B D = A + B then C + !D so that looked like this

0 0 1
0 1 0
0 1 0
1 1 1

I think I'm getting it? :)


Edit: I put in some extra explanation given your comment (which is now deleted).

A and B are two boolean variables. For example, in a program, A might be firstTestOK and B might be secondTestOK. Each of A and B can be either true (1) or false (0).

A+B means A or B which is true if either A or B is true. A*B means A and B is is true only if both A and B are true.

All of the combinations for A, B are:

  1. A is false and B is false
  2. A is false and B is true
  3. A is true and B is false
  4. A is true and B is true

This can be written more compactly as a truth table as follows:

A B
0 0
0 1
1 0
1 1

What you've been asked to do is show A*(B+AB) is the same as AB. So, for each combination, we work out the left-hand-side, which is A*(B+AB) and the right-hand-side, which is AB:

A B C=A*B D=B+C A*D  = A*B
0 0  0     0     0      0
0 1  0     1     0      0  
1 0  0     0     0      0
1 1  1     1     1      1

so, looking at all of the combinations in the last two columns, we see that the results are the same, so AD=A(B+AB) is AB.

Since the left-hand-side is a little complicated, I did it in steps by breaking it up into pieces, by introducing C and D.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜