First generation and second generation
Category : 4th Class
First Generation Languages IGLs (Machine Language)
When the human being first started programming the computer, he used machine language or binary language. A set of is and Os as 11101101 has a specific meaning to a computer even though it appears as a binary number to us. The writing of programs in machine language is very cumbersome and complicated and could be performed only by experts. All the data and instructions to be fed into the computer were in a numeric form i.e. in binary form. The machine language program is a complicated program which requires the knowledge of complete computer circuitry. Furthermore, debugging a machine language program is a tedious job. Due to these reasons the machine language never became popular among the users.
Second Generation Languages 2GLs (Assembly Language)
The first-generation programming language or 1GL is machine code. It is the only language a microprocessor can process directly without a previous transformation. Currently, programmers almost never write programs directly in machine code, because it requires attention to numerous details which a high-level language would handle automatically and also requires memorizing or looking up numerical code for every instruction that is used. Lots of efforts were made to remove the difficulties faced by the use of machine languages. The first language similar to English was developed in 1950 which was known as Assembly Language or Symbolic Programming Languages. The purpose of these languages was to bring the man and machine close to each other in spite of using different languages. The second-generation programming language or 2GL is assembly language. It is considered as a second-generation language because it is not a microprocessor's native language. An assembly language programmer must be aware of the microprocessor's unique architecture such as its registers and instructions. In assembly language, understandable symbols and words are commonly used to denote the operations and addresses of operands.
The following instructions can be written for adding two numbers A and B.
The above symbols LDA (Load Accumulator) and ADD (Addition) are more understandable than the corresponding symbols 001 and 010 in binary form used in machine language. In addition/ the meaning of these words is obvious and no special efforts are required to remember the meaning. Such symbols LDA and ADD are known as Mnemonics and these express the operations to be performed. The operation code used in machine language are replaced by mnemonics which are easier to remember. Before feeding the program written in assembly language to the computer, the assembler must be loaded to the computer memory for translating. It occupies a large memory of the computer; hence it cannot be used with small capacity computer. This was the main advantage of the machine language over the assembly language.
Some programming code in binary language and assembly language:
mov c, a (Data transfer from register c to accumulator)
cmp edx, 0
ja @ f
mov eax, 0
cmp edx, 2
Given below is the information about Low Level Languages. Read them and identify the correct one.
1. A low-level language does not need a compiler or interpreter to run.
2. A low-level programming language directly interacts with the hardware. That's why it is described as being "close to the hardware".
3. Low-level programming languages are not a machine oriented language.
(A) 1 and 2
(B) 1 and 3
(C) 2 and 3
(D) All of these
(E) None of these
(A) Statements 1 and 2 are correct about Low level language.
(B) Statement 1 is correct but statement 3 is incorrect. Therefore, option (B) is incorrect.
(C) Statement 2 is correct but statement 3 is incorrect. Therefore, option (C) is incorrect.
(D) All the given statements are not correct. Therefore, option (D) is incorrect.
(E) None the given statements are not incorrect. Therefore, option (E) is incorrect.
Match the following:
1. Low level Language i. Machine Code
2. 1st Generation Language ii. Assembly Language
3. 2nd Generation Language iii. Close to hardware
(A) 1, ii; 2, i; 3, iii
(B) 1, iii; 2, ii; 3, i
(C) 1, iii; 2, i; 3, ii
(D) 1, i; 2, ii; 3, iii
(E) 1, ii; 2, iii; 3, i
(C) Option (C) is matched correctly.
(A) Option (A) is matched incorrectly.
(B) Option (B) is matched incorrectly.
(D) Option (D) is matched incorrectly.
(E) Option (E) is matched incorrectly.
You need to login to perform this action.
You will be redirected in 3 sec