News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

The Future of ASM Development

Started by ecube, March 20, 2009, 05:01:03 PM

Previous topic - Next topic

ecube

Quote from: PBrennick on March 22, 2009, 10:01:16 PM
It should not have been a surprise to anyone - the abandonment of the high-level directives - because we were warned this was coming as early as ml.exe, version 8.0.

In fact, Microsoft accepted input to get the general feelings of programmers. Evidently, the majority was against keeping them.

Paul


this is really disapointing, high level directives makes code clean looking, and easy to read for individuals who are familiar with other programming languages. Microsoft should of asked user of this forum what to do,we're the most active with their compiler not trolls on usenet or C/C++ geeks who occasionally use inline. I guess with cloud computing being shoved down everyones throat by the big wigs, it won't matter much anyway in a few years :\

PBrennick

The fact that Microsoft was polling for opinions _was_ brought to this forum and discussed extensively. Some of us approached MS. They went with the larger user base obviously. What financial contribution do most assembly language programmers make to MS? None. There dividends comes from the C++ crowd and although I do not agree with nor like their decision; I can definitely understand it.

Paul
The GeneSys Project is available from:
The Repository or My crappy website

jj2007

Microsoft Macro Assembler Reference
Directives Reference


x64

Conditional Control Flow
...
example:

.REPEAT
Generates code that repeats execution of the block of statements until condition becomes true. .UNTILCXZ, which becomes true when CX is zero, may be substituted for .UNTIL. The condition is optional with .UNTILCXZ.

PBrennick

Yeah, we know that some of it made it through. They told us what might disappear and what might stay. Basically, only those that would fit into highly optimized in-line asm code was kept.

Thanks, though.
Paul
The GeneSys Project is available from:
The Repository or My crappy website

tetsu-jp

I'm working at a 68000 assembler- more easy than 8086-type assembler.

What's differrent is the way it works internally- none of that you are maybe used to see from source codes that are available.

Key feature are certain code tables, not only for the opcodes, but also the allowed addressing modes, and even for the operand parsing!

the software is written for Windows, using VB/.NET

yet i do not know about an emulator (the assembler is intend for hardware projects), but this also would be possible!

there is no existing tool that i would want to use: too old, to obscure, non-Windows, or incompatible license.

I've started with some real-mode assembly in 1997, then VC++ inline assembly in 2001.
since 2004 RISC assembly as well!

However, i have taken a break from Windows assembly, almost completely for 5 years.

While it has it's uses, professionals claim that C is simply faster to write: http://picsystems.multiply.com/photos/album/11/this_software_has_bugs#14

So what's the future of ASM developement?

-there is more freedom of expression (tough once you know it, it can also be spelled in C).
-optimization, which is not possible for compiler (this has become less relevant).

I would say, C as first language is no good, it is obscure, and restricted.
once you know assembly, you can use C to write it!
but it must be learned in order to write good C code.

high-level directives- NO GOOD. if you consider all the MMX/SSE extensions, and the new 64bit CPUs, as well IA64 (Itanium), together with high level directives you get 1000 instructions to remember, or even more.
and it makes people create their own high-level macro extensions- no one can really understand them, so it will result in dead code.
I say this because i have seen numerous high-level extensions on the Amiga, and none of them survived/is used right now anymore.

I've read in 2007 that x86 is already a dead platform, and will be replaced completely with x64, and IA64, within a few years.
It will only be supported in compatibility mode, especially future CPUs will eventually only provide slow compatibility mode.

yet. x86 still works on my new AMD processor, and it is not too bad, or noticeable slow (many applications are still x86).

but it (x86) is a questionable platform for major ASM developements (for instance, OS, game engine).

do people really care about executeable size anymore? often trivial softwares require 100MB and more.

I'd recommend assembly, not C, as first language, maybe in this order:

HTML
BASIC/VB
ASSEMBLY
C++/C#

dedndave

If you read that in 2007, they only have 1 more year to go - lol
I think x86 will be around as long as the majority of computers run it
Not everyone out there can afford the newest computer
Those who say these kinds of things are trying to perpetuate sales
They want everyone to upgrade to the new hardware, new OS, new software
It happens over the course of time, just not as fast as they'd like
My computer is a pentium 4 (dual) at 3 ghz
I hope to get at least 3 more years out of it
Even after that, I would expect it to be usable