graphics processing unit (GPU)

Image
  DefiNITIOn  graphics processing unit (GPU) A  graphics processing unit  ( GPU ) is a specialized electronic circuit designed to rapidly manipulate and alter memory to accelerate the creation of images in a frame buffer intended for output to a display device. GPUs are used in embedded systems, mobile phones, personal computers, workstations, and game consoles. Modern GPUs are very efficient at manipulating computer graphics and image processing. Their highly parallel structure makes them more efficient than general-purpose central processing units (CPUs) for algorithms that process large blocks of data in parallel. In a personal computer, a GPU can be present on a video card or embedded on the motherboard. In certain CPUs, they are embedded on the CPU die. [1] In the 1970s, the term "GPU" originally stood for graphics processor unit and described a programmable processing unit independently working from the CPU and responsible for graphics manipulation and

C language

 

What are different types of languages ?

Ans: Mainly there are two types of computer languages.

1. Low Level Computer Languages :


          These are machine codes or close to it. Computer cannot understand instruction given in high level languages or in English. It can only understand and execute instructions given in the form of machine languages i.e. the binary number 0 and 1.
        There are two types of low level computer language.
  Machine Language :
The lowest and most elementary language and was the first type of programming language to be developed. Mache language is basically the only language which computer can understand. In fact, a manufacturer designs a computer to obey just one language, its machine code, which is represented inside the computer by a string of binary digits (bits) O and 1. The symbol O stand for the absence of an electric pulse and 1 for the presence of an electric pulse. Since a computer is capable of recognizing electric signals, therefore, it understands machine language.
           The set of binary codes which can be recognise by the computer is known as the machine code instruction set. A machine language instruction consists of an operation code one or more operands. The operation code specifies that operation that is to be performed e.g. read, record etc. the operands identify the quantities to be operated on e.g. the numbers to be added or the locations where data are stored.
               But, it is almost impossible to write programs directly in machine code. For this reason, programs are normally written in assembly or high level languages and then are translated in the machine language by different translators.
Advantages :
1. It makes fast and efficient use of the computer
2. It requires no translator to translate the code i.e. directly understood by the computer.
Disadvantages :
1. All operation codes have to be remembered.
2. All memory addresses have to be remembered.
3. It is hard to amend or find errors in a program written in the machine
language
4. These languages are machine dependent i.e. a particular machine language can be used on only one type of computer.

Assembly Languages :
It was developed to overcome some of the many inconveniences of machine language. This is another low level but a very important language in which operation codes and operands are given in the form of alphanumeric symbols instead of O's and 1's.
    These alphanumeric symbols will be known as mnemonic codes and can have maximum up to 5 letter combinations e.g. ADD for addition, SUB for subtraction, START LABEL etc. because of this feature it is also known
as "Symbolic Programming Language".
   This language is very difficult and needs a lot of practice to master it because very small English support is given.
This symbolic language helps in compiler orientations.
The instructions of the assembly language will also be converted to machine codes by language translator to be executed by the computer
Advantages:
1. It is easier to understand and use as compared to machine language
2. It is easy to locate and correct errors
3. It is modified easily
Disadvantages :
1. Like machine language it is also machine dependent
2. Since it is machine dependent, there programmer should have the knowledge of he hardware also.

Computer High Level Languages :

high level computer languages give formats close to English language and the purpose of developing high level languages is to enable people to write programs easily and in their own native language environment.

               High-level languages are basically symbolic languages that use English words and/or mathematical symbols rather than mnemonic codes. Each instruction in the high level language is translated into many machine language instructions thus showing one - to-many translation.

Problem-Oriented Language :
These are languages used for handling specialized types of data processing problems where programmer only specifies the input/output requirements and other
relative information of the problem, that are to be solved. The programmer does not have to specify the procedure to be followed
in solving that particular problem.
Procedural Language :
These are general purpose languages that
are designed to express the logic of a data processing problem.
Non-procedural Language :
Computer Programming Languages that
allow users and professional programmers to specify the results they want without specifying how to solve the problem.

Selection of a Computer Language:
There are many high-level languages in use today. The choice of language depends on type and complexity of the problem.
1. Purpose e.g. business, educational, scientific.
2. Facilities provided e.g. meaningful variable names, control and data structures, error checking facilities.
3. Ease of learning and use.
4. Portability - if a program is to he used on or in more than one system.
5. Popularity - availability of compilers interpreters.
6. Documentation provided.

Types of High Level Languages :
Many languages have been developed for achieving different variety of tasks, some are fairly specialized others are quite general purpose.
These are categorised according to their use as:
Algebraic Formula - Type Processing :
These languages are oriented towards the computational procedures for solving mathematical and statistical problems.

 Examples are:

1. BASIC (Basic All Purpose Symbolic Instruction Code)
2. FORTRAN (Formula Translation).
3. PL/1 (Programming Language, Version 1).
4. ALGOL (Algorithmic Language).
5. APL (A Programming Language).

Business Data Processing : These languages emphasize their capabilities for maintaining data processing procedures and files handling problems.
Examples are :
1. COBOL (Common Business Oriented Language)
2. RPG (Report Program Generator).

String and List Processing : These are used for string manipulation including search for patterns, inserting and deleting characters.
  Examples are : LISP (List Processing).

Multipurpose Language : A general purpose language used for algebraic procedures, data and string processing.
Examples are :
1. Pascal (after the name of Blaise Pascal).
2. PL/1 (Programming Language, version 1).
3. C language.

Simulation : These may be written in algebraic or multipurpose languages.
Examples are:
1. SPSS (Statistical Package System Simulator).
2. GPSS (General Purpose System Simulator).

Advantages :
Following are the advantages of a high level language:
1. User-friendly (people based)
2. Similar to English with vocabulary of words awl symbols therefore it is easier to leam.
3. They require less time to write
4. They are easier to maintain
5. Problem oriented' rather than 'machine' based
6. Shorter than their low-level equivalents. One statement translates into many machine code instructions.
7. Program written in a high-level equivalent can he translated into many machine language and therefore can run on every computer for which there exists an appropriate translator.

Examples are:
1. BASIC (Basic All Purpose Symbolic Instruction Code)
2. FORTRAN (Formula Translation).
3. PL/1 (Programming Language, Version 1).
4. ALGOL (Algorithmic Language).
5. APL (A Programming Language).

Business Data Processing : These languages emphasize their capabilities for maintaining data processing procedures and files handling problems.
Examples are :
1. COBOL (Common Business Oriented Language)
2. RPG (Report Program Generator).

String and List Processing : These are used for string manipulation including search for patterns, inserting and deleting characters.
  Examples are : LISP (List Processing).

Multipurpose Language : A general purpose language used for algebraic procedures, data and string processing.
Examples are :
1. Pascal (after the name of Blaise Pascal).
2. PL/1 (Programming Language, version 1).
3. C language.

Simulation : These may be written in algebraic or multipurpose languages.
Examples are:
1. SPSS (Statistical Package System Simulator).
2. GPSS (General Purpose System Simulator).

Advantages :
Following are the advantages of a high level language:
1. User-friendly (people based)
2. Similar to English with vocabulary of words awl symbols therefore it is easier to leam.
3. They require less time to write
4. They are easier to maintain
5. Problem oriented' rather than 'machine' based
6. Shorter than their low-level equivalents. One statement translates into many machine code instructions.
7. Program written in a high-level equivalent can he translated into many machine language and therefore can run on every computer for which there exists an appropriate translator.

8. It is independent of the machine on which it used i.e. programs developed in high level language can be run on any computer.

Disadvantages :
There are certain disadvantages also Inspite these disadvantages high- level languages have proved their worth. The advantages out-weigh the disadvantages by far, for most applications.

These are :

1. A high-level language has to be translated into the -machine language by a translator and thus a price in computer time is paid.
2. The object code generated by a translator might be inefficient compared to an equivalent assembly language program


Comments

Popular posts from this blog

What is mean by software

what is an operating system