Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. Hardware & Devices
  4. How to start learning Assembly?

How to start learning Assembly?

Scheduled Pinned Locked Moved Hardware & Devices
questioncsharpc++tutoriallearning
12 Posts 5 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A atoi_powered

    Hi, I worked a little with C#, C and C++. I've googled a lot but I got different ideas and suggestions on my topic. What do you suggest to start from to learn Assembly? And what is/are the good ebook(s) to begin with? I should add I'm exclusively looking for the ebooks. Thanks :)

    S Offline
    S Offline
    SoMad
    wrote on last edited by
    #2

    What kind of hardware platform are you planning on targeting? Soren Madsen

    A 1 Reply Last reply
    0
    • S SoMad

      What kind of hardware platform are you planning on targeting? Soren Madsen

      A Offline
      A Offline
      atoi_powered
      wrote on last edited by
      #3

      It's an Intel Sandy Bridge x64 PC.

      L 1 Reply Last reply
      0
      • A atoi_powered

        Hi, I worked a little with C#, C and C++. I've googled a lot but I got different ideas and suggestions on my topic. What do you suggest to start from to learn Assembly? And what is/are the good ebook(s) to begin with? I should add I'm exclusively looking for the ebooks. Thanks :)

        D Offline
        D Offline
        Dave Kreskowiak
        wrote on last edited by
        #4

        You can start by going through this[^]. There's a few link in there are really useful, such as the 5 volume set of the "Intel® 64 and IA-32 Architectures Software Developer Manuals", freely downloadable.

        A guide to posting questions on CodeProject[^]
        Dave Kreskowiak

        A 1 Reply Last reply
        0
        • D Dave Kreskowiak

          You can start by going through this[^]. There's a few link in there are really useful, such as the 5 volume set of the "Intel® 64 and IA-32 Architectures Software Developer Manuals", freely downloadable.

          A guide to posting questions on CodeProject[^]
          Dave Kreskowiak

          A Offline
          A Offline
          atoi_powered
          wrote on last edited by
          #5

          I liked the info inside, thanks a lot :)

          D 1 Reply Last reply
          0
          • A atoi_powered

            I liked the info inside, thanks a lot :)

            D Offline
            D Offline
            Dave Kreskowiak
            wrote on last edited by
            #6

            Congratulations on leaping into the world of extreme tedium, otherwise known as Assemly Language!

            A guide to posting questions on CodeProject[^]
            Dave Kreskowiak

            A 1 Reply Last reply
            0
            • A atoi_powered

              It's an Intel Sandy Bridge x64 PC.

              L Offline
              L Offline
              Lost User
              wrote on last edited by
              #7

              Interesting register usage on the 64. The first 4 params are passed through registers and not the stack.

              1 Reply Last reply
              0
              • A atoi_powered

                Hi, I worked a little with C#, C and C++. I've googled a lot but I got different ideas and suggestions on my topic. What do you suggest to start from to learn Assembly? And what is/are the good ebook(s) to begin with? I should add I'm exclusively looking for the ebooks. Thanks :)

                L Offline
                L Offline
                Lost User
                wrote on last edited by
                #8

                Online books will help, but what you really need is a primer a compiler and to start writing code. The only way is to really get stuck in and using it. Gotta say, I can follow assembler pretty well, but I never write in it, I just have to debug into it quite often. But its a pig. It takes minutes of concentration just to follow variables through the stack and into a func. Why anyone would really want to learn it and program in it is odd these days. C/C++ gives you all the power and none of the hassle of assembly.

                A 1 Reply Last reply
                0
                • D Dave Kreskowiak

                  Congratulations on leaping into the world of extreme tedium, otherwise known as Assemly Language!

                  A guide to posting questions on CodeProject[^]
                  Dave Kreskowiak

                  A Offline
                  A Offline
                  atoi_powered
                  wrote on last edited by
                  #9

                  What a world I desireably got stuck with :D Thanks man :)

                  1 Reply Last reply
                  0
                  • L Lost User

                    Online books will help, but what you really need is a primer a compiler and to start writing code. The only way is to really get stuck in and using it. Gotta say, I can follow assembler pretty well, but I never write in it, I just have to debug into it quite often. But its a pig. It takes minutes of concentration just to follow variables through the stack and into a func. Why anyone would really want to learn it and program in it is odd these days. C/C++ gives you all the power and none of the hassle of assembly.

                    A Offline
                    A Offline
                    atoi_powered
                    wrote on last edited by
                    #10

                    You're right but I'm one of the guys who have their own reasons(even unusual-to-the-public one) to get their hands dirty with asm! The world is full of these kinds of reason :^)

                    R 1 Reply Last reply
                    0
                    • A atoi_powered

                      You're right but I'm one of the guys who have their own reasons(even unusual-to-the-public one) to get their hands dirty with asm! The world is full of these kinds of reason :^)

                      R Offline
                      R Offline
                      Roger Wright
                      wrote on last edited by
                      #11

                      Good for you! I learned Assembly programming hands on, reading the Intel documentation (4004) and breadboarding the CPU with a few registers and DIP switches. Moving up to the MITS Altair8800, I used what I learned to write an OS for it, then an assembler to save having to enter binary opcodes with toggle switches. It's a great way to really understand how the software and hardware interact and depend on each other, but I don't recommend it as an efficient way to write apps. :) Of course, if you're writing real-time control code for small MCUs with tiny memories, nothing is better - not even C. It's fun, educational, and sometimes useful to program at this level, but it's never easy. Enjoy! :-D

                      Will Rogers never met me.

                      A 1 Reply Last reply
                      0
                      • R Roger Wright

                        Good for you! I learned Assembly programming hands on, reading the Intel documentation (4004) and breadboarding the CPU with a few registers and DIP switches. Moving up to the MITS Altair8800, I used what I learned to write an OS for it, then an assembler to save having to enter binary opcodes with toggle switches. It's a great way to really understand how the software and hardware interact and depend on each other, but I don't recommend it as an efficient way to write apps. :) Of course, if you're writing real-time control code for small MCUs with tiny memories, nothing is better - not even C. It's fun, educational, and sometimes useful to program at this level, but it's never easy. Enjoy! :-D

                        Will Rogers never met me.

                        A Offline
                        A Offline
                        atoi_powered
                        wrote on last edited by
                        #12

                        That's so good! I appreciate it :)

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • World
                        • Users
                        • Groups