Andrew Lentvorski wrote:
Actually, I would argue that they fit themselves around human assembly
coders.
I'd say the mainframes fit themselves around human assembler
programmers. I think the 8080 was about the last one that was clear and
easy to understand. Indeed, RISC specifically is designed to not work
that way.
Indirect addressing instructions were very much for humans as compilers
and linker/loaders can shuffle things around and use direct register
jumps/transfers.
I don't think so. I think when memory is as fast as CPU, having complex
addressing modes works well. When CPUs need multiple levels of memory
cache to run efficiently, it's easy to do several CPU operations to
calculate an address.
Look at the original FORTRAN compilers. You could write
X(I), X(I+3), X(I+J), but not X(I+J+3)
because that last one didn't correspond to an indexed address mode, so
it would turn into multiple assembler instructions, making it slower.
--
Darren New / San Diego, CA, USA (PST)
"That's pretty. Where's that?"
"It's the Age of Channelwood."
"We should go there on vacation some time."
--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg