comp 110 computer basics luv kohli august 25, 2008 mwf 2-2:50 pm sitterson 014 1
TRANSCRIPT
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