Hi everyone ...
I'm just starting to try and learn assembly programming ... most of the win32asm sites say that I should have basic knowledge of assembly ...
So what type of knowledge is needed ...should I be expert at x86 assembly first?
and from where should I start? there is alot of resources for x86 and win32asm ...
I'm starting to read (art of assembly) since everyone is talking about this book ... but I don't want it to consume all my time since I've got alot to learn ahead of me and I also don't want to depend on its ucr library ...
I feel kind of lost here and would appreciate it if someone helps me find the right way to start ... and thanks all ...
Posted on 2002-04-09 02:45:08 by code1101
Hi.
I think you must have at least a programming background, in an High Level Langage or not.
There's some typical assembly concepts, like stacks, registers, flags, etc... but if you already programmed, in C for some time, in exemple, it is not very hard to understand these concepts...
In Win32ASM, you don't have to mess with the segments and all the boring things from the Dos days...
In fact, I would say to program in win32asm, the most important thing is a good knowledge and understanding of the Win32API.
Art of Assembly is a big book and I must admit that I never read it... too big, and too many allusions to the "dark" HLA variation... which I don't like at all...
Personally, I bought a little assembly book that talks about 32 Bit assembly (not win32asm) which is mainly an instruction reference and contains some examples. It is good for beginners.
I think you can find some free books written by passionate and knowledgeable assembly programmers on the net...
Thomas did a good introduction to assembly : you will find it on his site : www.madwizard.org

For the more complicated things, don't hesitate to read your instructions reference (coming with the masm32 package).
You will also find support from helpful and knowledgeable assembly programmers on this board.
Posted on 2002-04-09 03:13:13 by JCP
code1101,

Randy Hyde's AOA is a good place to start, it will give you a sound backing in how the basic instructions work. It will be up to you as to whether you wish to continue on with his concept of HLA or whether you wish to write pure asm in the form that MASM will produce it.

If its 32 bit Windows assembler that you want to write, the MASM32 package will help get you up to speed within a reasonable timeframe. It is worth downloading the Intel manual set for either the PIII or PIV as they are the best reference material around.

Regards,

hutch@movsd.com
Posted on 2002-04-09 03:16:23 by hutch--
thanks alot guys ...
hutch ... as readiosys said ... aoa is a huge book ... I'm now at chater 9 ... I understand most of the concepts about x86 like segmentation, stack, registers, flags and the instrection set ... but the text now is depending on the library that the author developed (ucr) that I find useless in the field of win32asm programming ... i thought the text would go further to explain even file I/O without the use of external Libraries ...
Is what I know now is enough for me to step in the win32asm world or should I keep reading more about x86?

Anyway, its encourging enough to find someone to help me get started guys and I really appretiate it ... and thanks again hutch and readiosys ...
Posted on 2002-04-09 03:47:28 by code1101
According to what you said, you have understood most of the basis of the assembly langage.
Now, to code in win32asm, and do File I/O, you have to use the Win32 API, the windows programming library (API is the acronym to Application Programming Interface).

You will find reference in MSDN : http://msdn.microsoft.com and especially in the Platform SDK from Microsoft.

I also recommend you to read the Iczelion's tutorials as they talk about interacting with the win32api using assembly langage : http://www.win32asm.cjb.net

Have a good reading. ;)
Posted on 2002-04-09 04:21:45 by JCP
thanks again ...

I was looking for something like the platform sdk and I needed someone to push me ... :)
Posted on 2002-04-09 04:44:36 by code1101
Hello code1101,

If you read that much already the only thing you need to do is get the masm32 Packages and go to Iczelion's site and get his tutorials (Don't forget to check out their LINKS) and start coding as you go.... There is only one problem with ASM and this Commumity and that is you will fall in love with it and be hooked for life. It's a good thing, i think the best thing ever....

About the Libraries, learn them and do battle with them latter. You may come up with something new on your own.... With what you know now you will be a Pro in less than 5 months if you do ALL of the above.

Good luck

PS: Posted on 2002-04-09 04:52:22 by cmax