# MCS-170 The Nature of Computer Science

## 1. Welcome to the Course!

• Introductions, Roll, Student Survey
• Gain general knowledge about computers and computer science (Curiosity)
• Expand skills in programming and computer literacy (Market)
• Fulfill quantitative reasoning general education requirement (Necessity)
• In any event, this course is designed to meet all of these goals and, hopefully, do so in a fun way.

## 3. What is Computer Science?

• Computer science is the study of computational processes.
• Relatively young science -- first electronic digital computer - 1946 (Eniac)
• Interdisciplinary nature: Mathematics, Electrical Engineering, Solid State Physics, Neuro-Science, Quantum Physics (future).
• Computation:
• Design and analysis of algorithms (recipes for solving problems)
• Implementation of algorithms as programs
• Design and organization of computational devices for executing programs
• Meta-analysis of computation-- how fast is an algorithm? how much memory will it use? does the algorithm give a correct answer?

## 4. Computers

• A computer is a computational device that receives, stores, and processes information
• Components of a computer:
• Hardware: Physical components
• CPU
• memory
• input/output devices
• Software: Programs that run on the computer (stored in memory)
• von Neumann architecture (John von Neumann - 1950's)
• Memory <- bus -> CPU <- bus -> I/O Devices
• Memory-- Information stored as series of bits (data is a 0 or 1)
• byte (B) = 8 bits  (256 possible values for data) ( a character)
• kilobyte (KB) = 2^10 bytes = 1,024 bytes  (few paragraphs)
• megabyte (MB) = 2^20 bytes = 1,048,576 bytes  (a book)
• gigabyte (GB) = 2^30 bytes  (a small library)
• terabyte (GB) = 2^40 bytes (Library of Congress)
• Types of memory: Cache, RAM, hard disc, floppy disk, CD, flash.
• CPU - main processing unit
• takes data and instructions from memory
• executes instructions on data
• returns result to memory
• millions of electronic components packed into small chip
• I/O - interface to "real" world.
• Mouse, monitor, printer, keyboard, game pad, microphone, scanner, Ethernet card