Jump to content
Tuts 4 You

Assembly language : Programming series


Noteworthy

Recommended Posts

Hello dear comrades,

"This is for all you folks out there, who want to learn the magic art of Assembly programming." - MAD

What is Assembly Language ?

Some people define assembly language as a language in which one line of source code generates one machine instruction. This has never been literally true, since some lines in an assembly-language source code file are instructions to the translator program and do not generate machine instructions. My own definition follows: Assembly language is a language that allows total control over every individual machine instruction generated by the translator program. Pascal or C compilers, on the other hand, make a multitude of invisible and inalterable decisions about how a given language statement will be translated into machine instructions. For example, the following single Pascal instruction assigns a value of 42 to a numeric variable called V: V : = 42: When a Pascal compiler reads this line, it outputs a series of four or five machine instructions that take the value 42 and store it in memory at a location encoded by the name I. Normally, you the programmer have no idea what these four or five instructions actually are, and you have utterly no way of changing them, even if you know a sequence of machine instructions that is faster and more efficient than the sequence the compiler uses. The Pascal compiler has its own way of generating machine instructions, and you have no choice but to accept what it writes to disk to accomplish the Pascal statements in the source code file. An assembler, however, has at least one line in the source code file for every machine instruction it generates. It has more lines than that to handle numerous other things, but every machine instruction in the final object code file is controlled by a corresponding line in the source code file. 'from assembly language step by step'

Why Learning Assembly Language Is Still a Good Idea ?

ASM language will provide you:

Edited by Noteworthy
  • Like 1
Link to comment
This is not always true, there are some quite smart compilers out there that can generate smarter code than you might think to do by hand in less time and effort. It's likely that you can write an error free program in a safe, high level language that runs just as fast (perceived) for most common cases. I do agree that there are cases in say, graphics, compression or number crunching that might be able to be optimized by hand if you are doing high performance code, but how many of us will ever need to do that? Often what a smart compiler for a higher level language generates is good enough.

Totally agree with you glaufan.

Link to comment
This is not always true, there are some quite smart compilers out there that can generate smarter code than you might think to do by hand in less time and effort. It's likely that you can write an error free program in a safe, high level language that runs just as fast (perceived) for most common cases. I do agree that there are cases in say, graphics, compression or number crunching that might be able to be optimized by hand if you are doing high performance code, but how many of us will ever need to do that? Often what a smart compiler for a higher level language generates is good enough.

and what you are talking has already been talked about a zillion times

The point is one may not need it but then as you said yourself someone will need it so the one who needs asm will learn it

besides reversers have a different reason to learn it ;)

Nice thread btw for a newbie

Edited by GEEK
Link to comment
  • 3 weeks later...
  • 7 months later...

Hello,

Here is another interesting tutorial (FR) to introduce Assembly in Win32 platforme (Masm32 Package):

>http://www.developpez.net/forums/f20/autres-langages/assembleur/

Noteworthy.

Edited by Noteworthy
Link to comment
  • 11 months later...
  • 2 weeks later...
  • 11 months later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...