[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Comment on HAULONG
- To: common-lisp at SU-AI
- Subject: Comment on HAULONG
- From: Guy.Steele at CMU-10A
- Date: Thu, 08 Jul 1982 02:44:00 -0000
What do people think of the following suggested change? I suspect
MacLISP HAULONG was defined as it was because internally it used
sign-magnitude representation. EAK's suggestion is more appropriate
for two's-complement, and the LOGxxx functions implicitly assume
that as a model.
- - - - Begin forwarded message - - - -
Mail-From: ARPANET host MIT-Multics received by CMU-10A at 7-Jul-82 17:03:29-EDT
Date: Wed, 07 Jul 1982 17:52:00 -0000
From: Earl A. Killian <Killian at MIT-MULTICS>
Subject: haulong
To: Guy Steele at CMUa
I think the definition in the manual for haulong:
ceiling(log2(abs(integer)+1))
is poor. Better would be
if integer < 0 then ceiling(log2(-integer)) else ceiling(log2(integer+1))
I know of no non-conditional expression for this haulong (if you should
ever discover one, please let me know). The only numbers that this
matters for are -2^N. Amusingly enough, I found this exact bug in the two
compilers I've worked on (i.e. they thought it took 9 bits instead of 8
to store a -256..255).
- - - - End forwarded message - - - -