Page 1 of 1

Popular Assemblers?

Posted: Thu Nov 27, 2008 4:24 pm
by undershirt
Hello, I've seen some ugly assembly code solutions from people like bitRAKE, Seph, and rayfil, and I want to try it. I've done assembly editting, but I've never written programs with it. What would be the best assembler to use for solving small problems like these? I kinda want to stick to low level assembly as well.

Re: Popular Assemblers?

Posted: Thu Nov 27, 2008 9:05 pm
by guana
I've been meaning to give assembly coding a try for a while now too, but I have no idea where to start.

Re: Popular Assemblers?

Posted: Fri Nov 28, 2008 4:47 am
by rayfil
I've seen some ugly assembly code solutions
UGLY??? :?
Some could be considered a work of art!!! 8-)

Anyway, the most used assembler is MASM (Macro Assembler from Microsoft) which has been around for some 25 years. The latest version can be obtained from Microsoft as part of the VC package.

An older version can be obtained as part of the MASM32 package (no direct relation to Microsoft except for that older version of the ml.exe assembler itself) which contain a host of examples and libraries designed specificly for assembly. See http://masm32.com/
The MASM32 project also has its own forum. See http://www.masm32.com/board/index.php

Becoming proficient with assembly programming can take as long as becoming proficient with any other programming language as a first attempt at computer programming.

Re: Popular Assemblers?

Posted: Sat Nov 29, 2008 6:31 am
by undershirt
Not all works of art are beautiful. :lol:

Thanks for the info on MASM and MASM32. I might try NASM too, which seems to be a popular one for linux users.

Assembly is really simple by the way. It's just scary because it's ugly :o

Anyway, I have another question. Why do you use assembly? Do you use it for speed, exercise, fun, or what?

Re: Popular Assemblers?

Posted: Sun Nov 30, 2008 2:44 am
by rayfil
Why do you use assembly? Do you use it for speed, exercise, fun, or what?
Programming has always been strictly a hobby for me. To be honest, I have never bothered learning any other programming language apart from assembly.

I did learn a bit of Fortran in the late 60's to be used on a time-share terminal where I worked (the monster IBMs were still the norm at the time). I learned whatever was available in my spare time within a week, wrote two short programs to help me with production and inventory control in my job, and was later "admonished" by my superior to do such work (in my own spare time :shock: :shock: :shock: ). The two short programs continued to be used for years!

In the mid-80s, I bought my first desk top (a TRS-80) in a garage sale. Whatever Fortran I could have remembered was useless so I started learning BASIC. I then got curious about assembly for that TRS-80, spent $4 on a book explaining the process, tried a few things which indicated a 100x+ speed increase, and threw BASIC to the garbage.

When I purchased my first PC-XT, you can guess which language I turned to. Although the 8086 set of instructions was very different from that of the TRS-80, the transition was easy. I stayed on 16-bit DOS programming until I learned through access to the internet that 32-bit programming was now the norm. The availability of Windows APIs also made a lot of processes so much easier. My latest "work of art" was a program (36 kb) for my son to use a lap top as a portable cash register. 8-)

For identical algos, speed and program size are what I consider the greatest advantages of assembly. There are also some assembly instructions which are simply not available in other languages.

BTW, if you have interest for assembly and maths, you can always visit my site at:
http://www.ray.masmcode.com/

Enjoy

Re: Popular Assemblers?

Posted: Wed Sep 11, 2013 11:23 pm
by whakamaru
There are free assemblers on line.
I have downloaded the flat-assembler, DOS version, but cannot get it to work properly. I write the text, run it through fasm and it compiles what looks like proper 32-bit code. But when I try to run that, I get an error message saying that MS 16-bit sub-system can't do that, and I can't work out what I am doing wrong.

Re: Popular Assemblers?

Posted: Tue Apr 21, 2020 9:46 pm
by DewayneGunter
MASM can also be used with VC++ have to install VC++ Express 2005 runtimes. you can link MASM in build properties of C++ project. or MASM32 uses the "TopGun" editor. NASM and FASM don't really "install" just unpack and use the program. I preferer MASM but that's me. the current Version in visual studio 2019 (actually C++ you link to MASM to write *.asm) and you have to download an asmSyntaxHighliter extension. but 64-bit ASM is perfect. and there is a couple "secret" 128-bit register. not really secret, I never used them but they are there