bit manipulation frustration

Darrell Gallion darrell at dorb.com
Sun Jul 23 09:24:36 EDT 2000


Here's some helpful utils I use when working with binary data. 
They aren't well tested because I use a 'C' version of these same uitls.
Although I regret doing any of them in 'C'.

http://www.dorb.com/darrell/utils/hexConvert.py
Converts binary to hex like so:
0x3031 0x3233 0x3435
And back to binary. Nice for debugging, since I hate reading octal.

http://www.dorb.com/darrell/utils/bitShift.py
This is unsigned bit shifting and rotate.


--Darrell

----- Original Message ----- 
From: "Courageous" <jkraska1 at san.rr.com>
Newsgroups: comp.lang.python
To: <python-list at python.org>
Sent: Sunday, July 23, 2000 1:30 AM
Subject: Re: bit manipulation frustration


> 
> > > > get it?)
> > > No..
> 
> The image is runs of values where 'X' represents a 16 bit RGB value.
> It's like this:
> 
> XX
> XXXX
> XXXXXX
> ...
> 
> >From 2 to 44 to 2 again.
> 
> However, upon load, this needs to be converted to
> a bitmap like this (where "-" is black, and X
> is a 16 bit RGB value):
> 
> ---------------------XX---------------------
> --------------------XXXX--------------------
> -------------------XXXXXX-------------------
> ------------------XXXXXXXX------------------
> -----------------XXXXXXXXXX-----------------
> ----------------XXXXXXXXXXXX----------------
> ---------------XXXXXXXXXXXXXX---------------
> --------------XXXXXXXXXXXXXXXX--------------
> -------------XXXXXXXXXXXXXXXXXX-------------
> ------------XXXXXXXXXXXXXXXXXXXX------------
> -----------XXXXXXXXXXXXXXXXXXXXXX-----------
> ----------XXXXXXXXXXXXXXXXXXXXXXXX----------
> ---------XXXXXXXXXXXXXXXXXXXXXXXXXX---------
> --------XXXXXXXXXXXXXXXXXXXXXXXXXXXX--------
> -------XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-------
> ------XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX------
> -----XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-----
> ----XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX----
> ---XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX---
> --XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX--
> -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-
> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
> -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-
> --XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX--
> ---XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX---
> ----XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX----
> -----XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-----
> ------XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX------
> -------XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-------
> --------XXXXXXXXXXXXXXXXXXXXXXXXXXXX--------
> ---------XXXXXXXXXXXXXXXXXXXXXXXXXX---------
> ----------XXXXXXXXXXXXXXXXXXXXXXXX----------
> -----------XXXXXXXXXXXXXXXXXXXXXX-----------
> ------------XXXXXXXXXXXXXXXXXXXX------------
> -------------XXXXXXXXXXXXXXXXXX-------------
> --------------XXXXXXXXXXXXXXXX--------------
> ---------------XXXXXXXXXXXXXX---------------
> ----------------XXXXXXXXXXXX----------------
> -----------------XXXXXXXXXX-----------------
> ------------------XXXXXXXX------------------
> -------------------XXXXXX-------------------
> --------------------XXXX--------------------
> ---------------------XX---------------------
> 
> This is an isometric tile, where the only data
> stored in the file is the diamond part of X's
> in the middle. The -'s are all predictable, so
> there's no reason to store them.
> 
> Ergo, I'm looking for the best way to create
> a bitmap from something that isn't one.
> 
> 
> 
> C/
> -- 
> http://www.python.org/mailman/listinfo/python-list





More information about the Python-list mailing list