segmented memory models

Chuck Guzis cclist at sydex.com
Mon Aug 4 18:03:58 CDT 2008


On 4 Aug 2008 at 14:15, Rich Alderson wrote:

> It's not that the PDP-10 has "oddball pointers", but rather that
> "address" is not the same data type as "(byte) pointer".  I assume that
> something similar is true on the CDC 6x00 family, but I haven't looked
> at one since September, 1970, before I dropped the Compass programming
> class at UT Austin. 

I never used C on a 6600 (or any other CDC machine for that matter), 
but yeah, the addressing granularity is a 60-bit word.  Oddly, that 
didn't seem to affect the efficiency of languages such as COBOL that 
rely heavily on character data.  In fact, COBOL on a 6600 was one of 
the fastest implementations of any machine of the time.  Character 
move loops for example, were typically coded (except by "brain dead" 
programmers) to move 10 characters per loop pass--and duplexed load 
units made it easy to write an in-stack loop where an instruction 
issued every cycle and memory was kept busy.

I have no idea how the implementors of 6000-series C decided to 
fashion their character pointers.  I can well imagine that they were 
"weird".

But byte (whatever you want to call a byte) addressability is just an 
artificial convenience anyway if your CPU has a wider datapath than a 
byte. The CDC STAR, for example, had bit addressability.  

Cheers,
Chuck



More information about the cctalk mailing list