News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change

Main Menu

ASM Book recommendations and some other random questions

Started by PseudoSsiah, July 23, 2012, 08:50:33 PM

Previous topic - Next topic

PseudoSsiah

Sorry, I'm sure I can search the forum a bit and I promise you I will. I just wanted to say "Hello" and prove that I'm not a bot. I have read most of Assembly Language Step By Step 2nd Edition by Jeff Duntemann, which I enjoyed but just wasn't doing enough coding. I thought maybe the 3rd edition would be better and I am a Linux user, so I figured maybe it'd be up my alley.

So, do you look down on Linux users? I do have multiple Windows machines, but feel more comfortable in Linux (Slackware and Gentoo mostly).

Are there a lot of differences between coding or the two? If I learn on one, will it be very difficult to switch over?

And of course, what are some books you would recommend? I have done some C++ and Java, Java lead to some Android stuff, but then I had to do a bunch of work in C#, which is kind of what lead me here. So I'm not new to programming, but I do enjoy owning good books on languages. I enjoy things with projects and puzzles, like the Head First series (Java/C#/SQL) and a few other books I picked out from college courses. But I still do enjoy the thicker, here's a whole bunch of stuff that you'll probably not use for years kinda books too. Makes me long for the day when coding is like talking to me. I'm still like a toddler. I can understand a lot of it, but I still have problems speaking it.

I'll begin my lurking now, thanks.

jj2007


clive

I've generally observed that assembler has a pretty consistent form across may operating systems and processors. The syntax can vary, the assembler functions/directives change, and the operating system calls are quite different. However if you grasp the function of one, you'll be able to pick up the others and follow examples/templates.

The critical take away is the use of registers, stacks, and memory access/indexing methods.

The GNU tools, including the assembler, run just fine under Windows or Linux. If you have the source, and compiler/assembler you can port your tools to any platform you choose. If you plan to run code under multiple operating environments try to abstract the OS functions so the bulk of the code is agnostic to them. If you plan to run code on multiple architectures consider sticking with C/C++, etc. focusing assembler efforts to areas you've determined to be time critical.

Now obviously the MASM and Win32 API stuff is heavily tied to the Windows OS and GUI, and DOS which preceded it. The board is rather MASM/Windows centric, but many of the older member have some pretty broad experience across a wide range of systems and chips.
It's a pity the clowns in Washington DC don't understand the Constitution as well as Edward Snowden

Vortex

Hi PseudoSsiah,

You can also check SolAsm supporting Linux :

http://oby.ro/sol_asm/sol_asm_download_bin.htm

brethren

if you are thinking about learning to program linux using assembly language
http://www.amazon.co.uk/Introduction-Intel-Assembly-Language-Programming/dp/1466470038/ref=pd_sim_b_42
it's the first book that i've found that is aimed at 64bit programming.

alternately you can get jeff duntemanns assembly language step by step if 32bit programming is where your interests lie
http://www.amazon.co.uk/Assembly-Language-Step-Step-Programming/dp/0470497025/ref=pd_sim_b_9