On 2015-03-01 06:14, Jon Elson wrote:
On 02/28/2015 04:59 AM, Johnny Billquist wrote:
Not that Unix was ever written in B anyway, but I
believe that B did
>> exist for the PDP-7.
>
I looked up the instruction set of the PDP-7, ghastly little machine,
basically
a PDP-8 extended to 18 bits. Stored the return address in the first word
of the subroutine, just one accumulator, conditionals were done with
a skip instruction, so you did this skip / jump structure for conditional
branches, unless the conditional code was only one instruction. All the
stuff I disliked on the PDP-8. One oddity was there was a 13-bit address
field in the instruction, but it was possible to have more than 8K words
of memory on the machine. Another oddity is there were both
ones-complement and twos-complement add instructions. I guess
the designer just couldn't decide which arithmetic representation to use?
The SKIP paradigm isn't so bad, in my mind. Sometimes it's really handy.
Return address in the first word is also not so bad, unless you want to
recurse, or have reentrant code.
I haven't properly looked at the 18-bit machines, but I suspect the 13
bit address field is not much different from the 7 bit address field of
a PDP-8 instruction.
The ones and twos complement is the most interesting part. I suspect
that is because they really had decided that twos complement was the
future. However, the DEC 18-bit series really started with the PDP-1,
and all follow on machines were somewhat backwards compatible, and the
PDP-1 was actually a ones complement machine. The only one DEC built
that way. So all followon 18-bitters would have to keep the capability,
I guess.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol