Re: What micros do you actually hate to work with?



Hi Joerg,

Certainly when you have to do things like wide multiplying when there is
no HW multiplier and there can only be 30-40 processor cycles alotted to
that part of the code.

actually compilers typically come with optimised math functions, apart
from variable read/write there is not much to improve there. The main
disadvantage of C is that it is human unfriendly, compared to a good
and flexible enough assemler with sufficiont library code at hand it
compares like a hieroglyph based language to an alphabet based one.
The x10 factor does not come out of what the compiler does alone,
I never said that; it comes mostly of what the human does using it.
Some assemblers are not as good as C - say, native RISC like
PPC - but others are. I am clearly biased to my VPA, which looks
much of the time like a 68k/CPU32 assembler, although it has
long since gone much beyond that, and can do complex things
which a C compiler would likely not be able to do (I put some examples
at
http://tgi-sci.com/vpaex/ ,

the macro complexity achievable
in combination with a DPS command_script can be seen in
vpasttbq.sa , the rest show just some examples, the .txt being
listings with generated ppc native code).

As for smaller projects, (several kilobytes of code), I can hardly
see how C can accellerate that, they will take between 2 and 4
weeks to program either way. If something can be done within
a day ot two in C and one does not have the libraries to match
that in assembly, well, then I would justify C, but we are talking
projects, not playing around.

The reason can often be summed up in a single symbol: $

I sure get that, my question is is really life that tough ... :-) :-)

Dimiter

------------------------------------------------------
Dimiter Popoff Transgalactic Instruments

http://www.tgi-sci.com
------------------------------------------------------

Joerg wrote:
Hello Dimiter,


The key words are "a good assembly programmer", I guess. They seem
to be very scarce... To add to your point, a good assembly programmer
will typically be able to beat by a factor of at least 10 a C written
code
in terms of speed and memory resources.


Certainly when you have to do things like wide multiplying when there is
no HW multiplier and there can only be 30-40 processor cycles alotted to
that part of the code.


But these are things which have been commented a lot.
The real question I have after reading this thread (not specifically
related to the posting I quote) is
"why do some people use a processor they hate to use?".


The reason can often be summed up in a single symbol: $

Then there are logistics reasons. It's tough to find 2nd sourcing for
anything but the lower-tier 8051 types. This is also one reason why I do
a lot of things analog with some logic chips sprinkled in.

--
Regards, Joerg

http://www.analogconsultants.com

.



Relevant Pages

  • Re: Pondering a new programming language
    ... I can't stand to use cc64 because, while I'm certainly not a proficient 6502 assembly programmer, I can produce better code than it can. ... Learning little tricks with my "firmware" project, such as always keeping the "row" in the x register while I use A and Y for other things certainly can't be done easily by a compiler. ... I've long said that the biggest problem with most assemblers (and ... design can emerge. ...
    (comp.sys.apple2.programmer)
  • Re: Help - Is it okay to put .obj files in Sources file?
    ... assemblers in any of the DDKs I have. ... because the compiler group repeatedly released updates or major ... been receiving on the unstability of Windows, the driver group ... any of the build macros, change the sources file, etc.? ...
    (microsoft.public.win32.programmer.kernel)
  • Re: Help - Is it okay to put .obj files in Sources file?
    ... assemblers in any of the DDKs I have. ... The driver tools are ... because the compiler group repeatedly released updates or major releases ... searched extensively on the DDK build tool sources file and can't ...
    (microsoft.public.win32.programmer.kernel)
  • Re: Windows Assembly
    ... I guess it's Windows Assembly time. ... graphics mode in Linux. ... Most assemblers providing Win32 API interfaces provide the header files you include to access these functions. ... the compiler should be smart enough to provide type checking even without the prototype. ...
    (alt.lang.asm)
  • Re: Dealing with ad hominem attacks in comp.programming
    ... values in the machine and relying on the compiler to do units analysis. ... (these are again compile time entities in quan) ... divide it by 10 and bump the exponent up 1 and vice versa. ... For si quantities eg millimeters, kilometers etc, the multiplier is ...
    (comp.programming)