Assembly Language Programming

Discussion in 'Programming' started by hus787, Aug 11, 2010.

  1. #1
    I have recently worked on an assembly based project(8086), a home security system with rigorous security checks, well you can say that luckily i found a correct platform, an orientation and pro level task.:)

    Truly speaking i love making algorithm and finding solutions in logical manner, the only thing i lack in is the syntax(language) and correct info of the platforms.

    Anybody who would like to provide helpful info regarding these will be MOST welcome ill be grateful to him.:)

    I'll be willing to work on some programming related project as a part time plus im electronic based projects to with good acquaintance with C language.:cool:
     
    hus787, Aug 11, 2010 IP
  2. mmua

    mmua Peon

    Messages:
    58
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #2
    Assebly language is virtually useless for implementing algorithms. It is used to make boot loaders and hardly optimize performance.
    Every platform has own assembly language with many dialects. So just learn algorithms themselves and implement in any suitable language :)
     
    mmua, Aug 12, 2010 IP
  3. drhowarddrfine

    drhowarddrfine Peon

    Messages:
    5,428
    Likes Received:
    95
    Best Answers:
    7
    Trophy Points:
    0
    #3
    Don't you wish you knew what you were talking about?

    Assembly language is used wherever performance optimization is critical including key elements in most, if not all, operating systems. As far as 'dialects' go, it usually boils down to two: Intel syntax and ATT syntax where most used the Intel syntax (even for AMD processors). The only time this changes is if you are using non-x86 processors but, then, you might not be using *nix and you're definitely not using Windows.
     
    drhowarddrfine, Aug 12, 2010 IP
  4. mmua

    mmua Peon

    Messages:
    58
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #4
    I know what I'm talking about. That's why I mentioned severe performance optimization.

    But most of the time nowadays compilers generate near perfect code, so before going assembly you should think twice implementing it high level language, profile if it is really bottleneck, then look at the generated assembly code and only then going assembly world.

    When you use non-x86 platforms, you definitely should consider using some flavour of *nix, since it allows great portability. If it is not possible, then some embedded OS might be the choice. But look, there is also not so much room for assembly language :) C is around and brings portability.

    BTW less than 4% of Linux code is written in assebly language if measure line by line. Most of code resides in architecture support part: booloaders, so on... than firmware(not drivers!) - that's all :)

    So, if topic starter consider algorithms, assembly language is the last choice :)
     
    mmua, Aug 13, 2010 IP
  5. drhowarddrfine

    drhowarddrfine Peon

    Messages:
    5,428
    Likes Received:
    95
    Best Answers:
    7
    Trophy Points:
    0
    #5
    You said it hardly optimizes performance.
    For optimization not available in any high level language.
     
    drhowarddrfine, Aug 13, 2010 IP
  6. mmua

    mmua Peon

    Messages:
    58
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #6
    I did re-read my message and found my mistake :) Hardly optimize performance :) I meant you need it when you need to optimize to the cut off last cpu cycle possible, which is of course hard job :) Sorry for my English.

    Still stating than ASM optimizations are last resort :)
     
    mmua, Aug 15, 2010 IP
  7. Kaizoku

    Kaizoku Well-Known Member

    Messages:
    1,261
    Likes Received:
    20
    Best Answers:
    1
    Trophy Points:
    105
    #7
    Are you kidding? Assembly is used for the sole purpose of performance, that is what the linux kernel uses.
     
    Kaizoku, Aug 19, 2010 IP
  8. mmua

    mmua Peon

    Messages:
    58
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #8
    Linux mainly uses it for platform-specific initialization. With rare cases of performance optimizations.
     
    mmua, Aug 19, 2010 IP