Showing posts with label IX. Show all posts
Showing posts with label IX. Show all posts

Thursday, July 14, 2011

Compiler vs Interpreter


Compiler and interpreter, both basically serve the same purpose. They convert one level of language to another level. A compiler converts the high level instructions into machine language while an interpreter converts the high level instruction into some intermediate form and after that, the instruction is executed.
Compiler
A compiler is defined as a computer program that is used to convert high level instructions or language into a form that can be understood by the computer. Since computer can understand only in binary numbers so a compiler is used to fill the gap otherwise it would have been difficult for a human to find info in the 0 and 1 form.
Earlier the compilers were simple programs which were used to convert symbols into bits. The programs were also very simple and they contained a series of steps translated by hand into the data. However, this was a very time consuming process. So, some parts were programmed or automated. This formed the first compiler.
More sophisticated compliers are created using the simpler ones. With every new version, more rules added to it and a more natural language environment is created for the human programmer. The complier programs are evolving in this way which improves their ease of use.
There are specific compliers for certain specific languages or tasks. Compliers can be multiple or multistage pass. The first pass can convert the high level language into a language that is closer to computer language. Then the further passes can convert it into final stage for the purpose of execution.
Interpreter
The programs created in high level languages can be executed by using two different ways. The first one is the use of compiler and the other method is to use an interpreter. High level instruction or language is converted into intermediate from by an interpreter. The advantage of using an interpreter is that the high level instruction does not goes through compilation stage which can be a time consuming method. So, by using an interpreter, the high level program is executed directly. That is the reason why some programmers use interpreters while making small sections as this saves time.
Almost all high level programming languages have compilers and interpreters. But some languages like LISP and BASIC are designed in such a way that the programs made using them are executed by an interpreter.
• A complier converts the high level instruction into machine language while an interpreter converts the high level instruction into an intermediate form.
• Before execution, entire program is executed by the compiler whereas after translating the first line, an interpreter then executes it and so on.
• List of errors is created by the compiler after the compilation process while an interpreter stops translating after the first error.
• An independent executable file is created by the compiler whereas interpreter is required by an interpreted program each time.


INTRODUCTION TO COMPUTER IX

INTRODUCTION TO COMPUTER

Introduction

A computer is an electronic machine that accepts instruction as input data, stores the data, processes them and produces the desired output. Computer automatically accepts data and instructions as input, stores and processes them and produces and gives the output under the control of the instructions of the stored programs.

Features of computer:

As computer is an intelligent amplifier that performs the above-mentioned operations in a faster, accurate and efficient way, it creates extra leisure time which can be used in matters involving creativity & judgment. Some of the common characteristics possessed by computers are as follows:
  • A computer can perform tasks at very high speed. The speed, with which computers carry out these operations, varies from a few microseconds (10-6 of a second or millionth of a second) to nanoseconds (10-9 of a second or billionth of a second).
  • It can store a large amount of data in its memory forever
  • It gives 100% accurate outputs unless the wrong data and instructions are entered.
  • Once the data and instructions are given, it caries out its operation automatically to produce the desired output.
  • It can perform its tasks repetitively with same speed, efficiency and accuracy, without being affected by traits of tiredness and lack of concentration.
  • It is versatile in a sense that it can perform from simple tasks, such as Desktop Publishing, to advanced tasks, such as controlling of automatic weapons, satellite launching, etc.

Limitations of Computers:

  • Since computer does not have its own intelligence, it should be given instructions to carry out its tasks. However, the fifth generation is supposed to have own intelligence.
  • An important data can be lost sometimes due to the breakdown of storage media in machine.
  • However there are various systems to protect data, but there is always fear of data piracy.
  • Computer is a very expensive to install and maintain that it would be difficult to afford it for everybody. But, with the ever-increasing advances being made in the state of the art, the cost of computer equipment has dropped drastically over the years. Hardware costs have been decreasing at an estimated annual rate of 25%.
  • Computers cannot store data unless they are given instructions.