0% found this document useful (0 votes)
30 views32 pages

Intro Chapter 12A

The document discusses computer programs and software. It explains that programs are instructions for the CPU and describes different types of files that make up software like executable files, DLL files, and batch files. It also covers topics like how hardware and software interact, writing and planning programs, and structured and object-oriented programming.

Uploaded by

Sikander Ghumman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views32 pages

Intro Chapter 12A

The document discusses computer programs and software. It explains that programs are instructions for the CPU and describes different types of files that make up software like executable files, DLL files, and batch files. It also covers topics like how hardware and software interact, writing and planning programs, and structured and object-oriented programming.

Uploaded by

Sikander Ghumman
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 32

McGraw-Hill

McGraw-Hill Technology Technology Education


Education Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved.
Copyright © 2005 by The McGraw-Hill Companies, Inc. All rights reserved.
Chapter 12A

Creating Computer
Programs

McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved.
What Is a Computer Program?
• Computer programs
– Also called software
– Are a list of instructions
– Instructions are called code
– CPU performs the instructions
– Three types
• Operating system
• Utility
• Application

13A-3
Software Is Stored In Many Files
• Executable files
– Contain the instructions for the CPU
– Have extensions of .exe, or .com
– An executable file (EXE file) is a computer
file that contains an encoded sequence of
instructions that the system can execute
directly when the user clicks the file icon

13A-4
Software Is Stored In Many Files
• Dynamic link libraries
• A dynamic link library (DLL) is a
collection of small programs that larger
programs can load when needed to
complete specific tasks
– Partial executable file
– Used to support executable files
– Have .dll extensions

13A-5
Software Is Stored In Many Files
• Initialization files
• A file, such as the sm. ini file or the
smstart script, which stores program
settings that provide overall
configuration and control information for
an application.
– Contain configuration settings for software
– Have a .ini extension
– Modern programs use the registry

13A-6
Software Is Stored In Many Files
• Help files
– Contain information about the software
– Information is indexed and searchable
– Provides an online manual
– Have a .chm or .hlp extension

13A-7
Software Is Stored In Many Files
• Batch files
– Used to automate tasks
– Hold a series of OS commands
– Have a .bat extension

13A-8
Hardware/Software Interaction
• Program execution
– Software executes at the CPU level
– Code to play a sound
• Code generates an interrupt
• CPU tells the sound card to play
• Sound card plays the file
– Programmer creates the code

13A-9
Hardware/Software Interaction
• Code
– Statements written in a programming
language
– Writing code can be tedious
• Code must be perfect
• Order of steps must be exact
– Writing code is quite exciting
• Problems are solved
• New ideas are formed

13A-10
Writing Code

13A-11
Hardware/Software Interaction
• Machine code
– Recall that computers think in binary
– Code is translated into machine code
• CPU executes the machine code
– CPUs have a unique machine code

13A-12
Hardware/Software Interaction
• Programming languages
– Simplifies the writing of code
• English is used to describe the binary
– Original code is called source code
– Several hundred languages exist

13A-13
Hardware/Software Interaction
• Compilers and interpreters
– Converts source code into binary
• Allows code to execute
– Checks source code for correctness

13A-14
Hardware/Software Interaction
• Compiler
– Creates an executable file
• Contents are called object code
– Executable can run on its own
– Each language has its own compiler
– C++ and Java are compiled languages

13A-15
Hardware/Software Interaction
• Interpreter
– Runs program one line at a time
– More flexible than compilers
– Slower than compilers
– Always needed to execute program
– Visual Basic and Perl are interpreted

13A-16
Planning a Computer Program
• Plans
– The steps to solve a problem
– Describe the expected results
– Programming without a plan is difficult

13A-17
Planning Tools
• Pseudo code
– Natural language statements that
resemble code
– Describes what must be done
– Can be written by non programmers
– Programmers develop unique versions

13A-18
Planning Tools
• Input-processing-output (IPO) charts
– Determines what is needed
– Input column
• Data inputted by the user
– Processing column
• Pseudo code describing the problem solution
– Output column
• Desired output from the program

13A-19
IPO Chart

13A-20
How Programs Solve Problems
• Program control flow
– Order program statements are executed
– Typically executed in order
– Constructs can change the flow
• Decision statements
• Loops

13A-21
How Programs Solve Problems
• Algorithm
– Set of steps
– Always leads to a solution
– Steps are always the same
– Flowcharts can describe algorithms
• Structured tool for drawing algorithms
– Algorithms appear in all programs

13A-22
Flowchart

13A-23
How Programs Solve Problems
• Heuristic
– Set of steps
– Solution is usually found
– Solution may not be optimal
– Used when algorithms fail
• Algorithm is nonexistent or too complex
– Appear in more complex applications
• Data mining
• Anti-virus software

13A-24
Structured Programming
• Programming using defined structures
• Creates easy to read code
• Programs are efficient and run fast
• Several defined structures

13A-25
Structured Programming
• Sequence structure
– Describes the flow of the program
– Typically executed in order
– Branching statements allow multiple flows

13A-26
Structured Programming
• Selection statement
– Also called conditional statement
– Performs a true or false test
– Determines which code to execute next

13A-27
Structured Programming
• Repetition statements
– Also called looping structures
– Repeats a section of code
• Until an exit condition is reached

13A-28
Object Oriented Programming
• Also known as OOP
• Enhances structured programming
• Intuitive method of programming

13A-29
Object Oriented Programming
• Code reuse
– Code used in many projects
– Speeds up program development
– Simplifies program development

13A-30
Object Oriented Programming
• Develops objects
– All real world items are objects
– OOP develops code versions
– Contains data about the item
– Contains functionality
– Object encapsulates both into one package

13A-31
Chapter 12A

End of Chapter

McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved.

You might also like