Introduction to Computer Programming Concepts - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction to Computer Programming Concepts

Description:

Operating System Software (Win 9x, 2000, Unix, Linux, ... Source of the large program may be split into more than one file ... Usually it is performed with sample data ... – PowerPoint PPT presentation

Number of Views:33
Avg rating:3.0/5.0
Slides: 23
Provided by: MustafaU1
Category:

less

Transcript and Presenter's Notes

Title: Introduction to Computer Programming Concepts


1
Introduction to Computer Programming Concepts
  • M. Uyguroglu
  • R. Uyguroglu

2
Computer Programming
  • Computers do what we tell them to do, NOT what we
    want them to do
  • Computer Programming involves writing
    instructions and giving them to the computer to
    complete a task.

3
What is a Computer Program?
  • A computer program is a set of instructions
    written in a computer language, in order to be
    executed to perform a specific task.
  • There are tens of programming languages, used
    nowadays.
  • Computer Programs are also named as SOFTWARE.

4
What is a Computer Program?
  • There are different types of software available.
    Some of them are
  • Operating System Software (Win 9x, 2000, Unix,
    Linux, ).
  • Compilers and Interpreters (Used with
    Programming Lang.).
  • Application Software (Payroll system, Accounting
    System).
  • Embedded System Software (Used in TV sets,
    telephones).
  • Utilities and Tools for productivity (MS Word,
    Excel, ).

5
Who is a Programmer?
  • A programmer is a person who writes the required
    computer programs.
  • Programmers translate the expected tasks given
    in human understandable form into machine
    understandable form by using compilers and
    interpreters.

6
Compiler Interpreter
  • Compiler is a specific software that gets the
    whole Source Code (Computer program written in
    human understandable form) and translates it into
    Object Code (Computer Program that is in machine
    understandable form) all at a time.
  • Interpreter is translating and executing one
    statement (command of Computer Program) of Source
    Code into Object Code at a time. (It means,
    interpreters translate and execute computer
    programs line by line).

7
Execution of a Program.
Using Compiler
Object Code
Compiler
Source Code
Execute Program
Using Interpreter
Interpreter
Execute a line of Program
Source Code
8
Well Designed Programs.
  • Well designed programs must be
  • Correct and accurate
  • Easy to understand
  • Easy to maintain and update
  • Efficient
  • Reliable
  • flexible

9
Programming Process
  • Problem definition
  • What must the program do?
  • What outputs are required and in what form?
  • What inputs are available and in what form?
  • Example Find a maximum of two numbers
  • Input two numbers, compare them and print the
    maximum value
  • Inputs and outputs are decimal numbers
  • Inputs are entered from the keyboard
  • Result is shown on the monitor

10
Programming Process
  • 2. Program Design involves creating an algorithm
    sequence of steps, by which a computer can
    produce the required outputs from the available
    inputs
  • Top-down design
  • The main problem is split into subtasks
  • Then each subtask is divided into simpler
    subtasks, etc. unless it is clear how to solve
    all such subtasks

11
Programming Process
include ltstdio.hgt int main() int
number1, number2 int maximum
printf("Please, enter two numbers ")
scanf("d d", number1, number2) if
(number1 gt number2) maximum
number1 else maximum number2
printf(d is maximum\n, maximum) return 0
  • 3. Program Coding means expressing the
    algorithm developed for solving a problem, in a
    programming language
  • Example of source code is on the right

12
Programming Process
  • Program Compilation translation of a program
    written in a high-level programming language into
    machine language instructions
  • Compilation step converts a source program into
    an intermediate form, called object code
  • Linking step is necessary to combine this object
    code with other code to produce an executable
    program
  • The advantage of this two-step approach
  • Source of the large program may be split into
    more than one file
  • These files are worked on and compiled separately
  • Object code may be stored in libraries and used
    for many programs
  • Then they will be combined into one executable
    code

13
Programming Process
  • 4. Program Testing Debugging
  • Initially, almost all programs may contain a few
    errors, or bugs
  • Testing is necessary to find out if the program
    produces a correct result. Usually it is
    performed with sample data
  • Debugging is the process of locating and removing
    errors

14
Types of Errors.
  • Syntax Errors Violation of syntactic rules in a
    Programming Language generates syntax errors.
  • Effect? Interpreter or Compiler finds it in
    Syntax Check Phase.
  • Semantic Errors Doing logical mistakes causes
    semantic errors in Source code.
  • Effect? Interpreters and Compilers can not
    notice them, but on execution, they causes
    unexpected results.
  • Run-time Errors Occur on program execution.
    Mostly caused by invalid data entry or tries to
    use not existing resources.
  • Effect? It occurs on run time and may crash the
    program execution

15
Successful Programming
  • For successful programming
  • give no ambiguity in program instructions
  • give no possibility of alternative
    interpretations
  • make sure there is only one course of action

16
Programming
  • Programming task can be made easier
  • by breaking large and complex programs into
    smaller and less complex subprograms (modules)
  • Programming task can be separated into 2 phases
    (see Fig. 1)
  • problem solving phase
  • produce an ordered sequence of steps that
    describe solution of problem
  • this sequence of steps is called an algorithm
  • implementation phase
  • implement the program in some programming
    language (Pascal, Basic, C)

17
Programming
Difficult way
18
What is structured programming
  • a programming technique that splits the program
    into smaller segments (modules) to
  • decrease program development time
  • decrease program maintenance cost
  • improve the quality of software
  • structured programming achieves these goals by
    using
  • top-down design and use of modules
  • use of limited control structures (sequence,
    selection and repetition)
  • management control

19
Types of Programming Languages.
  • Low-level languages (Machine Lang., Assembly
    Lang.).
  • Machine language is
  • made up of binary 1s and 0s
  • this is the only programming language the
    computers can understand
  • advantages of machine languages are
  • fast execution speed and efficient use of main
    memory
  • disadvantages of machine languages are
  • writing machine language is tedious, difficult
    and time consuming

20
Types of Programming Languages
  • Assembly language is a low-level interface to CPU
    functions
  • Example
  • Mov ax, 1
  • Mov bx, 2
  • Add bx

21
Types of Programming Languages.
  • Assembly Language
  • Writing programs can be very time-consuming, as
    you have to directly manipulate CPU registers and
    use complicated interfaces to I/O devices
  • Code is assembled to make Machine Language
    (consisting only of 1s and 0s) which is the
    real language of the CPU

22
Types of Programming Languages.
  • High Level Languages.
  • Slower, needs more resources but more user
    friendly (needs less programming time and it is
    more easier to develop a program).
  • Major high-level languages are
  • FORTRAN, COBOL, PL/I, BASIC, PASCAL, C, LISP,
    Prolog, Logo
Write a Comment
User Comments (0)
About PowerShow.com