Because everything else uses a small subset of its functionality.
Name:
Anonymous2009-03-21 7:38
Because computers speak assembly as their natural language. No matter how hard you try, you are not going to be better in a foreign language than in your native language.
Name:
Anonymous2009-03-21 7:41
It's like, a computer sees a C for loop, and thinks, ``oh, a for loop, so I have to put a label, let's see, here, a jmp here and put the instructions in-between''. When you feed it ASM, it thinks ``oh, this label goes here, this jmp here, okay''. At least that's how I explained it to my son.
because asm is written by humans, which means that it can be tweaked and optimised specifically for the given task.
other languages are translated into asm by the computer before they are able to be run, which means that their optimisations and such are alot more generalised.
if someone who sucks at asm writes a program it may be slower than the compiler generated code. it depends on the author's skill level
Not going into much detail, because compilers suck ass. Really. They are terrible.
Can you think about some trivial optimization? Well, chances are no compiler implemented it.
Most compilers rock at completely useless optimizations, the kind of high level stuff that can be fixed in the source language already (common subexpressions, dead code, algebraic simplifications...) but their code generation is an embarrassing joke.
Name:
Anonymous2009-03-21 15:50
>>17
and you probably use all those trivial optimizations to make your program 0.00001% faster, while ignoring the higher level optimizations that could make it 50% faster.
Name:
Anonymous2009-03-21 16:40
Why assembler is faster?
Why yes, assembler IS faster.
Name:
Anonymous2009-03-21 17:48
Just because GCC is a shitty compiler doesn't mean other compilers don't suck. Intel C++ and MSVC++ are far superior at code generation and optimization, especially with with their profile guided optimizers.
assembler is the ONLY language that your computer speaks - ofcourse it's the fastest.
your computer has no idea how to run Python or Java code without it being translated into assembler
good luck succesfully optimising your x86 asm code since the processor is just goin to further optimize the microcodes. optimization for the most part these days is pointless and obsolete
Name:
Anonymous2009-03-21 21:03
>>24
Sure, if you're looking for a flimsy excuse to not do any work. The fact remains that handwritten assembly is often several times faster than anything you can get out of a C compiler.
Name:
Anonymous2009-03-21 21:28
>>25
have fun handwriting your assembly i prefer to type it into my computer
Name:
Anonymous2009-03-21 21:59
I'm still raging over ``assembler'' being used to refer to assembly. I hope this is a troll thread.
Name:
Haxus the Great!HAXUS.HBkU2009-03-21 22:01
>>27
But the assmebly is used to compiler assmelber code, you dummass.
>>20
I don't know about ICC but MSVC is, although much better than Gucci, still pretty bad compared to what a human brain can do. There do not seem to be any compilers out there that can optimize register usage across the whole program, something that can greatly improve speed and space.
I've seen lots of little "WTF" moments when decompiling MSVC-compiled code. Things like clearing a register, then clearing it again even though it could never change between the two, useless pushes/pops, etc.
Name:
Anonymous2009-03-22 0:13
>>34 not seem to be any compilers out there that optimize register usage across the whole program
it might have something to do with the fact that such a problem is NP-Harrd