The Needs Of Computation


Published on

Published in: Technology, Education
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

The Needs Of Computation

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