LANGUAGE TRANSLATOR- EXAMPLES OF LANGUAGE TRANSLATORS YOU NEED TO KNOW
The term Language Translators is not common to everyone especially those not studying any computer-related field or discipline. Language translators are examples of systems software’s and we discussed that in one of our articles.
A language translator is a program that translates a source code at a high level into object code in the machine language equivalent. In the definition of language translators, there are some terms that we want to bring out because they might be difficult to grasp if not clearly explained.
A high-level language is a language that is not dependent on the machine it is running on and it is a language that can be understood by humans and examples of high-level languages are python, C, Fortran, Basic, and Javascript while a machine language is a low-level language used to control a computer central processing unit.
As the name implies, it is the only language that the computer understands and a high-level language must be translated by a translator into a low-level language and this article would focus on the types of languages translators.
Below are examples of types of Language Translators:
Compilers: A compiler is a program that accepts programs written in high-level language as input, process, and translate the entire program into an equivalent machine language code. Compilers are machine-dependent and some examples of compilers are:
- COBOL: COBOL is a short form for Common Business Oriented Language and it is a programming language that was designed by Howard Bromberg, Norman Discount, Vernon Reeves, Jean E. Sammet, William Selden, and Gertrude Tierney. COBOL was designed by CODASYL and it has an English-like syntax.
- FORTRAN: FORTRAN is a short form for Formula Translation and it was created in the year 1957 and it was designed by John Bakus and developed by John Bakus and IBM.
- PASCAL: PASCAL is a procedural programming language that was created in the year 1970 by Niklaus Wirth and there over seven data types in PASCAL namely integer, real, boolean, char, set, array, and string.
- C: C is a procedural programming language that was created in the year 1972 by Dennis Ritchie and it was developed by Dennis Ritchie and Bells Lab. The goal of writing C was to construct utilities running on UNIX.
Interpreters: Interpreters are computer programs that accept high-level language source programs, read, translate, and execute the program one line at a time. An interpreter uses any of the strategies below for program execution:
- Parsing the source code and performing its behaviour directly
- Translating the source code into an immediate representation and executing it.
- Executing code stored by a compiler.
An interpreter is very easy to develop but it is slow compared to other language translators and examples of programming languages that make use of interpreters are Python, Ruby, Perl, and PHP. We wrote an article that explained some of the programming languages in this post so ensure that you check it out after you must have finished reading this article.
Assemblers:
Assemblers are programs that accept and translate assembly language written programs to their machine language equivalent. Assemblers are also denoted as asm and they are low-level programming languages that can also be known as symbol machine code.
Assemblers are machine-dependent and this simply means that they are specific to particular computer architecture and sometimes OS hence one assembler cannot run on different machines.
A disassembler is a program that performs the reverse action of an assembler and this accepts machine language programs and translates it to an assembly language. An assembly language has three basic parts namely:
- Opcode Mnemonics:
- Data Definitions:
- Assembly Directives:
The following are some of the applications of an assembler:
- Used to test a system’s hardware prior to booting
- Used for operating system kernels which cannot rely on the availability of pre-existing system calls.
- Used in enhancing the speed of execution especially in PCs with limited RAM and processing speed.
- Used in the generation of blocks of data
These are the only translators available as at the time of writing this article but please note that the world of technology is dynamic so there can be an addition or subtraction at any time so ensure that you subscribe to our mailing lists and also visit this website frequently so that you would be updated once we make any changes to this article.