Understanding Computer Hardware

Document Sample
Understanding Computer Hardware Powered By Docstoc
					  Programming Logic and
         Design
     Fourth Edition, Introductory


            Chapter 1
An Overview of Computers and Logic
                                   Objectives

• Understand computer components and operations
• Describe the steps involved in the programming
  process
• Describe the data hierarchy
• Understand how to use flowchart symbols and
  pseudocode statements
• Use and name variables




Programming Logic and Design, Introductory, Fourth Edition   2
                    Objectives (continued)

• Use a sentinel, or dummy value, to end a program
• Use a connector symbol
• Assign values to variables
• Recognize the proper format of assignment
  statements
• Describe data types
• Understand the evolution of programming techniques




Programming Logic and Design, Introductory, Fourth Edition   3
Understanding Computer Components
          and Operations
• Hardware and software: the two major components
  of any computer system
• Hardware: equipment, or devices
• Software: programs that contain instructions for the
  computer
• Four major operations in a computer:
    –   Input
    –   Processing
    –   Output
    –   Storage

Programming Logic and Design, Introductory, Fourth Edition   4
Understanding Computer Components
    and Operations (continued)
• Input devices: allow data to enter the computer
    – Mouse, keyboard, scanner
• Processing: working on the data; such as:
    – Organizing data
    – Checking data for accuracy
    – Mathematical or other manipulations on data
• Central Processing Unit (CPU): hardware that
  performs the tasks


Programming Logic and Design, Introductory, Fourth Edition   5
Understanding Computer Components
    and Operations (continued)
• Output devices: provide data to the user
     – Printer, monitor, speakers
• Programming language: special language
  containing instructions for the computer
     – Visual Basic, Java, C#, C++, COBOL
• Syntax: the rules governing word usage and
  punctuation in the language
• Machine language: a language that controls the
  computer’s on/off circuitry
• Compiler or interpreter: software that translates
  programming languages to machine language
Programming Logic and Design, Introductory, Fourth Edition   6
Understanding Computer Components
    and Operations (continued)
• A program must be free of syntax errors to be run,
  or executed, on a computer
• To function properly, the logic must be correct
• What’s wrong with this logic for making a cake?




Programming Logic and Design, Introductory, Fourth Edition   7
Understanding Computer Components
    and Operations (continued)
• Logic errors, or semantic errors, are more
  difficult to locate than syntax errors
• Logic for multiplying a number by 2 (includes input,
  processing and output statements)




Programming Logic and Design, Introductory, Fourth Edition   8
 Understanding Computer Components
     and Operations (continued)
• Two storage categories: internal and external
• Internal storage:
   – Main memory, random access memory (RAM)
   – Located inside the computer system
   – Volatile: contents are lost when power goes down
• External storage:
   – Persistent: contents are relatively permanent
   – Floppy drive, hard drive, flash media, magnetic tape
   – Located outside the computer system


 Programming Logic and Design, Introductory, Fourth Edition   9
                          Understanding
                    the Programming Process
•      Six programming phases:
      1. Understand the problem
      2. Plan the logic
      3. Code the program
      4. Use software to translate the program to machine
         language
      5. Test the program
      6. Deploy the program into production




    Programming Logic and Design, Introductory, Fourth Edition   10
        Understanding the Programming
             Process (continued)
• Understanding the problem:
   – May be the most difficult phase
   – Users may not be able to articulate their needs well
   – User needs may be changing frequently
   – Programmers may have to learn the user’s functional
     job tasks
   – Failure to understand the problem is the major cause of
     most project failures




 Programming Logic and Design, Introductory, Fourth Edition   11
        Understanding the Programming
             Process (continued)
• Planning the logic:
    –   Plan the steps that the program will take
    –   Use tools such as flowcharts and pseudocode
    –   Flowchart: a pictorial representation of the logic steps
    –   Pseudocode: English-like representation of the logic
    –   Walk through the logic before coding by desk-
        checking the logic




 Programming Logic and Design, Introductory, Fourth Edition   12
        Understanding the Programming
             Process (continued)
• Coding the program:
   – Select the programming language
   – Write the instructions
• Using software to translate the program into machine
  language:
   – Programmers write instructions in English-like high-level
     languages
   – Compilers or interpreters change the programs into low-
     level machine language that can be executed
   – Syntax errors are identified by the compiler or
     interpreter

 Programming Logic and Design, Introductory, Fourth Edition   13
       Understanding the Programming
            Process (continued)




Programming Logic and Design, Introductory, Fourth Edition   14
       Understanding the Programming
            Process (continued)
• Testing the program:
     – Execute it with sample data and check results
     – Identify logic errors and correct them
     – Choose test data carefully to exercise all branches
       of the logic
• Putting the program into production
     – Do this after testing is complete and all known errors
       have been corrected
     – May require coordination with other related activities
       or software

Programming Logic and Design, Introductory, Fourth Edition   15
      Understanding the Data Hierarchy
• Data hierarchy: ordering of data types by size
     – Character: single symbol (letter, number, special
       symbol)
           • “A”, “7”, “$”
     – Field: group of characters forming a single data item
           • “Smith”
     – Record: a group of related fields
           • Customer record containing name and address fields
     – File: a group of related records
           • Customer file, containing all customer records
     – Database: collection of related files, called tables,
       that serve the information needs of the organization
Programming Logic and Design, Introductory, Fourth Edition     16
      Understanding the Data Hierarchy
                (continued)




Programming Logic and Design, Introductory, Fourth Edition   17
            Using Flowchart Symbols and
              Pseudocode Statements
• Flowchart: pictorial representation of the logic
• Pseudocode: English-like representation of the logic
    – Example:




 Programming Logic and Design, Introductory, Fourth Edition   18
       Using Flowchart Symbols and
    Pseudocode Statements (continued)
• Flowchart input symbol:




 Programming Logic and Design, Introductory, Fourth Edition   19
       Using Flowchart Symbols and
    Pseudocode Statements (continued)
• Flowchart processing symbol




 Programming Logic and Design, Introductory, Fourth Edition   20
      Using Flowchart Symbols and
   Pseudocode Statements (continued)
• Flowchart output symbol:




Programming Logic and Design, Introductory, Fourth Edition   21
      Using Flowchart Symbols and
   Pseudocode Statements (continued)
• Flowlines:
   – Connect the steps
   – Show the sequence of statements
   – Have arrows to show the direction
• Terminal symbol (start/stop symbol):
   – Shows the start and end points of the statements
   – Lozenge shape




Programming Logic and Design, Introductory, Fourth Edition   22
      Using Flowchart Symbols and
   Pseudocode Statements (continued)




Programming Logic and Design, Introductory, Fourth Edition   23
       Using Flowchart Symbols and
    Pseudocode Statements (continued)
• Back-pointing arrows show statements that will be
  repeated




 Programming Logic and Design, Introductory, Fourth Edition   24
            Using and Naming Variables
• Variable: a memory location whose contents can
  vary; also called an identifier
• Each programming language has it own rules for
  naming identifiers, including:
   – Legal characters
   – Maximum length
   – Use of upper or lower case
• Variable name must be a single word, but can be
  formed from several words
   – rate, interestRate, interest_rate

Programming Logic and Design, Introductory, Fourth Edition   25
            Using and Naming Variables
                    (continued)
• Choose meaningful names for variables
   – Improves the readability and maintainability of code




Programming Logic and Design, Introductory, Fourth Edition   26
    Ending a Program by Using Sentinel
                  Values
• Infinite loop: a sequence of statements that repeats
  forever with no escape
• Avoid infinite loops by testing for a predetermined
  value that means “stop processing”
• Decision: testing a value
• Flowchart decision symbol: a diamond shape, with
  two flowlines, one for Yes and one for No




 Programming Logic and Design, Introductory, Fourth Edition   27
   Ending a Program by Using Sentinel
           Values (continued)




Programming Logic and Design, Introductory, Fourth Edition   28
   Ending a Program by Using Sentinel
           Values (continued)
• Sentinel value (or dummy value)
    – Does not represent real data
    – Signal to stop
    – Can be used with input from files or from users
• End-of-file (EOF) marker:
    – Code stored in the file that marks the end of the data
    – Usually used instead of a sentinel value for file input



Programming Logic and Design, Introductory, Fourth Edition   29
   Ending a Program by Using Sentinel
           Values (continued)




Programming Logic and Design, Introductory, Fourth Edition   30
                       Using the Connector

• Flowchart connector symbol:
  – Marks a logic transfer to another location in the flowchart
  – Transfer location can be on the same page or on
    another page
  – On-page symbol: a circle with a number or letter to
    identify the matching transfer location
  – Off-page symbol: a square with a pointed bottom,
    containing page number and a number of letter to
    identify the matching transfer location



 Programming Logic and Design, Introductory, Fourth Edition   31
        Using the Connector (continued)




Programming Logic and Design, Introductory, Fourth Edition   32
           Assigning Values to Variables
• Assignment statement:
   – Assigns a value to a variable
   – Variable must appear on the left side, value on the
     right side of the assignment operator
   – Right side may be an expression that will be evaluated
     before storing the value in the variable
• Assignment operator: the equal sign (=) in most
  languages
• Variable:
   – Memory location: has an address and a value
   – Value (contents) is used for various operations


Programming Logic and Design, Introductory, Fourth Edition   33
                Understanding Data Types

• Two basic data types:
    – Text
    – Numeric
• Numeric data stored by numeric variables
• Text data stored by string, text, or character variables
• Constants:
    – Values that do not change while the program is running
    – Have identifiers, and can be used like variables for
      calculations, but cannot be assigned new values


 Programming Logic and Design, Introductory, Fourth Edition   34
 Understanding Data Types (continued)
• Some programming languages implement several
  numeric data types, such as:
    – Integer: whole numbers only
    – Floating-point: fractional numeric values with decimal
      points
• Character or string data is represented as characters
  enclosed in quotation marks
    – “x”, “color”
• Data types must be used appropriately



 Programming Logic and Design, Introductory, Fourth Edition   35
Understanding Data Types (continued)




Programming Logic and Design, Introductory, Fourth Edition   36
          Understanding the Evolution of
            Programming Techniques
• Programming began in the 1940s, using memory
  addresses and machine code directly
• Higher level languages were developed to allow
  English-like instructions
• Older programs were “monolithic,” and ran from
  beginning to end
• Newer programs contain modules that can be
  combined to form programs




Programming Logic and Design, Introductory, Fourth Edition   37
     Understanding the Evolution of
  Programming Techniques (continued)
• Two major programming techniques:
    – Procedural programming
    – Object-oriented programming
• Procedural programming: focuses on the
  procedures that programmers create
• Object-oriented programming: focuses on objects
  that represent real-world things and their attributes
  and behaviors
• Both techniques employ reusable program modules



 Programming Logic and Design, Introductory, Fourth Edition   38
                                     Summary
• Four major computer operations: input, processing,
  output, and storage
• Six programming phases: understand the problem,
  plan the logic, code the program, translate the
  program to machine language, test the program,
  deploy the program
• Data hierarchy: character -> field -> record -> file ->
  database
• Flowchart: pictorial representation of program logic
• Variables: named memory locations that contain
  values

 Programming Logic and Design, Introductory, Fourth Edition   39
                     Summary (continued)
• Testing a value involves making a decision
• Assignment statements: store a value into a
  variable
• Assignment operator: the equal (=) sign in most
  languages
• Two major data types: text and numeric
• Procedural programming focuses on actions
  performed on data
• Object-oriented programming focuses on
  representing and manipulation objects
Programming Logic and Design, Introductory, Fourth Edition   40

				
DOCUMENT INFO
Description: Understanding Computer Hardware document sample