COMP 110 Computer Basics Luv Kohli August 25, 2008 MWF 2-2:50 pm Sitterson 014 1.

Post on 27-Dec-2015

215 views 0 download

Transcript of COMP 110 Computer Basics Luv Kohli August 25, 2008 MWF 2-2:50 pm Sitterson 014 1.

COMP 110COMP 110Computer BasicsComputer Basics

Luv KohliAugust 25, 2008

MWF 2-2:50 pmSitterson 014

1

AnnouncementsAnnouncementsjGRASP

Office Hours◦Link to survey on web site

Honor Code document

2

Questions?Questions?

3

Today in COMP 110Today in COMP 110

4

Hardware and MemoryPrograms and CompilingYour first program

Before ProgrammingBefore ProgrammingNeed to know basics of a

computer◦ If you drive a car you should

know it runs on gasolineWhat’s in the box?

5

Hardware vs. SoftwareHardware vs. SoftwareHardware - physical machine

◦CPU, MemorySoftware - programs that give

instructions to the computer◦Windows XP, Games, jGRASP

6

HardwareHardware

An aside: there is a computer museum in the first floor lobby of Sitterson Hall

Hardware 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

MemoryMemoryHolds data for the computerHow much the “Brain” can rememberMain Memory

◦Memory computer uses for intermediate calculations (program you are running)

◦ExpensiveAuxiliary Memory (Secondary Memory)

◦Disk drives, CDs, Flash drives◦Cheap

9

RAM (random access memory)RAM (random access memory)Your main memoryRandom access?

◦Fast access◦Access any location in memory in constant

time

10

Measuring memoryMeasuring memory2 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?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: 00110000 ◦ A: 01000001◦ a: 01100001

12

ProgramProgramSet of instructions for a CPU to follow

You will be writing programs◦We will look at one soon

13

public class Hello{ public static void main(String[] args) { System.out.println("Hello world!"); }}

Programming LanguagesProgramming Languages

Your Program

Compiler

Machine Language (Bits)

High-level language (human readable)

Low-level language(computer readable)

14

JavaJavaObject-oriented programming (OOP)

languageBased on the world

around us

15

Objects, Methods, and Classes (oh my!)Objects, Methods, and Classes (oh my!)

Object – program construction that has data and methods

Methods – actions performed by objectsClass – a type of object (e.g. Vehicle, Television)

– objects in same class have same kinds of data and methods

16

Class: Car Object: myCar

Data Make Honda

Model Civic

Methods Accelerate() Accelerate

Brake() Decelerate

Java: three main design principlesJava: three main design principles

Encapsulation

Polymorphism

Inheritance

17

EncapsulationEncapsulationInformation hidingPackaging 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

PolymorphismPolymorphism“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

InheritanceInheritanceWay of organizing classesAt each level, classification becomes

more specific

20

Vehicle

Automobile Bus

Family car Sports car School Bus Luxury Bus

Sample Java Program (section 1.3)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 Packagejava.util Packageimport 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 programBegin the program

public class FirstProgram{ public static void main(String[] args) {

Begin a program named FirstProgramProgram names should make senseA program is also a class in Java

◦ A program class has a unique method ‘main’

23

Output to screenOutput to screenSystem.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 objectsInvoke methods on objects

myCar.start();

airplane.land();

System.out.println(“Hi”);

Object

Method

Invoke Method25

Arguments

VariableVariableint n1, n2;

Variable - store piece of datan1 - store integern2 - store integer

26

Create Scanner ObjectCreate Scanner ObjectScanner keyboard = new Scanner(System.in);

Create object or instance (keyboard) of Scanner class

Car myCar = new Car();

Class Object Not always System.in

27

Call method on objectCall method on object

n1 = keyboard.nextInt();

Read an integer from the keyboard and store it in n1

Object Method

Invoke/Call

28

Output to screenOutput to screenSystem.out.println("The sum of those two numbers

is");

System.out.println(n1 + n2);

Add n1 and n2Print the sum to the screen

29

Sample Java Program (section 1.3)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

WednesdayWednesdayDesigning Programs (Read 1.2)If time, start primitive types (start

reading 2.1)

Come to office hours if jGRASP is not working

31