Ch 6 **** - The 5 generations of computers * Generation 0 : mechanical * Generation 1 : vacuum tubes * Generation 2 : transistors * Generation 3 : IC's * Generation 4 : VLSI * Generation 5 : Parallel processing & networking Ch 8 **** - Algorithm = step-by-step procedure that, when followed, will result in an answer to a problem - Example algorithms: cooking recipes, bicycle assembling instructions - Searching algorithms: * linear (or sequential) search works well on any array but it takes time O(n) since it has to examine every element * binary search works on sorted array only but it takes time O(log n) since each wrong probe reduces the range by half - Different kinds of programming languages * machine language * assembly language * high-level languages, eg, javascript, java, C, C++, perl, python - A high-level language program has to be translated into a machine language program before it can be executed on a machine. - Two methods of translation: * interpretation eg javascript * compilation eg C++ Ch 10 ***** - 3 major themes of CS: * theory * software * hardware - CS consists of many subfields: * algorithms & data structures * architecture * operationg systems & networking * software engineering * artificial intelligence ... - Alan Turing work * Turing machines & computability & the halting problem * Turing test in artificial intelligence Ch 12 ***** - analog vs digital signals - how to represent sound, pictures, movies, characters, strings, numbers: signed & unsigned integers, floating point numbers - conversion of binary numbers to & from decimal numbers - know how many different values can a k-bit binary numbers represent Ch 14 ***** - the Von neumann architecture - stored program computer - CPU subunits * CU * registers * ALU - datapath cycle - machine language - be able to execute assembly language programs