News:

Masm32 SDK description, downloads and other helpful links
Message to All Guests

Main Menu

So many assemblers?

Started by Jamesmackey, December 17, 2019, 04:12:18 AM

Previous topic - Next topic

Jamesmackey

I started assembly programming on an IBM mainframe (big iron rocks) the only assembler I know for IBM mainframe is IBM's
On the x86 there is a Variety of assemblers, MASM, FASM, YASM etc.
Can anyone tell me why the x86 has so different assemblers?
Just wondering.

James

FORTRANS

Hi,

   One possible scenario was that Microsoft's MASM
and Borland's TASM were commercial products that
cost Money.  That created shareware assembles,
such A86.  NASM was created as a free assembler.
Some people disliked some features of NASM, and
so wrote their "improved" assemblers like YASM and
FASM.

   Watcom had a commercial product that included
WASM, a MASM compatible assembler.  Watcom
made its product into a community supported
project and released its source code.  That led to
JWASM, UASM, and ASMC as people extended its
features.

   This from an observer, rather than an X66 assembler
writer of course.

Cheers,

Steve N.

avcaballero

I think FORTRANS has summed it up quite well. The good news is that you now have several free high quality compilers and you can choose the one you like best.  :thumbsup:

vitsoft

There was only one assembler for IBM S360/370 because hobby-programmers usually didn't have mainframe at home and because it was very well designed.

I tried to explain the reason for creating various x86 assemblers here:
https://euroassembler.eu/eadoc/#WhyYAA

hutch--

Hi James,

Welcome on board. Over time we have had a number of very experienced programmers who started back in the days of big iron. I am just old enough to have seen a new installation of an IBM system 360 when I was young but did not start on PCs until the Z80s of the early 1980s. The diversity of assemblers follows from the market that early x86 PCs came from, different companies produced their own tool chains in commercial competition with other companies.

Commercial interests still have an effect, MASM in its many flavours is specific to Microsoft OS versions, the GNU AS assembler (GAS) is primarily for Unix based systems, we have a couple of guys here who are developing the re-write of the Watcom assembler which targets people who don't want to use the Microsoft tool chain, FASM suits people who came from a Borland TASM background and it is a very good tool for its target market. NASM / YASM are designed to address a range of different hardware rather than a specific processor and there are others for different processors that I am not all that familiar with.

Jamesmackey

Good to know there is still some old IBM mainframer still exist. I  started as systems programmer in late 80ty on 4380(?) on MVS/XA. Those were good times.

I'm just started programming with x86 Assembly. Just as hobby, trying to keep my old brain of ticking.

Thanks for the info

Mikl__

#6
Hi, Jamesmackey!
Genesis 11:1-9
The Tower of Babel
  • Now the whole world had one assembler and a common speech.
  • As people moved eastward, they found a plain in Shinar and settled there.
  • They said to each other, "Come, let's make programs and bake them thoroughly." They used programs instead of bytes and double words, and tar for mortar.
  • Then they said, "Come, let us build ourselves a city, with a tower that reaches to the heavens, so that we may make a name for ourselves; otherwise we will be scattered over the face of the whole earth."
  • But Bill Gates came down to see the city and the tower the people were building.
  • Bill Gates said, "If as one people speaking the same assembler they have begun to do this, then nothing they plan to do will be impossible for them.
  • Come, let us go down and confuse their language so they will not understand each other."
  • So Bill Gates scattered them from there over all the earth, and they stopped building the city.
  • That is why it was called Babel — because there Bill Gates confused the language of the whole world. From there Bill Gates scattered them over the face of the whole earth.

I got the humour but don't want the attachment size.

HSE


    10. Then somebody noted that Bill was failing, every one understand all 32bits dialects, and think: Let's make 64 bits  :biggrin:

Equations in Assembly: SmplMath

daydreamer

Quote from: HSE on December 20, 2019, 02:01:36 AM

    10. Then somebody noted that Bill was failing, every one understand all 32bits dialects, and think: Let's make 64 bits  :biggrin:

but isnt SIMD 128bit,256bit,512bit in the uppermost Babylon tower
do not forget ancient times when the "assembler" was a human that coded machine code in data statements or hexadecimal on a microcontroller with help of a opcode chart,as kid that couldnt afford disc drive with macro assembler or cartridge with assembler and the need for speed was obvious with slow BASIC running on slow cpus

my none asm creations
https://masm32.com/board/index.php?topic=6937.msg74303#msg74303
I am an Invoker
"An Invoker is a mage who specializes in the manipulation of raw and elemental energies."
Like SIMD coding

qsr.nrwn

Quote from: vitsoft on December 17, 2019, 09:40:22 AM
There was only one assembler for IBM S360/370 because hobby-programmers usually didn't have mainframe at home and because it was very well designed.

I tried to explain the reason for creating various x86 assemblers here:
https://euroassembler.eu/eadoc/#WhyYAA

Quite an interesting site, took a 3-day detour in your site... A lot of useful resources