Assembly language - is it worth learning?

United States
March 22, 2007 11:01pm CST
So, I'd like some fellow programmers opinion on this? Is it worth it to learn assembly anymore (specifically x86)? I think it is - but only to people who are more or less computer nerds, or into robotics. If so, why? If not, why?
1 person likes this
4 responses
@Papago (30)
• United States
23 Mar 07
I think it really depends on what type of programming you want to do. If you want your program to be faster in some parts assembly can be a good solution because you can get rid of all the overhead that comes with other langauges. Also if you are writting code in c/c++ it is really easy to place assembly into this code to make certain things run faster. Another advantage to assembly is if you have a limitation on space assembly is a good thing, however this is not much of a problem anymore unless you are programming mirco chips. In industry assembly is still used in a lot of differnet applications so it is a good thing to know. However, it is not something you are going to use to write an enterprise application. It is used more for making your code more lean and for space considerations. Anyways I hope this helps.
@kaka135 (14916)
• Malaysia
14 Jan 09
Well, I do not think it's worth to learn assembly language now, if you are talking about jobs, but not your own interest. I do not see which area we are still using assembly language to build the applications. Even in robotics, we do not use assembly language, but we can use C or VB now. Also, assembly language seems to be more troublesome, so I'd suggest you spend time in learning other languages.
@cambiste (1244)
• India
15 Jan 09
True. But learning the assembly language can create a solid base for an engineer or a programmer. Understanding the basic architecture of a microprocessor, how it works, memory management its necessary if you're really interested in creating big things like an OS or even little things that you want perfectly efficient. If its in your way, you should just learn it. On the other hand, if you plan to become a script writer, or a programmer rather than a software engineer, you probably wont need this. If you want to start creating programs, coding with the least effort, you should go for VB.NET or Java or even PERL. I understand amazon.com is scripted completely in PERL.
@year3399 (173)
• China
1 Apr 07
What languages do ghey speak in the united nations? There are so many different languages in the world that they decided to use only six .these languages are arabic .chinese .english .french .russian.and spanish .everything spoken or writtten in one language is translated into the other five .
@cambiste (1244)
• India
13 Jan 09
Well, im learning MASM 6.11 right now, and yes, you're right, its not very useful. The purpose of learning assembly languages is to understand the structure and nature of the registers, how transfers occur, and basic stuff like that. Almost all engineers have to learn it as a part of their training. With C++, java and other high level languages, which are easier, more understandable and far more flexible, assembly language doesnt stand anywhere. You'll ahve noticed that programming in .asm isnt very popular. Unlike C, C++, Java, PERL and other languages which have extensive support in the form of forums, tutorials and blogs, .asm can hardly be found online. The only advantage of using .asm is that, execution space, instruction length, and memory requirements is far less when compared to high-level languages. On the other hand, its tedious to type six pages of coding to just implement binary search. Im not sure what .asm has to do with robotics, as there are other languages that can be used instead of .asm, and is more flexible, free-form and OO than it as well. Like i mentioned, there's no need for learning assembly languages in the present, but many educational boards include it as part of the syllabus for college students to understand the microprocessor architecture. I just finished my internal lab exam on it, and i have to say it was fun.