KEMBAR78
Introduction to computer programming | PDF
1. Introduction to Programming
What is Computer Programming?
Is the process of designing, writing, testing, debugging, and maintaining source code of
computer programs.
(OR)
Act of instructing computer to perform the task.
Source code
Is any computer instruction (possibly with comments) written using some human readable computer
language (also known as, High-level Computer Language), usually as text.
This source code is written in one or more programming languages (i.e. High-level language such as C,
C++, C#, Java, Python, and Smalltalk).
Programming Language
Refer to the artificial language designed to communicate instruction to a machines particularly a
computer. Examples of Programming languages are C, C++, JAVA, Python, Machine Language and
Assembly language.
Program
Is the sequence of instructions, written to perform a specific task with Computer.
NOTE:
 The purpose of Computer Programming is to create a set of instructions (i.e. Program) that
computers use to perform specific operations or to exhibit desired behavior.
 Software refers to the collection/set of computer programs and related data to perform a
specified task with a computer.
Programmer
Is the someone who writes the computer program (Software) using any language of hisher choice.
Classification of Computer Language:
 High-Level Language (Machine Independent Languages)
Is the programming language with strong abstraction from the details of the computer. The
programmer can create the program using these languages without asking for design detail
of the particular Machine which will run his/her program.
Prepared By;
NOEL MALLE, B.Eng (Computer Engineering)
Kilimanjaro, Tanzania.
So, there is no need for a Programmer to study the design of the computer (such as,
Processor Instruction Set Architecture, Bus types and width, Processor Registers types and size,
and other Architecture Design).
Hence, programmer focuses only on the Problem to be solved. This is the reason they are also
known as Problem-Oriented Languages
Furthermore, programs created using these languages are Machine Independent, which means,
they can run on Computer with different designs (e.g. Processor type) with little, or no
modifications required in their codes.
Examples of High-Level Language:
 C
 C++
 JAVA
 Low-Level Language (Machine Dependent Languages)
Is the programming language that provides little or no abstraction from details of the computer.
The programmer must have strong knowledge about Computer design in order to write the
program for such Computer.
Hence, there is need for a Programmer to study the design of the computer (such as,
Processor Instruction Set Architecture, Bus types and width, Processor Registers types and size,
and other Architecture Design).
Furthermore, programs created using these languages are Machine Dependent, which means,
the Program created for particular Machine can’t run on different Machine.
Types of Low-Level Languages:
 Assembly Language
 Machine Language.
NOTE:
Other Programmers describe C-language as the Middle-Level Language because of the following
2 reasons:
A relatively good programming efficiency i.e. faster program development (as compared to
low level language)
Relatively good machine efficiency i.e. faster program execution (as compared to high level
language)
Hence, it occupies the space (level) between two, that is, middle level.
Prepared By;
NOEL MALLE, B.Eng (Computer Engineering)
Kilimanjaro, Tanzania.
Language Translators
Is the computer program that translates a program written in a given programming language into
functionally equivalent program in different language.
There are various types of Language Translator but I will describe only two types of Language
Translators, which are:
 Compiler
 Interpreter
Compiler
Translates a high level language (e.g. C, C++) into lower level language (i.e. Machine Language). Compiler
checks the entire user-written program (known as the source program) and, if error free, produces a
complete program in Machine Language. Each Language has its own Compiler.
Examples of Compiled Languages:
C, C++, COBOL, and Haskell.
Examples of Compilers for various languages are as follow:
C Pelles C, Power C, Turbo C.
C++ C++ Builder, Borland C++, GCC, Turbo C++
Interpreter
Translates a High level language into an Intermediate code which will be immediately executed. The
Interpreter translates one statement at a time and, if error-free, executes the instruction. Each
Language has its own Interpreter.
Examples of Interpreted Languages:
BASIC, PHP, Perl, lisp, Smalltalk, and Ruby.
Example of Interpreter is:
BASIC Altair BASIC
Difference between Compiler and Interpreter
Compiler Interpreter
Compiler translates the whole program before
execution begins.
Thus Interpreter translates and executes the first
instruction before it goes to the second.
Prepared By;
NOEL MALLE, B.Eng (Computer Engineering)
Kilimanjaro, Tanzania.
Other types include; Assembler, DeCompiler,
DisAssembler .
NOTE:
 JAVA is not listed as Compiled or Interpreted Language because; JAVA programs are Compiled
(to bytecode) then Interpreted. Hence, it is both Compiled and Interpreted Language.
 Assembler is the computer program which translates Assembly Language to Machine Language.
 All Machines (Computer) understand Machine Code (Language) only. Hence, this leads to the
necessities of System Software such as Compiler, and Interpreter to convert High level language
to Machine code. Also, Assembler to convert Assembly Language to Machine Code.
Generations of Computer Languages:
 1st
Generation (Machine language)
 2nd
Generation (Assembly Language)
 3rd
Generation (Problem Oriented Languages such as C, Paschal, FORTRAN, and COBOL)
 4th
Generation( e.g. dBASE, FoxPro, FOCUS)
These are Low level Language
High Level Language
Prepared By;
NOEL MALLE, B.Eng (Computer Engineering)
Kilimanjaro, Tanzania.

Introduction to computer programming

  • 1.
    1. Introduction toProgramming What is Computer Programming? Is the process of designing, writing, testing, debugging, and maintaining source code of computer programs. (OR) Act of instructing computer to perform the task. Source code Is any computer instruction (possibly with comments) written using some human readable computer language (also known as, High-level Computer Language), usually as text. This source code is written in one or more programming languages (i.e. High-level language such as C, C++, C#, Java, Python, and Smalltalk). Programming Language Refer to the artificial language designed to communicate instruction to a machines particularly a computer. Examples of Programming languages are C, C++, JAVA, Python, Machine Language and Assembly language. Program Is the sequence of instructions, written to perform a specific task with Computer. NOTE:  The purpose of Computer Programming is to create a set of instructions (i.e. Program) that computers use to perform specific operations or to exhibit desired behavior.  Software refers to the collection/set of computer programs and related data to perform a specified task with a computer. Programmer Is the someone who writes the computer program (Software) using any language of hisher choice. Classification of Computer Language:  High-Level Language (Machine Independent Languages) Is the programming language with strong abstraction from the details of the computer. The programmer can create the program using these languages without asking for design detail of the particular Machine which will run his/her program. Prepared By; NOEL MALLE, B.Eng (Computer Engineering) Kilimanjaro, Tanzania.
  • 2.
    So, there isno need for a Programmer to study the design of the computer (such as, Processor Instruction Set Architecture, Bus types and width, Processor Registers types and size, and other Architecture Design). Hence, programmer focuses only on the Problem to be solved. This is the reason they are also known as Problem-Oriented Languages Furthermore, programs created using these languages are Machine Independent, which means, they can run on Computer with different designs (e.g. Processor type) with little, or no modifications required in their codes. Examples of High-Level Language:  C  C++  JAVA  Low-Level Language (Machine Dependent Languages) Is the programming language that provides little or no abstraction from details of the computer. The programmer must have strong knowledge about Computer design in order to write the program for such Computer. Hence, there is need for a Programmer to study the design of the computer (such as, Processor Instruction Set Architecture, Bus types and width, Processor Registers types and size, and other Architecture Design). Furthermore, programs created using these languages are Machine Dependent, which means, the Program created for particular Machine can’t run on different Machine. Types of Low-Level Languages:  Assembly Language  Machine Language. NOTE: Other Programmers describe C-language as the Middle-Level Language because of the following 2 reasons: A relatively good programming efficiency i.e. faster program development (as compared to low level language) Relatively good machine efficiency i.e. faster program execution (as compared to high level language) Hence, it occupies the space (level) between two, that is, middle level. Prepared By; NOEL MALLE, B.Eng (Computer Engineering) Kilimanjaro, Tanzania.
  • 3.
    Language Translators Is thecomputer program that translates a program written in a given programming language into functionally equivalent program in different language. There are various types of Language Translator but I will describe only two types of Language Translators, which are:  Compiler  Interpreter Compiler Translates a high level language (e.g. C, C++) into lower level language (i.e. Machine Language). Compiler checks the entire user-written program (known as the source program) and, if error free, produces a complete program in Machine Language. Each Language has its own Compiler. Examples of Compiled Languages: C, C++, COBOL, and Haskell. Examples of Compilers for various languages are as follow: C Pelles C, Power C, Turbo C. C++ C++ Builder, Borland C++, GCC, Turbo C++ Interpreter Translates a High level language into an Intermediate code which will be immediately executed. The Interpreter translates one statement at a time and, if error-free, executes the instruction. Each Language has its own Interpreter. Examples of Interpreted Languages: BASIC, PHP, Perl, lisp, Smalltalk, and Ruby. Example of Interpreter is: BASIC Altair BASIC Difference between Compiler and Interpreter Compiler Interpreter Compiler translates the whole program before execution begins. Thus Interpreter translates and executes the first instruction before it goes to the second. Prepared By; NOEL MALLE, B.Eng (Computer Engineering) Kilimanjaro, Tanzania. Other types include; Assembler, DeCompiler, DisAssembler .
  • 4.
    NOTE:  JAVA isnot listed as Compiled or Interpreted Language because; JAVA programs are Compiled (to bytecode) then Interpreted. Hence, it is both Compiled and Interpreted Language.  Assembler is the computer program which translates Assembly Language to Machine Language.  All Machines (Computer) understand Machine Code (Language) only. Hence, this leads to the necessities of System Software such as Compiler, and Interpreter to convert High level language to Machine code. Also, Assembler to convert Assembly Language to Machine Code. Generations of Computer Languages:  1st Generation (Machine language)  2nd Generation (Assembly Language)  3rd Generation (Problem Oriented Languages such as C, Paschal, FORTRAN, and COBOL)  4th Generation( e.g. dBASE, FoxPro, FOCUS) These are Low level Language High Level Language Prepared By; NOEL MALLE, B.Eng (Computer Engineering) Kilimanjaro, Tanzania.