News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Where should I start...

Started by OKIM, September 24, 2008, 11:23:19 AM

Previous topic - Next topic

OKIM

Hi...I'm a beginner in assembly but i had an idea what is register,segments and other stuff in memory. I don't know where should I focus studying assembly? What I really want is to know what is happening in an application or simply read the memory...

hutch--

OKIM,

Assembler is an advanced subject that is highly technical in its nature and unless you have a reasonable amount of exper9ience in both Windows API coding and know the basics of assembler mnemonics, you have a very low chance of succeeding. I would recomend that you start on a compiler so that you can laern basics like addressing, register usage and basic program logic first.

If yoyu need to code in assembler later you can always come back to it when you need it.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

OKIM

Hi hutch,

  Hi I'm a .Net programmer and i had a lot of experience in coding like C, C++, Java and with API I experienced it when i was using VB6..Trust me it's just a matter of time and sincerity..please....

thanks..

OKIM

What do you mean compiler?  :bg
is it the compiler that compile the code to machine code? like what? :D

BlackVortex

Quote from: OKIM on September 24, 2008, 11:47:56 AM
What do you mean compiler?  :bg
is it the compiler that compile the code to machine code? like what? :D
I think by this hutch meant you should first try a higher level language, like C.

But if you really want to learn asm, you should pick up a tutorial series, like Iczelion's (if you program in windows)

The important thing is not to rely on others everytime you have a problem, but first try to solve it yourself. Assembly is full of trial and error (and error and error)


fearless

Iczelion's tutorials are a good start for sure.

Also worth getting the The Art of Assembly Language Programming by Randall Hyde: http://webster.cs.ucr.edu/AoA/Windows/index.html which should cover most of the topics you need regarding register usage, memory and other topics.

Since you have experience with higher level languages then calling the win32 api functions will be a lot easier than someone starting from no programming skills. It will be very similar.

I suppose it also depends on what you want to do with win32 asm, as i find that it is much easier to learn if you have a set goal or project to focus your interest. Without that it will be harder to learn assembler i think. Whilst using asm is cool, interesting and offers various other benefits, it is also true that utilizing a different high level language instead of asm may be the better choice, depending on your needs.

But if you are really interested then there is no better way to learn than by rolling up your sleeves and getting into asm coding by giving yourself a small challenge.

Best of luck :D
ƒearless

hutch--

OKIM,

If you know your way around C/C++/.NET then yu should do OK at assembler but you must get the swing of addressing and make sure you are familiar with API coding and the basic architecture of Windows API code. Get the Intel manual for instructions, MSDN or similar for API reference and the rest is practice. This much, learn to code this stuff manually first aned once you know how it works you can use any of the very good IDEs if you like that style of code.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

jdoe

Quote from: OKIM on September 24, 2008, 11:45:19 AM
  Hi I'm a .Net programmer and i had a lot of experience in coding like C, C++, Java and with API I experienced it when i was using VB6..Trust me it's just a matter of time and sincerity..please....

OKIM,

The question "where do I start" comes back from time to time and I can understand when it's from a non-programmer but with all those languages knowledge I'm sceptical. Just remember how you did learn C, C++, Java or VB6 and do the same with assembly. You must had coded many functions with those language... why not starting translating them for assembly. Take one line at a time and search and post questions.

As BlackVortex said, Iczelion tutorials are a good start because you'll learn win32 and at the same time many assembly mnemonics.

You can read the Art Of Assembly by Randy Hyde.

Download MASM32 or GeneSys and read the source code included in the examples folder. The help files in MASM32 contains plenty of useful informations. And both of these package have a library with many functions that you can read.

With time you'll succeed.


OKIM

Hi Guys,

I appreciate all your tips and suggestions. Thanks to all of you. I'll be back here more often to get some tips. Maybe someday i have something to contribute here.

Thanks again..