An overview of computers and programming languages
1. Chapter 1:An Overview of
Computers and Programming
From Problem Analysis to Program Design,
2. Chapter Objectives
Learn about different types of computers.
Explore the hardware and software components of a computer system.
Learn about the language of a computer.
Learn about the evolution of programming languages.
Examine high-level programming languages.
Discover what a compiler is and what it does.
3. Chapter Objectives
Examine a Java program.
Examine how a Java program is processed.
Become aware of the Internet and World Wide Web.
Learn what an algorithm is and explore problem-solving techniques.
Become aware of structured and object-oriented programming design
Computers have greatly affected our daily lives—
helping us complete many tasks.
Computer programs (software) are designed specifically
for each task.
Software is created with programming languages.
Java is an example of a programming language.
5. An Overview of the
History of Computers
1950s: Very large devices available to a select few.
1960s: Large corporations owned computers.
1970s: Computers got smaller and cheaper.
1990s: Computers got cheaper and faster and were found in most homes.
6. Elements of a Computer
A computer has two components:
10. Main Memory
Ordered sequence of cells (memory cells).
Directly connected to CPU.
All programs must be brought into main memory before
When power is turned off, everything in main memory is
12. Secondary Storage
Provides permanent storage for information.
Examples of secondary storage:
13. Input Devices
Devices that feed data and computer programs into
14. Output Devices
Devices that the computer uses to display results.
Software consists of programs written to perform
Two types of programs:
16. System Programs
System programs control the computer.
The operating system is first to load when you turn on a
17. Operating System (OS)
The OS monitors the overall activity of the computer
and provides services.
18. Application Programs
Written using programming languages.
Perform a specific task.
Run by the OS.
19. Language of a Computer
Machine language is the most basic language of a
A sequence of 0s and 1s.
Every computer directly understands its own machine
A bit is a binary digit, 0 or 1.
A byte is a sequence of eight bits.
21. Evolution of
Early computers programmed in machine language.
Assembly languages were developed to make programmer’s job easier.
In assembly language, an instruction is an easy-to-remember form called
Assembler: Translates assembly language instructions into machine
24. Evolution of
To run a Java program:
1. Java instructions need to be translated into an intermediate
language called bytecode.
2. The bytecode is interpreted into a particular machine language.
25. Evolution of
Compiler: A program that translates a program written in a high-
level language into the equivalent machine language.
(In the case of Java, this machine language is the bytecode.)
Java Virtual Machine (JVM): A hypothetical computer developed to
make Java programs machine independent.
26. A Java Program
public class ASimpleJavaProgram
public static void main(String args)
System.out.println("My first Java program.");
System.out.println("The sum of 2 and 3 = " + 5);
System.out.println("7 + 8 = " + (7 + 8));
My first Java program.
The sum of 2 and 3 = 5
7 + 8 = 15
27. Processing a Java Program
Two types of Java programs are applications and applets.
Source program: Written in a high-level language.
Loader: Transfers the compiled code (bytecode) into main memory.
Interpreter: Reads and translates each bytecode instruction into
machine language and then executes it.
30. Problem-Solving Process
1. Analyze the problem: Outline solution requirements
and design an algorithm.
2. Implement the algorithm in a programming language
(Java) and verify that the algorithm works.
3. Maintain the program: Use and modify if the problem
33. Structured Design
1. A problem is divided into smaller sub-problems.
2. Each sub-problem is solved.
3. The solutions of all sub-problems are combined to
solve the problem.
34. Object-Oriented Design
In OOD, a program is a collection of interacting
An object consists of data and operations.
Steps in OOD:
1. Identify objects.
2. Form the basis of the solution.
3. Determine how these objects interact.
35. Chapter Summary
A computer system is made up of hardware and
Computers understand machine language; it is easiest
for programmers to write in high-level languages.
A compiler translates high-level language into machine
The Java steps required to execute a program are edit,
compile, load, and execute.
36. Chapter Summary
An algorithm is a step-by-step, problem-solving process
in which a solution is arrived at in a finite amount of
The three steps of the problem-solving process are
analyze the problem and design an algorithm,
implement the algorithm in a programming language,
and maintain the program.
The two basic approaches to programming design are
structured design and object-oriented design.