CS99 Lecture 2 - week of 8/28 Programming + automating problem solving + problems are physical and abstract + build models which are physical and abstract + models will solve the problem where we cannot/will not + use a computer! need to write software... Computer Rudiments + hardware: physical components of a computer + software: "the intelligence" that runs the hardware - create with programming (coming up!) + information: bits and bytes -- sequences of 1s and 0s (digits) that represent non-digital information + memory: "space" inside a computer to store information - software can "borrow" a portion to use - programming involves using memory + file: collection of information with a name + directory: collection of files + folder: same as directory + path: location of file or directory starting from the "uppermost" directory + ASCII/text: characters found on the keyboard - uses 8 bits to represent a character which is a byte - ASCII (or text) format is universal - can load into almost editor and wordprocessor - can edit files with programs called text editors + Program: file composed of instructions using a computer language - usually text because we need to type those instructions! - the process of telling the computer to activate commands in a program is called running or executing - information is passed from your text to the computer - computer activates each instruction in sequence + Interpreting: computer reads each line of code and acts up it before acting upon the next line + Compiling: process of converting code into an unreadable format - more bits and bytes, but condensed - can create "runnable" (executable) files that quickly run your programs + Input: - any information you supply to a program + Output: - any information reported by a program Process of Programming + start with problem + look for solution + in-between step is called algorithm design - break solution down into sequence of steps - each step is an instruction - the model (or, performer of instructions) must be able to follow the instruction - may have to keep breaking down steps - final algorithm is a program in "words" + definition (from above): "Programming is automating problem solving" Computer Language + need to translate English language algorithm into a computer language + many options: MATLAB, Maple, Java, C, C++, etc + Maple for CS99