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. The Lounge
  3. Assembly

Assembly

Scheduled Pinned Locked Moved The Lounge
questionlearning
51 Posts 32 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.
  • C code frog 0

    Absolutely true. Got any ideas?:laugh:

    M Offline
    M Offline
    Member 96
    wrote on last edited by
    #14

    Hundreds, you can't have any of them. :) I was a contract programmer once, I felt at the time as I was doing it that it was a suckers game and I feel even more so that way now. Here I was writing code over and over again, getting paid by the hour or job once then moving on and doing it all over again. Now, any code I write, I'll be selling that same product countless times over for years to come. Of course it's a *lot* more work than contracting ever was for the first few years. One hour of writing contract code was just that, one hour of code, one hour of pay. Now, one hour of time spent writing code for software we sell to the public in general has almost exponential rewards that keep giving and giving. The feeling is *completely* different.


    "I don't want more choice. I just want better things!" - Edina Monsoon

    C 1 Reply Last reply
    0
    • M Member 96

      _Damian S_ wrote:

      You can't get rich using your own time only, as there are only a limited number of hours in the day and one of you,

      If you had qualified that by saying "As a contractor you can't get rich..." I would agree but as a developer writing software for sale to the general public you most certainly can get rich on your own time only.


      "I don't want more choice. I just want better things!" - Edina Monsoon

      _ Offline
      _ Offline
      _Damian S_
      wrote on last edited by
      #15

      Yes, I should have qualified that statement a bit better... I was speaking in contractor terms, ie: dollars x hours = money.

      ------------------------------------------- Don't walk in front of me, I may not follow; Don't walk behind me, I may not lead; Just bugger off and leave me alone!!

      1 Reply Last reply
      0
      • S StevenWalsh

        I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

        J Offline
        J Offline
        Jonas Hammarberg
        wrote on last edited by
        #16

        I like MASM32. Maybe not for a beginner but there's lot of tutorials included also so...

        1 Reply Last reply
        0
        • M Member 96

          I think it's definitely a worthy goal, I don't know who the numbnut is who voted you a 1 for this but I hope they get a boil in their "personal space". ;)


          "I don't want more choice. I just want better things!" - Edina Monsoon

          S Offline
          S Offline
          Shog9 0
          wrote on last edited by
          #17

          Damn managed code zealots and their knee-jerk voting... ;P

          every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?

          P 1 Reply Last reply
          0
          • S StevenWalsh

            I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

            P Offline
            P Offline
            Paul Watson
            wrote on last edited by
            #18

            Just curious as to what kind of applications you normally code?

            regards, Paul Watson Ireland & South Africa

            Shog9 wrote:

            And with that, Paul closed his browser, sipped his herbal tea, fixed the flower in his hair, and smiled brightly at the multitude of cute, furry animals flocking around the grassy hillside where he sat coding Ruby on his Mac...

            1 Reply Last reply
            0
            • S Shog9 0

              Damn managed code zealots and their knee-jerk voting... ;P

              every night, i kneel at the foot of my bed and thank the Great Overseeing Politicians for protecting my freedoms by reducing their number, as if they were deer in a state park. -- Chris Losinger, Online Poker Players?

              P Offline
              P Offline
              Paul Watson
              wrote on last edited by
              #19

              The garbage collector must have failed.

              regards, Paul Watson Ireland & South Africa

              Shog9 wrote:

              And with that, Paul closed his browser, sipped his herbal tea, fixed the flower in his hair, and smiled brightly at the multitude of cute, furry animals flocking around the grassy hillside where he sat coding Ruby on his Mac...

              1 Reply Last reply
              0
              • M Member 96

                I think it's definitely a worthy goal, I don't know who the numbnut is who voted you a 1 for this but I hope they get a boil in their "personal space". ;)


                "I don't want more choice. I just want better things!" - Edina Monsoon

                N Offline
                N Offline
                NormDroid
                wrote on last edited by
                #20

                John Cardinal wrote:

                numbnut is who voted you a 1

                Probably a VB user.

                Roger Irrelevant "he's completely hatstand"

                1 Reply Last reply
                0
                • S StevenWalsh

                  I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                  N Offline
                  N Offline
                  NormDroid
                  wrote on last edited by
                  #21

                  Great to learn especially if you need to codecave or detour.

                  Roger Irrelevant "he's completely hatstand"

                  1 Reply Last reply
                  0
                  • S StevenWalsh

                    I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                    R Offline
                    R Offline
                    Reinier Boon
                    wrote on last edited by
                    #22

                    Getting knowledge of the inner workings is a good thing, but must compilers are better of doing their optimalisations on their own. Focus on a good design might be a better way to gain performance. But of course this all depends on the area you're working in and the languages you use.

                    1 Reply Last reply
                    0
                    • S StevenWalsh

                      I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                      V Offline
                      V Offline
                      Vasudevan Deepak Kumar
                      wrote on last edited by
                      #23

                      StevenWalsh wrote:

                      assembly

                      .NET Framework Assembly and Reflection classes? or Assembly Language?

                      Vasudevan Deepak Kumar Personal Homepage Tech Gossips

                      1 Reply Last reply
                      0
                      • S StevenWalsh

                        I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                        M Offline
                        M Offline
                        Marc Clifton
                        wrote on last edited by
                        #24

                        Various microcontroller vendors make prototyping development kits, often free, that come with a processor, a little breadboard area for some custom hardware, pots and leds and switches, etc., and an assembler. I think it's a good way to learn assembly language, by actually doing something at the hardware level. Check out development systems for the 8051 processor, which is a popular microcontroller. Marc

                        Thyme In The Country
                        Interacx
                        My Blog

                        G 1 Reply Last reply
                        0
                        • R RoswellNX

                          From what i can see from the Amazon reviews, it's a good book but it contains some buggy and poorly written examples, so i'd say it's best for beginners to supplement this book with something else as well, although an experienced programmer won't have as much trouble with it since they already have the necessary knowledge. Roswell

                          "Angelinos -- excuse me. There will be civility today."
                          Antonio VillaRaigosa
                          City Mayor, Los Angeles, CA

                          D Offline
                          D Offline
                          Dean Ours
                          wrote on last edited by
                          #25

                          I did 4 years of Motorola 68000 assembly programming for embedded control applications. Keep in mind that Intel x86 type processors and their decendants are not the only hardware out there (yes, I know, they dominate). You may find a good book for another processor type, and that is still good for understanding assembler in general. I would suggest also reading up on compiler theory, because this may more directly benefit you in understanding what your program in a higher-level language will do. Even if you knew assembler well, that does not tell you what the compiler may be doing.

                          S 1 Reply Last reply
                          0
                          • W Weiye Chen

                            code-frog wrote:

                            I've been thinking about the ramifications of running my own growing company and working in another.

                            No conflict of interest here? :~

                            Weiye Chen A hermit trying to learn hibernation...

                            D Offline
                            D Offline
                            Dr Walt Fair PE
                            wrote on last edited by
                            #26

                            I work full time and do software outside my employment. As long as you have a clear agreement and understanding beforehand, there's no conflict. As my lawyer once told me, the issue isn't conflict. The issue is disclosure. If the employer knows about and accepts the situation, there's no problem.

                            Walt

                            1 Reply Last reply
                            0
                            • S StevenWalsh

                              I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                              A Offline
                              A Offline
                              Alan Balkany
                              wrote on last edited by
                              #27

                              You'd probably be interested in "Optimizing C With Assembly Code" by Peter Gulutzan and Trudy Pelzer. In Microsoft C/C++ (and probably most others) you can use keywords to put assembly language in the middle of your functions, speeding up the execution of critical loops. In the 80X86 instruction set, some of the more complex instructions are inefficient, and hand-coded assembly is faster. The two editions of the book are a little dated (for the 80386 and 80486) but you can definitely learn the basic concepts. For efficiency there are techniques that will give you as much of a performance gain as assembly, if not more. For example, selecting a clever algorithm can sometimes give you orders of magnitude of improvement. Processing data in sequentially increasing addresses takes advantage of the cache: When you get even one byte from memory, the cache gets a whole 32-byte (or 64-byte depending on the hardware) line from memory which also contains the following bytes. The key idea is that if you use those bytes next, the processor gets them directly from the cache, and doesn't have to wait to get them from a separate memory chip. Hope this helps you.

                              1 Reply Last reply
                              0
                              • S StevenWalsh

                                I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                                E Offline
                                E Offline
                                El Corazon
                                wrote on last edited by
                                #28

                                StevenWalsh wrote:

                                I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code.

                                I learned assembly by taking the assembly output from my compiler, and reading it. Google will tell you an amazing amount of information if you have something to google on. Just about any assembler command can be googled. By taking the compiler output, depending on the compiler, you can directly read line-by-line how your code translates, and eventually recognize how to optimize it. However, after the old DOS days, I do very little hand-optimizaton. A quality algorithm will take less time to write than hand-optimized assembly. Knowing how your compiler generates assembly is part of that, knowing what operations are faster, and how to organize your high-level code for speed is far more important. Work with the compiler for fast operation, don't replace it.

                                _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                                1 Reply Last reply
                                0
                                • C code frog 0

                                  Absolutely true. Got any ideas?:laugh:

                                  E Offline
                                  E Offline
                                  El Corazon
                                  wrote on last edited by
                                  #29

                                  code-frog wrote:

                                  Got any ideas?

                                  SBIR. :-D

                                  _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                                  1 Reply Last reply
                                  0
                                  • W Weiye Chen

                                    code-frog wrote:

                                    I've been thinking about the ramifications of running my own growing company and working in another.

                                    No conflict of interest here? :~

                                    Weiye Chen A hermit trying to learn hibernation...

                                    E Offline
                                    E Offline
                                    El Corazon
                                    wrote on last edited by
                                    #30

                                    Weiye Chen wrote:

                                    No conflict of interest here?

                                    As long as you are upfront and honest about it, and do not write competing projects against your primary employer, no.

                                    _________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb)

                                    1 Reply Last reply
                                    0
                                    • S StevenWalsh

                                      I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                                      P Offline
                                      P Offline
                                      PICguy
                                      wrote on last edited by
                                      #31

                                      Why not start with a $1 CPU. Get a PIC 16F57. It has all of 80 bytes of RAM and more than enough code space to do something useful with all that RAM. I wrote firmware for a pellet stove - in assembly - on that CPU. And Microchip has a free IDE for that and most of the chips they make. There is more to assembly than x86. I have written assembly in the IBM 1620, 1440, 7090/94. I wrote floppy disk controller PCB firmware firmware on an 8085 and plotter firmware on a Z80. Large OS code for both CP & PP on CDC 6000/Cyber 70 - all in assembly. -Peter Butler

                                      1 Reply Last reply
                                      0
                                      • S StevenWalsh

                                        I'm interested in learning assembly, so i can better understand how my code executes with the hopes of writing more effecient code. Does anyone have any good suggestions on books and or sites?

                                        A Offline
                                        A Offline
                                        AKAJamie
                                        wrote on last edited by
                                        #32

                                        Out of curiosity, what language are you using to write your code? If it's not a .NET language then you're on the right track. If it is a .NET language then you would want to learn about IL.

                                        S 1 Reply Last reply
                                        0
                                        • M Member 96

                                          Hundreds, you can't have any of them. :) I was a contract programmer once, I felt at the time as I was doing it that it was a suckers game and I feel even more so that way now. Here I was writing code over and over again, getting paid by the hour or job once then moving on and doing it all over again. Now, any code I write, I'll be selling that same product countless times over for years to come. Of course it's a *lot* more work than contracting ever was for the first few years. One hour of writing contract code was just that, one hour of code, one hour of pay. Now, one hour of time spent writing code for software we sell to the public in general has almost exponential rewards that keep giving and giving. The feeling is *completely* different.


                                          "I don't want more choice. I just want better things!" - Edina Monsoon

                                          C Offline
                                          C Offline
                                          code frog 0
                                          wrote on last edited by
                                          #33

                                          Those thoughts are on my mind every single day. I'm constantly looking for ideas of something to write.

                                          E 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