Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83; site pucc-i
Path: utzoo!watmath!clyde!burl!we13!ihnp4!inuxc!pur-ee!CS-Mordred!Pucc-H:Pucc-I:ags
From: ags@pucc-i (Seaman)
Newsgroups: net.arch
Subject: Re: Re: Complement Arithmetic - (nf)
Message-ID: <171@pucc-i>
Date: Wed, 1-Feb-84 12:19:19 EST
Article-I.D.: pucc-i.171
Posted: Wed Feb  1 12:19:19 1984
Date-Received: Tue, 7-Feb-84 10:30:56 EST
References: <918@minn-ua.UUCP>
Organization: Purdue University Computing Center
Lines: 31

Believe it or not, the following quotes come from the same article:

>  Having worked on several compilers on both styles of computers, I
>  would rather work with ones complement arithmetic.  There are many
>  tricks one can use to generate functional results (e.g. min, max functions)
>  without using conditional operators (read, tests and jumps).  This
>  leads to some rather fast code especially on computers like CDC Cybers.
>  . . .
>  As to why the Cray 1 has twos complement arithmetic, it's because Seymour
>  couldn't make a ones complement arithmetic section fast enough.  Twos
>  complement arithmetic is faster which is why it became so prevalent.
>  The other designers couldn't figure out how to make ones complement
>  arithemetic sections for their computers which were fast enough.

Apparently, the author likes ones complement because it is faster, even
though twos complement is faster.

It seems that the argument for ones complement has nothing to do with speed --
only with giving dedicated bit-twiddlers an opportunity to demonstrate their
prowess.  There is no problem in computing max and min functions without
conditional operators on the CDC Cyber 205 (a twos complement machine)...
You can find the max or min of a vector up to length 65,535 with exactly
ONE machine instruction.

-- 

Dave Seaman
..!pur-ee!pucc-k:ags

"Against people who give vent to their loquacity 
by extraneous bombastic circumlocution."