1. Low- Level Languages
2. High-Level Languages
A low-level programming language is a programming language that provides little or no abstraction from a computer's instruction set architecture. Generally this refers to either machine code or assembly language. The word "low" refers to the small or nonexistent amount of abstraction between the language and machine language; because of this, low-level languages are sometimes described as being "close to the hardware".
Low-level languages can be converted to machine code without using a compiler or interpreter, and the resulting code runs directly on the processor. A program written in a low-level language can be made to run very quickly, and with a very small memory footprint; an equivalent program in a high-level language will be more heavyweight. Low-level languages are simple, but are considered difficult to use, due to the numerous technical details which must be remembered.
There are two languages used in low level languages namely:
a) Machine language (First generation language)
b) Assembly Language (Second generation language)
Sometimes referred to as machine code or object code, machine language is a collection of binary digits or bits that the computer reads and interprets. Machine language is the only language a computer is capable of understanding.
Ø Instructions are written using binary logic
Ø They require many lines of logic to accomplish a task
Ø This very code is hard for humans to understand unless he/she is equipped with special knowledge in machine level programming
Ø Different CPUs have different machine codes this is in reference to the coding schemes we learned earlier like ASCII and EBCDIC
Ø These programs are easy to execute by the CPU but hard to understand by humans
The only advantage is that program of machine language run very fast
because no translation program is required for the CPU.
1. It is very difficult to program in machine language. The
programmer has to know details of hardware to write program.
Machine Instruction Machine Operation
00000000 Stop Program
00000001 Turn bulb fully on
00000010 Turn bulb fully off
00000100 Dim bulb by 10%
00001000 Brighten bulb by 10%
00010000 If bulb is fully on, skip over next instruction
00100000 If bulb is fully off, skip over next instruction
01000000 Go to start of program (address 0)
Sometimes referred to as assembly or ASL, assembly language is a low-level programming language used to interface with computer hardware.
Ø They were developed to overcome the difficulties of understanding and using machine languages
Ø It attempted to make computer languages readable
Ø This language allowed programmers to write programs as a set of symbolic operation codes called Mnemonics- this is a shortened two or three letter words.
Ø Programs written in assembly language require an assembler in order convert them into machine language that the computer can understand.
Ø Assembly language is machine dependent- this means, a program written for one computer cannot be used on another.
MOV r0, #0C ;load base address of string into r0
Notes and Revisions > Computernotes > ComputerForm3 > 3. ELEMENTARY PROGRAMMING PRINCIPLES >