[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: life extension of old computers thanks to opensource Contiki
In article <43e9c237$0$11067$e4fe514c@news.xs4all.nl>,
Peter de Vroomen <peterv[at][spamblock]jaytown[dot]com> wrote:
>> Learning to code in ARM assembler is by no means a useless skill, as it
>> is directly applicable to modern-day engineering tasks.
>
>No, of course not, but optimizing for a RISC processor is simply more
>challenging than optimizing for a CISC processor. If you want to learn
>assembly, it's best to start with a CISC processor, learn the basics, and
>then step up to the RISC processor.
For optimization difficulty, RISC or CISC makes little difference;
superscalar or not is the big difference, and both CISC and RISC
machinese are superscalar nowadays. So even leaving branches out of
it, you have to maintain multiple parallel cycle counts. Add the fact
that memory access isn't constant (depending on cache) and you have a
real bear of a problem.
PowerPC assembler -- or ARM, for that matter, -- is much easier to
learn than x86 simply because x86 is still a 32-bit patch on a 16-bit
extension of an 8-bit machine, and its instruction set shows it. The
paucity of registers doesn't help either, though the direct-to-memory
instructions do.
>And about 'RISC architecture'... Of course these days the differences
>between RISC and CISC are pretty muddy.
About the only constant in RISC seems to be the lack of memory addressing
modes for any instructions other than loads and stores. That is, you
can't do arithmetic or branch based on a memory location.
--
There's no such thing as a free lunch, but certain accounting practices can
result in a fully-depreciated one.