Computer Languages

Language is a means of communication.A computer language is a formal language used in communication with a computer.Ex:python, java, c and c++.

We can classify all computers languages into following three categories:-

MACHINE LANGUAGE

The machine language of a computer is written as strings of binary 1s and 0s.A machine language instruction has a two-part format.The first part is operation code that tells the computer what function to perform,and the second part is operand that tells where to find or store the data on which the computer has to perform the function.
Typical operations included in the instructions set of a computer are:
  • Arithmetic operations 
  • Logical operations 
  • Branch operations(either conditional or unconditional)for transfer of control to the address given in the operand field
  • Data movement operations for moving data between memory locations and registers
  • Data movement operations for moving data from input devices to memory,or from memory to output devices

Disadvantages:-

  1. Machine dependent
  2. Difficult to program
  3. Error prone
  4. Difficult to modify
  5. Time consuming
  

ASSEMBLY LANGUAGE

A language that allows use of letters and symbols instead of numbers for representing instructions and storage locations is called assembly language or symbolic language.A program written in an assembly language is called assembly language program or symbolic program.It is a type of low-level programming language that is intended to communicate directly with a computer's hardware.Ex:IBM PC DOS operating system and the Turbo Pascal compiler.
Uses:
  1. coding device drivers
  2. real-time systems
  3. low-level embedded systems
  4. boot codes
  5. reverse engineering
 

Assembler

Assemblers are used to translate the assembly language into machine language.
Types:
  • Single-Pass assembler
  • and Multi-pass assembler.

Advantages:-

  1. Easier to understand and use
  2. Easier to locate and correct errors
  3. Easier to modify
  4. No worry about addresses
  5. Easily relocatable
  6. Limitations:-
  7. Machine dependent
  8. Knowledge of hardware required
  9. Machine level coding
 

High-level language

A computer programming language that resembles natural language or mathematical notation and is designed to reflect the requirements of a problem.
Ex: BASIC, C, C++, COBOL and FORTRAN.
 

Compiler

It is a computer program that changes source code written in a high-level language into low-level machine language.It is used because computer can not understand the source code directly.
 

Linker

A program that adjusts two or more machine language program segments so that they may be simultaneously loaded and executed as a unit.Types:Linkage Editor and Dynamic linker.
 

Interpreter

An interpreter is a computer program that directly executes instructions written in a programming or scripting language,without requiring them previously to have been compiled into a machine language program.Interpreter work to translate verbal messages from one language to another.

Advantages:-

  1. Machine independence
  2. Easier to learn and use
  3. Fewer errors
  4. Lower program preparation cost
  5. Easier to maintain
  6. Limitations:-
  7. Lower efficiency
  8. Less flexibility
 
 

OBJECT-ORIENTED LANGUAGES

OOL is a high-level computer programming language that implements objects and their associated procedures with in the programming context to creat software programs.
Ex: java, python, c++, lisp and perl.
 

Object-Oriented Programming(OOP)-

It is a style of programming characterized by the identification of classes of objects closely linked with the methods with which they are associated.Four fundamental concepts of OOP-Inheritance,Encapsulation,Polymorphism and Data abstraction.It is use to allows to break the program into the bit-sized problems that can be solved easily.
Ex: javascript and Lua.

OOP fundamental concepts:-

Object:

An object is the primitive element of a program written in an OOP language.

Method:

A method of an object defines the set of operations.The entire collection of methods of an object is called the message protocol or message interface of the object. 

Message:

The mechanism to support communication between objects is through messages.

Class:

A class is a description of one or more similar objects.

Inheritance:

It is a mechanism to share code and behavior.
 

HIGH-LEVEL LANGUAGES

  1. FORTRAN
    FORmula TRANslation
  2. COBOL
    COmmon Business Oriented Language
  3. BASIC
    Beginners All-purpose Symbolic Instruction Code
  4. Java
    java is a language primarily used for Internet-based application
  5. RPG
    Report Program Generator 
  6. LISP
    LISt Processing 
  7. SNOBOL
    StriNg Oriented symBOlic Language
 

Characteristics of a good programming language-

  1. simplicity
  2. naturalness
  3. abstraction 
  4. efficiency
  5. structured programming support
  6. compactness
  7. locality
  8. extensibility
© 2016 - 2022, All Rights are Reserved.