Language-specific CPUs was Re: uIEC/SD == AWESOME!
Brent Hilpert
hilpert at cs.ubc.ca
Thu Jan 1 16:17:43 CST 2009
Allison wrote:
>
> C was written for or about the PDP-11. Just about all the C addressing
> modes and basic OPs are native for pdp11 addressing and many instructions.
While there seems to be a popularly-held association between C and the PDP-11,
I believe the suggestion of design influence is overstated.
The funky addressing operations (post/pre-inc/dec,indirection,etc.)
of C were present in the earlier B language, which ran on other machines
before the 11. Dennis Ritchie actually specifically addresses this in his
history of the C language: http://cm.bell-labs.com/cm/cs/who/dmr/chist.html,
see the "More History" section).
A primary change from B to C was the addition of byte types and a further
abstraction of pointers to facilitate byte-addressed machines.
Porting the early unix to the 11 may have helped instigate this (see Ritchie's
History of C again), but byte-handling and addressing were nothing
unique to, or uniquely beneficial to, the 11. (If it hadn't been done for the 11
it would have been done for another port.)
While C and the PDP-11 were a nice fit, I'd suggest the correlation is more one of
common trends of the time influencing both, than (either) being written or designed
for the other.
More information about the cctalk
mailing list