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."