hi everyone. I was wondering if I were to read AoA or a book called "The Revolutionary Guide to Assembly Language", what kind of things should i read about? becuase I mainly want to do 32bit masm - windows programming.
uoi, If you'll read the present version of AoA - you'll get know nothing except HLA - a curious mixture of Pascal, OOP and MASM. Try to get the previous version - it is very good tutorial for ASM beginners. DVA
he original aoa is still up http://webster.cs.ucr.edu/Page_asm/ArtofAssembly/ArtofAsm.html
The Revolutionary Guide to Assembly Language Programming Is a very good book on programming Assembler in MASM in DOS and if you are wanting to learn ASM I would say that that would be a very good place to start out so that you have a very good foundation before tackleing Windows ASM! Richard Ferguson
I know just about ZERO about DOS programming. What I do know makes me tremble. Calling INT as an API interface? 64K segments? near, far, short, long pointers? Nothing points anywhere! My point is, DOS programming is harder then Windows programming. Sure, windows has you do more for "Hello World," but it's more of simpler things. As to how one learns these things, well... I'm not sure I have a good answer for you. I learned assembly long ago on different processors, and learning flat 32 bit coding for me was just a switch of context.
so i should learn 16bit first then 32bit?
Well to tell you what I am doing I am totally skipping the 16 bit world because of its clunkyness. Just read the messages above. 32bit ASM seems much easier and makes alot more sense to me than 64k segments, near, far, long pointers, and all that crap of the 16 bit world. If I can get by without it I will just learn 32bit ASM.
You can safely forget 16 bit programming. For all but the most obscure things it is dead dead dead, let it rest in piece. 32 bit is easier, and you will have nothing to forget when you eventually start doing 64 bit stuff... just the address size changes, the model stays the same.
Just to add my voice to the procession, 32 bit assembler is simpler, clearer, has more powerful instructions, is easier to learn and will blow DOS/16 bit windows code into the weeds. For anyone who wrote pure 8088 code, you were writing to compensate for limitations in the early Intel processors, absolute 1 meg memory addressing which was obtained by segment / offset addressing that is about as clear as mud, the segment limit was 64k which was a pain and you had to try and learn badly documented and unreliable DOS interrupts. Learning DOS assembler first is like learning to program a mainframe in Octal, a useless waste of time to learn how to do it wrong and then have to learn again to get 32 bit right. Save yourself the pain, start on 32 bit asm first and leave DOS assembler in the junkheap where it belongs. Regards, firstname.lastname@example.org
hehe, thanks guys. I will do only 32bit =). I was wondering where to start learning 32bit masm? I know there is Iczelion's tutorials but those go kinda fast, I really don't know any asm code. Although I have programmed in other languages (VB and Delphi), so I do know some API.