Results 1 to 15 of 15

Thread: Is learning assembly language worth it?

  1. #1

    Thread Starter
    Hyperactive Member gonzalioz's Avatar
    Join Date
    Sep 2009
    Location
    <body></body>
    Posts
    508

    Is learning assembly language worth it?

    Hi all,

    Programming is my job/study and also hobby at the same time. I am really interested in how everything works and I am thinking about spending some time learning assembly language.

    You learn how a computer really works with assembly language and I think that knowledge will be very useful to solve problems and write more effective code in higher programming languages.

    I like to know if you think learning assembly is a waste of time or not. Because it's really old and even Windows itself is written in C. A higher language then assembly...

  2. #2
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    40,104

    Re: Is learning assembly language worth it?

    It may be old, but it is also fundamental. However, as you have posted many things in the VB.NET forum, I would have to say that ASM is less useful for you, as some of the efficiencies in ASM simply do not translate well into VB, where they might in unmanaged C/C++.

    Having said that, I still encourage you to look into ASM. You might never write a single line in the language, but your second sentence summed up the reason to learn fairly well. There is also the advantage that if you learn ASM, you will find the generated IL easier to understand, as IL is similar to ASM in several ways. Of course, reading IL is not necessary for programming, but it can be interesting for seeing how certain problems are solved.
    My usual boring signature: Nothing

  3. #3
    Frenzied Member tr333's Avatar
    Join Date
    Nov 2004
    Location
    /dev/st0
    Posts
    1,605

    Re: Is learning assembly language worth it?

    Learning AVR-ASM at uni was quite beneficial. One one part, it showed us how to take care of memory optimisation, writing efficient code, etc. On the other part, it was so much of a challenge that I forgot almost everything after I finished using it. Haven't had to think about it much either since most of my coding is Perl.
    CSS layout comes in to the 21st century with flexbox!
    Just another Perl hacker,

  4. #4
    Fanatic Member namrekka's Avatar
    Join Date
    Feb 2005
    Location
    Netherlands
    Posts
    639

    Re: Is learning assembly language worth it?

    There is no general assembly language. Its depents on the processor.

  5. #5
    PowerPoster RhinoBull's Avatar
    Join Date
    Mar 2004
    Location
    New Amsterdam
    Posts
    24,132

    Re: Is learning assembly language worth it?

    Yes, ASM is fundamental and it certainly does teach how to do say memory optimisation BUT imho learning assembly these days is a waste of time unless you want to become system(s) programmer or you have nothing better to do.
    Btw, Windows was written in more than just one language - they primarily used C, C++ and C# but some parts were done in assembly.

  6. #6
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    40,104

    Re: Is learning assembly language worth it?

    Let me amend my answer to state that I don't think learning ASM to any great depth is currently valuable unless you are doing some low level systems or driver programming. learning it sufficiently to be able to read it roughly, is sufficient, as that will give you information on how ASM programs are laid out, how memory management works, and so forth. Actually learning it to the point that you can write anything significant in it is probably not so useful.
    My usual boring signature: Nothing

  7. #7

    Thread Starter
    Hyperactive Member gonzalioz's Avatar
    Join Date
    Sep 2009
    Location
    <body></body>
    Posts
    508

    Re: Is learning assembly language worth it?

    Ok thank you all for your replies.

    I am thinking of writing a tiny OS (on a floppy disk) in which you can type something, save it and load it next boot. That will be a good exercise and a challenge. I have absolutely no idea how to do this, but that's when I perform best . I need something challenging to keep me going and not giving up half way.

    I have been studying a lot of theory today and yesterday about data- ,control- ,memory bus etc... It makes you appreciate what a wonderful piece of technology a computer really is.

  8. #8
    Super Moderator Shaggy Hiker's Avatar
    Join Date
    Aug 2002
    Location
    Idaho
    Posts
    40,104

    Re: Is learning assembly language worth it?

    Yes, it certainly does that.
    My usual boring signature: Nothing

  9. #9
    Hyperactive Member Max Peck's Avatar
    Join Date
    Oct 2007
    Posts
    384

    Re: Is learning assembly language worth it?

    You've heard the phrase "A rising tide raises all ships". Well ... for the most part the tide isn't at assembly language any more.

    I spent years writing assembly myself, back in the early PC days - had to. Memory management was still being developed (I wrote memory management and many device drivers) and it rocked. At that point in time (back in the early to mid 80's) you really needed to know assembly to get the most out of the PC environment.

    Today? I wouldn't say that you should spend any time you can't afford to waste with it. If (as you have said) it's strictly for fun so you can learn the fundamentals of computer architecture, then cool. However as has also been said, if you are planning to use the knowledge to get a job or a contract you will need to be interested in very low-level device control type work. You won't write a "killer app" in assembly today. There are simply too many optimized compiler offerings that allow you to get high-performance code at a high level today.


    -Max
    The name's "Peck" .... "Max Peck"

    "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." - Red Adair

  10. #10
    PowerPoster Jenner's Avatar
    Join Date
    Jan 2008
    Location
    Mentor, OH
    Posts
    3,712

    Re: Is learning assembly language worth it?

    Unless you're trying to learn how to program esoteric devices like microcontrollers, there really isn't a need anymore . I also learned assembly years ago. I'll be damned if I can remember even a tenth of it today. Every now and then, I come up with a situation where it was nice to have, but I wouldn't recommend anyone learning it unless they had a need to.

    There still are needs for assembly; don't get me wrong. Drivers still need to be written for new hardware and assembly is required. Companies that have lost source code to legacy applications need programmers who can reverse engineer (remember Y2K? :P ); and assembly is a great reverse engineering tool.
    My CodeBank Submissions: TETRIS using VB.NET2010 and XNA4.0, Strong Encryption Class, Hardware ID Information Class, Generic .NET Data Provider Class, Lambda Function Example, Lat/Long to UTM Conversion Class, Audio Class using BASS.DLL

    Remember to RATE the people who helped you and mark your forum RESOLVED when you're done!

    "Two things are infinite: the universe and human stupidity; and I'm not sure about the universe. "
    - Albert Einstein

  11. #11
    VB Addict Pradeep1210's Avatar
    Join Date
    Apr 2004
    Location
    Inside the CPU...
    Posts
    6,614

    Re: Is learning assembly language worth it?

    I think that spending time on MSIL rather than ASM these days would be more fruitful.
    Pradeep, Microsoft MVP (Visual Basic)
    Please appreciate posts that have helped you by clicking icon on the left of the post.
    "A problem well stated is a problem half solved." — Charles F. Kettering

    Read articles on My Blog101 LINQ SamplesJSON ValidatorXML Schema Validator"How Do I" videos on MSDNVB.NET and C# ComparisonGood Coding PracticesVBForums Reputation SaverString EnumSuper Simple Tetris Game


    (2010-2013)
    NB: I do not answer coding questions via PM. If you want my help, then make a post and PM me it's link. If I can help, trust me I will...

  12. #12
    PowerPoster dilettante's Avatar
    Join Date
    Feb 2006
    Posts
    24,487

    Re: Is learning assembly language worth it?

    I'd think much of the benefit of learning to write close to the machine level can be obtained by working with one of the emulators of 8-bit processors or pseudo-machines.

    It is an entirely different matter if you are going to be doing microcontroller development, and in general for anyone going into systems programming. Even there an emulator for a simple machine can be a good place to start though.

    Unless you're really going to be working at that level "real" machine experience isn't so important. The background concepts are the same using a pseudo machine.

    Here is a simple example of the sort of thing I had in mind.

  13. #13
    Frenzied Member
    Join Date
    Jul 2008
    Location
    Rep of Ireland
    Posts
    1,380

    Re: Is learning assembly language worth it?

    Learning anything is a good thing. If writing an OS interests you there is a book called Code that you should pick up. It starts of slow but eventually paper prototypes a complete basic OS, it wont give you any specifics but it will explain some of the basics like how to write code that loads code to allow you to write code to build the OS.

  14. #14

    Thread Starter
    Hyperactive Member gonzalioz's Avatar
    Join Date
    Sep 2009
    Location
    <body></body>
    Posts
    508

    Re: Is learning assembly language worth it?

    Quote Originally Posted by DeanMc View Post
    Learning anything is a good thing. If writing an OS interests you there is a book called Code that you should pick up. It starts of slow but eventually paper prototypes a complete basic OS, it wont give you any specifics but it will explain some of the basics like how to write code that loads code to allow you to write code to build the OS.
    Can you give me a link to where I can buy that book? Can't find it with google.

  15. #15
    Frenzied Member
    Join Date
    Jul 2008
    Location
    Rep of Ireland
    Posts
    1,380

    Re: Is learning assembly language worth it?


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width