1's comp

ben bfranchuk at jetnet.ab.ca
Sat May 21 22:13:17 CDT 2016


On 5/21/2016 8:56 PM, Jon Elson wrote:
> On 05/21/2016 09:34 PM, Toby Thain wrote:
>> On 2016-05-21 10:26 PM, ben wrote:
>>> On 5/20/2016 7:19 PM, Sean Conner wrote:
>>>
>>>>>
>>>>> Hehe, what is a long long? Yes, you are totally right. Still, I assert
>>>>> that C is still the defacto most portable language on Earth. What
>>>>> other
>>>>> language runs on as many OS's and CPUs ? None that I can think of.
>>>>
>>>>   A long long is at least 64-bits long.
>>>
>>> Only if you get rid of char pointers you are portable.
>>> I like 1's compilent because it handles shifting properly.
>>> using 1's compilment unsigned would be 1 bit less in size
>>> not 1 bit more the C standard seems to make it.
>>
>> Don't underestimate the headache of handling two zeroes.
>>
> Right, on the LINC, if you compared positive zero to negative zero, it
> would not set the equals flag!
> I have no idea how many tests had to be put in the code for that, but
> anyplace where the two values could be zero, you had to check for that
> special case.
>
> Jon

I favor TWO zeros over 2's compliment 0x80... 0 number that is always a 
minus.
0 and 1 for logic word size only.
The big thing is to know your hardware, one machine does not fit all.
Ben.





More information about the cctalk mailing list