Difference between revisions of "CSC103: DT's Notes 1"
Line 36: | Line 36: | ||
The choice of using electricity has influenced greatly a fundamental way in which modern computers work. They all use the binary system at the lowest level. Because electricity can be turned ON or OFF with a switch, it was only logical that these two states would be used to represent information. ON and OFF. 0 and 1. True and False. But if we can represent two different states, two different levels of information, can we represent other than 0 or 1? Say 257? Can we also organize electrical circuitry that can perform the addition of two numbers? | The choice of using electricity has influenced greatly a fundamental way in which modern computers work. They all use the binary system at the lowest level. Because electricity can be turned ON or OFF with a switch, it was only logical that these two states would be used to represent information. ON and OFF. 0 and 1. True and False. But if we can represent two different states, two different levels of information, can we represent other than 0 or 1? Say 257? Can we also organize electrical circuitry that can perform the addition of two numbers? | ||
− | The answer | + | The solution and answer are provided by two giants of computer science, '''George Boole''', and '''Claude Shannon''' who worked at very different times. Boole, in the 1840s, conceived an algebra, that is a mathematical system that obeyed the laws an algebra typically verifies, but that was based on only two values, two symbols. Boole's interest was ''logic'' and wether we can represent any expression that is only True or False as a combination of simpler assertions, that themselves can be only True or False. He succeeded in showing that this system of his was indeed an algebra, a '''[http://mathworld.wolfram.com/BooleanAlgebra.html boolean algebra]''', in the mathematical sense. Quite a strong statement, and mostly of use for people interested in logic. |
− | |||
+ | Before we move on to Shannon, let's go through a simple example that will illustrate how boolean operators work. | ||
-Binary sytem: whatever we can do in base 10, we can do in base 2. Algebra. + * 0, 1 | -Binary sytem: whatever we can do in base 10, we can do in base 2. Algebra. + * 0, 1 |