If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

I have not written assembly for well over 18 years. The only obvious differences are that it started of as 8 bit, then moved on so that the latest versions support 64 bit processing.

Most current machines are running at 32 bit, so if I was hiring a guy to write for me I would probably want 64 to "future proof" it a little?..............to put it (VERY) crudely, it is a bit like motor cars............most do much the same in first gear............so what do you want to do with your assembly? these days I associate the language with tools and utilities, rather than applications, but that is probably just me.

There are some very cool people on this site who have probably forgotten more about coding than I ever knew. I am sure they could give you a much better answer but it would give them a clue if you suggested an environment or purpose?

Sorry, cannot help you much more than that

If you cannot do someone any good: don't do them any harm....
As long as you did this to one of these, the least of my little ones............you did it unto Me.
What profiteth a man if he gains the entire World at the expense of his immortal soul?

its not the coding that is better or worse, it just takes better advantage of new machines.

i have forgotten much, but not because i actually KNEW much, more because i tend to forget a lot. i still give it a try.

the basic difference between the different bit rates is the size of the machine code chunks the processor can operate at a given cycle. 64 bits is double the size as 32 bits, there you go. using the "same" instructions, more data can be moved, and more instructions can be run by the processor in the same time.

32 bits are 4 bytes of data, commonly referred to as a word. a 64 bit machine can / (could) process double the amount of data at any cycle, if the assembly code fits the machine. for example, a s390 move command takes 6 bytes or one and a half word. so on a 32bit machine it will take 2 cycles to execute, on a 64bit machine its only one cycle.

i heard users of itanium machines complain that 32 bit software runs slower on the new machines, than on old ones. i guess the reason is the software has to be assembled for and designed specifically for a 64bit machine. assembly is fast but there are thousands of possibilities to screw this advantage

to see with precision which specific instructions are (dis)advantageous for processors, take a look at a good instruction reference, as in assembly like nowhere else you can see a lot from the machine code a instruction generates.

i dont know what i dont know! how should i know! i'm like the blue fish in disneys nemo film.

yet one thing dimly shines through the ages:

in s390 architecture, a 4 byte quartet is called a word by definition, i'm quite sure about this, since also the ebcdic character set is larger. there a double word is 8 bytes / 64 bits long. i did not know its different in x86, sorry about it