Variable Word length CPU

Gil Carrick gilcarrick at comcast.net
Sun Nov 6 10:15:02 CST 2005


...
> Kinda. The IBM 1401, 1440, 1410, but they used an extra bit 
> in each (6 bit) called a word mark rather than blow off a digit. It was 
> designed to hold alphabetic info as well as doing decimal math.

That should have said "in each byte (6 bits)..."

> Umm what about the sign bit? 

Since the decimal digits only took 4 bits and the word mark was a 7th bit
there were two bits to carry the sign. This machine was actually designed to
be an off-line card reader/ punch/ print processor using tapes to offload
the biger 7094 type machines. So it was very card oriented. The other two
bits represented the "zone" punches off the card. I can't remember which
combination(s) was considered a negative number, but it was the same for any
machine reading cards.

The instruction to read a card was "R" and it read into a fixed location (0,
IIRC). The instructions were also variable length, varying from 1 to 8 bytes
long. An instruction could leave off the addresses (indicated by a word mark
on the next byte) and the addresses would be inferred to continue from the
previous instruction. The 1401 machine had 16KB MAX. memory, so saving a 3
byte address was a big deal. 

Gil



More information about the cctalk mailing list