flat assembler
Message board for the users of flat assembler.

Index > Main > Where should i start from?

Author
Thread Post new topic Reply to topic
elf1984



Joined: 14 Jul 2010
Posts: 5
elf1984 15 Jul 2010, 07:31
I`m a PHP & Python programmer with 5 years experience, little of C, though i have not done any big project with C.

i love Assembly and i want to take my time to learn it, i have read so much about assemblers and i ended up with Flat Assembler, so i`m looking for an article/book that will teach from the scratch. WHERE should i start? some said MASM is better for beginners but i hate MASM source code, what something real Assembly like TASM, NASM etc.

Thank you.
Post 15 Jul 2010, 07:31
View user's profile Send private message Reply with quote
Tyler



Joined: 19 Nov 2009
Posts: 1216
Location: NC, USA
Tyler 15 Jul 2010, 12:09
There isn't a Fasm based book/beginners tut/anything AFAIK. Look in the Examples folder(in the Fasm folder you downloaded), it might be a little helpful. There's also examples and documentation hosted on this site, reachable from links on the root index page.

What platform? What do you want to do? It kinda depends on what platform you want to target and if you want GUI or CLI. For Win32, Iczelion's tutorials are seen as the standard, but ther are in Masm. For DOS, idk, just as questions here, I guess. For Linux, just use libc.
Post 15 Jul 2010, 12:09
View user's profile Send private message Reply with quote
madmatt



Joined: 07 Oct 2003
Posts: 1045
Location: Michigan, USA
madmatt 15 Jul 2010, 12:17
Hello elf1984,
You can start by reading the fasm documentation, and looking through and compiling the example code that comes with the fasm package. Then, If you still decide you wan't to learn assembly, we can give you more info and code examples.
Post 15 Jul 2010, 12:17
View user's profile Send private message Reply with quote
elf1984



Joined: 14 Jul 2010
Posts: 5
elf1984 15 Jul 2010, 12:54
Wonderful replies from both of you (Tyler,madmatt).
i`m on Windows, i want to do mostly CLI app for win32, like network application , reverse engineering.

but the most important thing is, i want to have the basic understanding of assembly and i think FASM is good for me or do you think i should learn MASM instead?
Post 15 Jul 2010, 12:54
View user's profile Send private message Reply with quote
edemko



Joined: 18 Jul 2009
Posts: 549
edemko 15 Jul 2010, 13:34
hi
being on masm forum you would hear "stay with masm", i can advise you keeping fasm
mind that masm and fasm differ in one letter: 'M'&'F', ie. respect masm users, previously it was my problem Smile

http://www.wasm.ru/baixado.php?mode=src&id=349
http://www.wasm.ru/forum/attachment.php?item=3611
Post 15 Jul 2010, 13:34
View user's profile Send private message Reply with quote
elf1984



Joined: 14 Jul 2010
Posts: 5
elf1984 15 Jul 2010, 16:06
Thank you, i will check the links and get back to you guys.
Post 15 Jul 2010, 16:06
View user's profile Send private message Reply with quote
bitshifter



Joined: 04 Dec 2007
Posts: 796
Location: Massachusetts, USA
bitshifter 15 Jul 2010, 20:11
Might i suggest writing a program in your favorite language
then run it through a debugger and try to understand what its doing.
I am amazed at how little HLL people use debuggers regularly.
Also you can learn a lot by reading ALL of the posts in this forum.
No joke, it took me two years but i learned a lot doing it.
Just remember that you will never stop learning new things.
Post 15 Jul 2010, 20:11
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20451
Location: In your JS exploiting you and your system
revolution 15 Jul 2010, 20:17
bitshifter wrote:
Might i suggest writing a program in your favorite language then run it through a debugger and try to understand what its doing. I am amazed at how little HLL people use debuggers regularly. Also you can learn a lot by reading ALL of the posts in this forum. No joke, it took me two years but i learned a lot doing it. Just remember that you will never stop learning new things.
It you do this then beware which compiler you choose. Some compilers will make a simple "Hello world!" proggy into a 100kB+ monster. That would be no fun to debug trying to find the part that you wrote buried amongst layers of unknown wrappers.
Post 15 Jul 2010, 20:17
View user's profile Send private message Visit poster's website Reply with quote
Tyler



Joined: 19 Nov 2009
Posts: 1216
Location: NC, USA
Tyler 16 Jul 2010, 02:32
GCC(No optimization): 6,144 bytes
GCC(Optimize for size): 6,144 bytes
crtbegin.o: 1,001 bytes

> That would be no fun to debug trying to find the part that you wrote buried amongst layers of unknown wrappers.
Yeah, I trudged trough about 4kb trying to find the "printf("Hello World");" but gave up there.
Post 16 Jul 2010, 02:32
View user's profile Send private message Reply with quote
bitshifter



Joined: 04 Dec 2007
Posts: 796
Location: Massachusetts, USA
bitshifter 16 Jul 2010, 02:50
How about setting a breakpoint?
Thats what they are for...
Post 16 Jul 2010, 02:50
View user's profile Send private message Reply with quote
elf1984



Joined: 14 Jul 2010
Posts: 5
elf1984 16 Jul 2010, 08:16
can one of you here write a goot tutorial on FASM for beginners? it will help expand the usage very well.
Post 16 Jul 2010, 08:16
View user's profile Send private message Reply with quote
Tyler



Joined: 19 Nov 2009
Posts: 1216
Location: NC, USA
Tyler 16 Jul 2010, 10:13
I guess it would be nice if I or someone made a tut, by why? Not to be harsh, but what do I care if everyone on Earth uses Fasm or just me? I don't think Tomasz develops Fasm for popularity, so I don't think upgrades/bug-fixes(rarely needed) will speed up.

If you know how to use the basic Fasm directives(format PE console, entry ?, section ?), you could use tut's from Nasm.
Post 16 Jul 2010, 10:13
View user's profile Send private message Reply with quote
MHajduk



Joined: 30 Mar 2006
Posts: 6115
Location: Poland
MHajduk 16 Jul 2010, 10:16
bitshifter wrote:
Also you can learn a lot by reading ALL of the posts in this forum.
No joke, it took me two years but i learned a lot doing it.
What a Benedictine-like patience! Chapeau bas!ImageImage
Post 16 Jul 2010, 10:16
View user's profile Send private message Visit poster's website Reply with quote
elf1984



Joined: 14 Jul 2010
Posts: 5
elf1984 16 Jul 2010, 10:30
Tyler wrote:
I guess it would be nice if I or someone made a tut, by why? Not to be harsh, but what do I care if everyone on Earth uses Fasm or just me? I don't think Tomasz develops Fasm for popularity, so I don't think upgrades/bug-fixes(rarely needed) will speed up.

If you know how to use the basic Fasm directives(format PE console, entry ?, section ?), you could use tut's from Nasm.


Well, you may be right but i think the success of any software project in the world is the community and that`s what made PHP the best web programming language.

you can point me to good tut on NASM
Post 16 Jul 2010, 10:30
View user's profile Send private message Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 20451
Location: In your JS exploiting you and your system
revolution 16 Jul 2010, 10:40
bitshifter wrote:
Also you can learn a lot by reading ALL of the posts in this forum.
No joke, it took me two years but i learned a lot doing it.
Well I hope the things you learned were good things!
Post 16 Jul 2010, 10:40
View user's profile Send private message Visit poster's website Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.