Unit II: The Needs of Computation
Human’s Everyday Life Eating, working, sleeping, … The Human Beings… Eat less than pigs Are weaker than apes and elephants Run slower than panthers However, the human beings are intelligent Trying to do many things that  we have to do or  we are not able to do More more, bigger, larger, faster, longer, … In short, we solve various problems in everyday life
Human’s Problem-Solving Problem solving is a sequence of steps or methods that solve part of the domain problem Physically or Mechanically To run faster: bicycles, cars, trains, … To make more food: toaster, mills,… To fly high: aircrafts, jets, … Machines are stronger, faster, more accurate than the human beings and they never get tired.  To design machines that implement the sequence of steps of problem-solving
Human’s Problem-Solving Problem solving is a sequence of steps or methods that solve part of the domain problem To improve the ability of human mind… To read, to write, to teach, to learn, even to think…  What is the sequence of steps or methods to realize reading (writing, teaching, learning, or thinking)?  Mathematics is the one (close but not perfect)     
Computing, Computation, and Computers Problem-solving  Human   Machine    Mathematics Mathematics problem-solving Numbers/Symbols Calculation Steps For computing The computing machine (or computer) The main task is to “compute”
The difference between humans and computing machines In human beings input think act
The difference between humans and computing machines In machines input compute act    
Transformation input think act input compute act    
Transformation Transformation Representation (I/P) Interfacing Sensing (e.g., DSP) Data structure etc. Representation (O/P) Control Robotics Mechanism etc.    
Transformation Human’s problem-solving strategies     Mathematical representation/reasoning  Machine executable steps Algorithm Design Programming Language Data structure + Algorithm = Program Program + Computer  Computer-based problem-solving  Human problem-solving think compute
Representation of the World Calendar  Month: 12, Week: 7, Day: 30 Hour: 12/24, Min./Sec.: 60 others Number Systems in Human’s Life 7, 10, 12, 24, 60 How to compute in these number systems?
Computation in Different Number Systems Math.  10  Computing in the 10-based number system Human:   +   Machine:  Some ways to represent 10 different “states” Physical limitations and constraints  What materials? Cost/Performance/Capacity?
Design Issues A Machine that is capable of  representing N-based number system (N different states) performing fast and accurate computation in the N-based number system being reliable and not too expensive Binary system is the one Why?
The Binary System The binary system There are only 2 different states ON/OFF, B/W, 1/0, etc. To represent the world using binary notations Data represented in other number systems have to be transformed into the binary system Computation is done in the binary system The result is converted from its binary format into the original format 易經 易有太極 ;  太極生兩儀 ;  兩儀生四象 ;  四象生八卦 ; 八卦生六十四爻  (2 0     2 1    2 2    2 3    2 4    2 5    2 6    …)
The Binary System Computation in the 10-based number system 5+3=8 1000*25=25000 Computation in the binary number system How to ? Algebra? Operator? Operand? ON + ON * OFF = ?? Performing a sequence of binary operations
The Binary Computing System  Computer: A computing mechanism that performs binary operations  Currently, they are implemented in silicon chips (VLSI) Circuits for computation 01111 00011 10010 15 3 + 10 + 2 18
Problem-solving using “computers” Computers solve “computable” problems A Problem Describing  The Problem in Math. “ Computing” The  Corresponding Math.  Problem Returning The Result Solution  To The  Problem Human problem-solving v.s. computer-based problem-solving
Conclusion  Computers are for human problem-solving Mathematical representation of problems and solving steps Computers are “computing” machines Computers solve “computable” problems Some problems are un-computable Current computers are implemented in the binary numeric system (due to the limitations of physical implementation)

The Needs Of Computation

  • 1.
    Unit II: TheNeeds of Computation
  • 2.
    Human’s Everyday LifeEating, working, sleeping, … The Human Beings… Eat less than pigs Are weaker than apes and elephants Run slower than panthers However, the human beings are intelligent Trying to do many things that we have to do or we are not able to do More more, bigger, larger, faster, longer, … In short, we solve various problems in everyday life
  • 3.
    Human’s Problem-Solving Problemsolving is a sequence of steps or methods that solve part of the domain problem Physically or Mechanically To run faster: bicycles, cars, trains, … To make more food: toaster, mills,… To fly high: aircrafts, jets, … Machines are stronger, faster, more accurate than the human beings and they never get tired. To design machines that implement the sequence of steps of problem-solving
  • 4.
    Human’s Problem-Solving Problemsolving is a sequence of steps or methods that solve part of the domain problem To improve the ability of human mind… To read, to write, to teach, to learn, even to think… What is the sequence of steps or methods to realize reading (writing, teaching, learning, or thinking)? Mathematics is the one (close but not perfect)   
  • 5.
    Computing, Computation, andComputers Problem-solving Human  Machine  Mathematics Mathematics problem-solving Numbers/Symbols Calculation Steps For computing The computing machine (or computer) The main task is to “compute”
  • 6.
    The difference betweenhumans and computing machines In human beings input think act
  • 7.
    The difference betweenhumans and computing machines In machines input compute act  
  • 8.
    Transformation input thinkact input compute act  
  • 9.
    Transformation Transformation Representation(I/P) Interfacing Sensing (e.g., DSP) Data structure etc. Representation (O/P) Control Robotics Mechanism etc.  
  • 10.
    Transformation Human’s problem-solvingstrategies  Mathematical representation/reasoning  Machine executable steps Algorithm Design Programming Language Data structure + Algorithm = Program Program + Computer Computer-based problem-solving Human problem-solving think compute
  • 11.
    Representation of theWorld Calendar Month: 12, Week: 7, Day: 30 Hour: 12/24, Min./Sec.: 60 others Number Systems in Human’s Life 7, 10, 12, 24, 60 How to compute in these number systems?
  • 12.
    Computation in DifferentNumber Systems Math. 10  Computing in the 10-based number system Human:  +  Machine: Some ways to represent 10 different “states” Physical limitations and constraints What materials? Cost/Performance/Capacity?
  • 13.
    Design Issues AMachine that is capable of representing N-based number system (N different states) performing fast and accurate computation in the N-based number system being reliable and not too expensive Binary system is the one Why?
  • 14.
    The Binary SystemThe binary system There are only 2 different states ON/OFF, B/W, 1/0, etc. To represent the world using binary notations Data represented in other number systems have to be transformed into the binary system Computation is done in the binary system The result is converted from its binary format into the original format 易經 易有太極 ; 太極生兩儀 ; 兩儀生四象 ; 四象生八卦 ; 八卦生六十四爻 (2 0  2 1  2 2  2 3  2 4  2 5  2 6  …)
  • 15.
    The Binary SystemComputation in the 10-based number system 5+3=8 1000*25=25000 Computation in the binary number system How to ? Algebra? Operator? Operand? ON + ON * OFF = ?? Performing a sequence of binary operations
  • 16.
    The Binary ComputingSystem Computer: A computing mechanism that performs binary operations Currently, they are implemented in silicon chips (VLSI) Circuits for computation 01111 00011 10010 15 3 + 10 + 2 18
  • 17.
    Problem-solving using “computers”Computers solve “computable” problems A Problem Describing The Problem in Math. “ Computing” The Corresponding Math. Problem Returning The Result Solution To The Problem Human problem-solving v.s. computer-based problem-solving
  • 18.
    Conclusion Computersare for human problem-solving Mathematical representation of problems and solving steps Computers are “computing” machines Computers solve “computable” problems Some problems are un-computable Current computers are implemented in the binary numeric system (due to the limitations of physical implementation)