"Paul McGuire" <[EMAIL PROTECTED]> wrote:

| "H J van Rooyen" <[EMAIL PROTECTED]> wrote in message
| news:[EMAIL PROTECTED]
| > "Paul McGuire" <[EMAIL PROTECTED]> wrote:
| >
| > | Even downer-and-dirtier, you could approximate 30 with 32, 59 with 64,
| and
| > | 11 with 8, and do bit-shifting instead of multiplying:
| > |
| > | def darkness(img,x,y):
| > |     return  (RedVal(img,x,y) << 5) + (GreenVal(img,x,y) << 6) +
| > | (BlueVal(img,x,y) << 3)
| > |
| > |
| > | -- Paul
| >
| > *grin* - a man after my own heart! - how do you multiply by ten? - shift,
| save a
| > copy, shift twice more and add the copy...
| >
| > - Hendrik
| >
| Sadly, my timeit results show this saves only a little time, and
| shift-copy-shiftsomemore-and-add is even slower then just doing the original
| floating point multiply.  The biggest win is in prelookup of Image.GetXXX
| functions.
|
| -- Paul

I was not seriously suggesting this for use in python on a pc - its the sort of
rubbish you do on a small embedded machine that has a reduced instruction set
and no multiplier...

- Hendrik



-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to