Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
COMP 110 Computer Basics Luv Kohli August 25, 2008 MWF 2-2:50 pm Sitterson 014 1 Announcements jGRASP Office Hours ◦ Link to survey on web site Honor Code document 2 Questions? 3 Today in COMP 110 Hardware and Memory Programs and Compiling Your first program 4 Before Programming Need to know basics of a computer ◦ If you drive a car you should know it runs on gasoline What’s in the box? 5 Hardware vs. Software Hardware - physical machine ◦ CPU, Memory Software - programs that give instructions to the computer ◦ Windows XP, Games, jGRASP 6 Hardware An aside: there is a computer museum in the first floor lobby of Sitterson Hall Hardware CPU (Central Processing Unit) - the “Brain” ◦ Executes your instructions ◦ GHz - number of instructions per second, how fast is the computer ◦ Dual Core - multiple processing units per CPU, multiple brains 8 Memory Holds data for the computer How much the “Brain” can remember Main Memory ◦ Memory computer uses for intermediate calculations (program you are running) ◦ Expensive Auxiliary Memory (Secondary Memory) ◦ Disk drives, CDs, Flash drives ◦ Cheap 9 RAM (random access memory) Your main memory Random access? ◦ Fast access ◦ Access any location in memory in constant time 10 Measuring memory 2 gigabytes (GB) of RAM ◦ Bytes - measurement of memory ◦ Megabyte (MB) = 1 million (106) bytes (or 1,048,576 = 220 bytes) ◦ Gigabyte (GB) = 1 billion (109) bytes (or 1,073,741,824 = 230 bytes) 11 What is a byte? 1 byte = 8 bits (thanks to Dr. Brooks) Bit = 0 or 1 (off or on) Language of the computer is bits 0 0 1 1 1 0 1 0 - 1 byte of 8 bits Characters, numbers, encoded as series of bits – a byte: ◦ ◦ ◦ 0: A: a: 00110000 01000001 01100001 12 Program Set of instructions for a CPU to follow You will be writing programs ◦ We will look at one soon public class Hello { public static void main(String[] args) { System.out.println("Hello world!"); } } 13 Programming Languages Your Program High-level language (human readable) Compiler Machine Language (Bits) Low-level language (computer readable) 14 Java Object-oriented programming (OOP) language Based on the world around us 15 Objects, Methods, and Classes (oh my!) Object – program construction that has data and methods Methods – actions performed by objects Class – a type of object (e.g. Vehicle, Television) – objects in same class have same kinds of data and methods Data Methods Class: Car Object: myCar Make Honda Model Civic Accelerate() Accelerate Brake() Decelerate 16 Java: three main design principles Encapsulation Polymorphism Inheritance 17 Encapsulation Information hiding Packaging things up, only part of what is going on is visible ◦ myCar.accelerate() ◦ yourCar.accelerate() Just call these methods, the car will execute them 18 Polymorphism “Many forms” One method call can cause different actions in different contexts ◦ Class Airplane Object: myAirplane.accelerateToMaxSpeed() 550mph ◦ Class Car Object: myCar.accelerateToMaxSpeed() 100mph 19 Inheritance Way of organizing classes At each level, classification becomes more specific Vehicle Automobile Family car Sports car Bus School Bus Luxury Bus 20 Sample Java Program (section 1.3) import java.util.*; public class FirstProgram { public static void main(String[] args) { System.out.println("Hello out there."); System.out.println("I will add two numbers for you."); System.out.println("Enter two whole numbers on a line:"); int n1, n2; Scanner keyboard = new Scanner(System.in); n1 = keyboard.nextInt(); n2 = keyboard.nextInt(); System.out.println("The sum of those two numbers is"); System.out.println(n1 + n2); } } 21 java.util Package import java.util.*; Package = library of classes (standard programs) Different libraries have different classes and functions ◦ Physics library = Newtonian Physics ◦ java.util.* = Java utility classes, used for many things including reading data from keyboard 22 Begin the program public class FirstProgram { public static void main(String[] args) { Begin a program named FirstProgram Program names should make sense A program is also a class in Java ◦ A program class has a unique method ‘main’ 23 Output to screen System.out.println("Hello out there."); System.out.println("I will add two numbers for you."); System.out.println("Enter two whole numbers on a line:"); Write what is in quotes to screen 24 Invoke methods on objects Method myCar.start(); Object airplane.land(); Arguments System.out.println(“Hi”); Invoke Method 25 Variable int n1, n2; Variable - store piece of data n1 - store integer n2 - store integer 26 Create Scanner Object Scanner keyboard = new Scanner(System.in); Class Object Not always System.in Create object or instance (keyboard) of Scanner class Car myCar = new Car(); 27 Call method on object Object Method n1 = keyboard.nextInt(); Invoke/Call Read an integer from the keyboard and store it in n1 28 Output to screen System.out.println("The sum of those two numbers is"); System.out.println(n1 + n2); Add n1 and n2 Print the sum to the screen 29 Sample Java Program (section 1.3) import java.util.*; public class FirstProgram { public static void main(String[] args) { System.out.println("Hello out there."); System.out.println("I will add two numbers for you."); System.out.println("Enter two whole numbers on a line:"); int n1, n2; Scanner keyboard = new Scanner(System.in); n1 = keyboard.nextInt(); n2 = keyboard.nextInt(); System.out.println("The sum of those two numbers is"); System.out.println(n1 + n2); } } 30 Wednesday Designing Programs (Read 1.2) If time, start primitive types (start reading 2.1) Come to office hours if jGRASP is not working 31