flat assembler
Message board for the users of flat assembler.

Index > Main > Hello all. just a few(dozen) quick questions...

Author
Thread Post new topic Reply to topic
iceman90289



Joined: 06 Oct 2008
Posts: 5
Location: California
iceman90289
So i want to learn asm (very badly)... and i understand that the syntax is different depending on your processor. How do i know if my processor is the 8086 or i386? Im guesing i386 because there is a folder called i386 on my hardrive...

so which syntax would i want to look into? Is there a syntax thats understood by all 32bit (and maybe even 64bit) processors?

also, is high level assembly a high level language? or does that just imply the use of macroinstructions and such?

thanks for taking the time to read this, i hope to hear from the comunity soon.
Post 02 Apr 2009, 17:41
View user's profile Send private message AIM Address MSN Messenger Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17663
Location: In your JS exploiting you and your system
revolution
All PCs today (i.e. last few years) are at a minimum Pentium 4 (or the equivalent AMD version). So yes you have a 386 style CPU.

64bit is still new on the scene so that is less guaranteed for you. But you also need a 64bit OS to take advantage of it else you get stuck in 32bit land.
Post 02 Apr 2009, 17:45
View user's profile Send private message Visit poster's website Reply with quote
iceman90289



Joined: 06 Oct 2008
Posts: 5
Location: California
iceman90289
hehehe. my computer was made in 2002... Smile

as far as 32 bit programs on a 64 bit machine goes, im fine with that for the time being. i dont plan on making anything on a 64 bit platform for a while...

thanks for your reply.
Post 02 Apr 2009, 17:50
View user's profile Send private message AIM Address MSN Messenger Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17663
Location: In your JS exploiting you and your system
revolution
As for syntaxes, CPUs don't read assembly, they all read the binary executables. So you are free to choose whatever assembler you like and all the CPUs will be able to run the resultant .exe file without problem.
Post 02 Apr 2009, 17:55
View user's profile Send private message Visit poster's website Reply with quote
iceman90289



Joined: 06 Oct 2008
Posts: 5
Location: California
iceman90289
ah okay. now i was looking at the documentation section of this website and saw a tutorial.pdf file. Is there a newer release of it somewhere? Or another pdf that covers FASM syntax?
Post 02 Apr 2009, 21:27
View user's profile Send private message AIM Address MSN Messenger Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17663
Location: In your JS exploiting you and your system
revolution
The fasm download has fasm.pdf included (the latest is 5-Aug-2007) which shows most of the fasm syntax.

Don't forget to look at the examples that are in the zip file also. That should get you started quite quickly.
Post 03 Apr 2009, 06:44
View user's profile Send private message Visit poster's website Reply with quote
Azu



Joined: 16 Dec 2008
Posts: 1159
Azu
iceman90289 wrote:
So i want to learn asm (very badly)... and i understand that the syntax is different depending on your processor. How do i know if my processor is the 8086 or i386? Im guesing i386 because there is a folder called i386 on my hardrive...
If your CPU is 8086, it will only be able to use these instructions.

If it's 80386, it will be able to use these (and everything before them as well).

iceman90289 wrote:
so which syntax would i want to look into? Is there a syntax thats understood by all 32bit (and maybe even 64bit) processors?
The syntax is specific to the assembler you use. It doesn't effect which CPUs the resulting binary will run on.

iceman90289 wrote:
also, is high level assembly a high level language? or does that just imply the use of macroinstructions and such?

thanks for taking the time to read this, i hope to hear from the comunity soon.

HLA greatly resembles HLLs.. see this hello world for example
Code:
program helloWorld;
#include("stdlib.hhf")
begin helloWorld;

  stdout.put( "Hello World" nl );

end helloWorld;    


It's not really, though. The similarities are mainly cosmetic. For the most part it will have the same pros and cons of other assembly languages, not the ones of high level languages..


revolution wrote:
64bit is still new on the scene so that is less guaranteed for you.
Really? I've used XP 64 since around 2005 and never had any problems with it. What's so new?? I don't think anyone big even MAKES 32bit CPUs anymore.. and all the major OSs released in the last half decade have native 64bit versions.. hell, there have been 64bit *nix OSs back at least as far as 1994, and 64bit supercomputers since the early 1960s!
Post 03 Apr 2009, 07:58
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 17663
Location: In your JS exploiting you and your system
revolution
Azu wrote:
Really? I've used XP 64 since around 2005 and never had any problems with it. What's so new?? I don't think anyone big even MAKES 32bit CPUs anymore.. and all the major OSs released in the last half decade have native 64bit versions.. hell, there have been 64bit *nix OSs back at least as far as 1994, and 64bit supercomputers since the early 1960s!
Yeah, really, there are still a lot of working CPUs without 64bit support. The OP stated that the system used is from 2002 so that won't have 64bit support. All of my current PCs and laptops do not support 64bit, with the latest bought in 2006 with a Core Duo processor (no 64bit in that).
Post 03 Apr 2009, 08:13
View user's profile Send private message Visit poster's website Reply with quote
Azu



Joined: 16 Dec 2008
Posts: 1159
Azu
revolution wrote:
Yeah, really, there are still a lot of working CPUs without 64bit support. The OP stated that the system used is from 2002 so that won't have 64bit support.
Oh. 2002. Off by 1 year lol (x86 64bit CPUs for desktop PCs didn't really become truly mainstream until 2003, unless you count the Itanium, which XP had a 64bit version for way back in 2001.. but that wasn't x86).


revolution wrote:
All of my current PCs and laptops do not support 64bit, with the latest bought in 2006 with a Core Duo processor (no 64bit in that).
Okay, if you say so.. Laughing
I guess Intel IS usually late with the big things (x86 64bit, dual core, onchip memory controllers, etc)...
Post 03 Apr 2009, 08:20
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger MSN Messenger ICQ Number Reply with quote
DOS386



Joined: 08 Dec 2006
Posts: 1901
DOS386
iceman90289 wrote:
So i want to learn asm (very badly)... and i understand that the syntax is different depending on your processor.


NO.

Quote:
How do i know if my processor is the 8086 or i386?


1. Open your PC and look
or
2. Some CPUID program

Quote:
Im guesing i386 because there is a folder called i386 on my hardrive...


Have Windoze XP ? It doesn't run on 80386, and even less on 8086 Laughing

Quote:
hehehe. my computer was made in 2002...


Then you probably have Pentium 3 or Pentium 4-xxx32

Quote:
so which syntax would i want to look into?


No syntax. For DOS you will start with 8086, and later maybe look into 80386 and more (Pentium/MMX/SSE). For XP, you will start with 80386 manuals.
Post 05 Apr 2009, 03:28
View user's profile Send private message Reply with quote
rugxulo



Joined: 09 Aug 2005
Posts: 2341
Location: Usono (aka, USA)
rugxulo
Azu wrote:
revolution wrote:
Yeah, really, there are still a lot of working CPUs without 64bit support. The OP stated that the system used is from 2002 so that won't have 64bit support.
Oh. 2002. Off by 1 year lol (x86 64bit CPUs for desktop PCs didn't really become truly mainstream until 2003, unless you count the Itanium, which XP had a 64bit version for way back in 2001.. but that wasn't x86).


I think x86-64 wasn't even introduced except in 2003 (Opteron servers).

Quote:

revolution wrote:
All of my current PCs and laptops do not support 64bit, with the latest bought in 2006 with a Core Duo processor (no 64bit in that).
Okay, if you say so.. Laughing
I guess Intel IS usually late with the big things (x86 64bit, dual core, onchip memory controllers, etc)...


I don't know why Intel did that. Supposedly they implemented x86-64 in 2004 in some of their Xeon servers, but home users didn't get it until mid 2006 or so (Core 2).
Post 14 Apr 2009, 20:14
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-2020, Tomasz Grysztar. Also on GitHub, YouTube, Twitter.

Website powered by rwasa.