On 08/22/2015 06:26 PM, Paul Koning wrote:
 than the usual rule).

I recall the "integer multiply" feature (i.e. optional) available
on the 6000.  IXi  Xj*Xk, but it didn't provide any more precision
than the usual unnormalized double-precision multiply  DXi  Xj*Xk,
but saved some time spent fiddling with exponent fields.

???  Never heard of any such thing.  IXi Xj*Xk is a defined opcode,
but it's simply a synonym for Dxi Xj*Xk.

Well, we were always the guinea pig for QSEs in SSD. It's not described in the Cyber 70 docs, but we had Cybers fitted with the option. It did make its way into the 170s however:

In 60456100A, re: the 42 instruction (page 4-24, second column):

"This instruction is used in multiple-precision floating-point calculations. This instruction also provides for integer multiplication capabilities where both operands have an exponent value of plus or minus zero and neither coefficient has been normalized. The integer result sent to Xi is *48 bits with a 60-bit sign extension* (emphasis mine)."

A minor change that saved perhaps a few cycles.

Another oddball thing was then then-new Cyber 72/73 CMU. An interesting beast, but not present on the 74.

It was possible initially to write code with the 46xxx CMU instruction in first 2 parcels of an instruction word. All Cyber 73 CMU instructions were 60 bits, you could pack a call to a subroutine to do the equivalent thing in the lower 30 bits for the 74. Worked pretty cool until the 170. There, different models supported different subsets of CMU instructions (or not at all)--and attempting to execute one not implemented was greeted with an error stop. The 170 people really screwed that one up.

--Chuck

Reply via email to