Computer Programming
Definition:
Way of Writing Programs is called computer programming

Language: Way of communication

Types of Language:

(1)
High-level language
(2)
Low-level language
1.    Low-level Language:
Type of language which can be directly understandable by a computer

Types of Low-level language:
i. Machine level Langage:
Type of low-level language which is in the form of o and 1 is called machine or binary language
Explanation:
It is a basic language of a machine, which is directly understandable to the system.

ii. Assembly language:
That language which is closing resembles machine-level language.
Explanation:
This language closely resembles machine-level language and it also contains some English-like words which are not directly understandable by the machine. So the machine required a translator which is called an assembler.

2.    High-Level Language:
The type of language closely resembles human language.
Explanation:
As these languages have closely resembled human language so they are not directly understandable machines so machines need translators which may be a compiler or interpreters,
Example: Basic, CaBoL, C++, Java, HTML,C language, C-Sharp,PHP etc.

Advantages of Machine level Language:
  • It makes a computer fast and efficient
  • It requires no translators.

Disadvantages of Machin
e level Language:
  • All the operation codes have to be remembered.
  • All memory addresses have to be remembered
  • It is hard/difficult to find errors in programs, written in machine level language
  • These languages are machine-dependent.

Advantages of Assembly Language:
  • It is easier to understand as compared to machine-level languages.
  • It is used to locate errors and refers to correct using easy methods.
  • It is modified easily

Disadvantages of Assembly Langauge:
  • Since it is machine-dependent, therefore programmer should have the knowledge of hardware

Advantages of high-level languages:

  • User-friendly languages
  • Easier to learn
  • They require less time to write
  • They are easier to maintain
  • Problem-oriented rather than machine base
  • program written in High-level language can be translated into machine-level language by means of the translator.

Disadvantages of High-level language:
  • These languages require a special translator due to which we pay an extra amount
  • The object code which generates a translator can be inefficient compared to object code generated by an assembly language program

Programming tools:
(1)
Algorithms
(2)
Flow-Charts
1.    Algorithms:
it is a collection of steps that are performed in a sequence given by the user to solve specific problems
2.    Flow Chart:
It is a diagrammatical representation of the solution to a problem.

Source Code:
The code is written in any high language.

Object Code:
The code written in any machine level language / binary language is called object code (.obj)