Saturday, June 11, 2011

Assembler

This is a very big topic to discuss and hence in this post and the next we discuss about it.This is the def of assembler

"An assembler is a program that converts an assembly level language code (also called as mnemonic code) into machine language code and provides necessary information for the loader to load the programme."

In your day to day life of programming and all, you never come across using this system software anytime.This is because of the compiler which does the same thing, but can convert high level languages to machine languages unlike assembler which can only convert middle level (mnemonic) code to low level (machine) code.

If you are using micro processor and have done some coding, the coding you did is in assembly language.After the invention of compiler, even though assembler became obselete, for device like micro processor which require frequent compiling or assembling, assemblers are still used.Remember compiling is costlier than assembling.


Let's go into the history part of assembler.In the earlier days, people used to write the code in machine language involving 0's and 1's or in hexadecimal format, the only language that a computer can understand till date (seriously).The coding was very tedious and people need to constantly refer the documentation or need to remember a lot of code.

Machine code



The remedy came in early 1960's in the form of assembly language, that contain the parts of code that could be easily remembered in a native language like english.To convert that assembly code into machine code assembler was used.Later on high level languages were invented that were very much close to the native languages (C, C++, Java) and compilers to compile them, that's a whole different story

An example of C-language code with assembly code below (Courtesy : CISE.UFL)

That's all for today, let's talk more about assembler with some code segments as examples.If you have any queries or suggestions for improvising the content, post them in the comments section

No comments:

Post a Comment