??? 09/30/08 20:36 Read: times |
#158704 - gray to bin Responding to: ???'s previous message |
Here is a n-1 step loop to convert from gray to binary
unsigned char gray_to_bin8(unsigned char n) { unsigned char i,rev; for (i = 0x80,rev = 0x40; i > 1; i >>= 1, rev >>= 1) { if (n & i) { n ^= rev; } } return n; } Or with one temporary less: unsigned char gray_to_bin8(unsigned char n) { unsigned char i; for (i = 0x80; i > 1;) { if (n & i) { i >>= 1; n ^= i; } else { i >>= 1; } } return n; } |
Topic | Author | Date |
Gray Code To Binary 8051 | 01/01/70 00:00 | |
huge table | 01/01/70 00:00 | |
RE: Take a pen and paper | 01/01/70 00:00 | |
Here are a few places to look... | 01/01/70 00:00 | |
What for? | 01/01/70 00:00 | |
Algorithm | 01/01/70 00:00 | |
Gray Code To Binary 8051 | 01/01/70 00:00 | |
Post it | 01/01/70 00:00 | |
Yes! | 01/01/70 00:00 | |
Shifting ? | 01/01/70 00:00 | |
Gray Code To Binary 8051 | 01/01/70 00:00 | |
Posting times | 01/01/70 00:00 | |
Gray Code To Binary 8051 | 01/01/70 00:00 | |
2^n - 1 is not fast for large n | 01/01/70 00:00 | |
Ouch | 01/01/70 00:00 | |
Gray Code To Binary 8051 | 01/01/70 00:00 | |
hardware | 01/01/70 00:00 | |
gray to bin | 01/01/70 00:00 | |
asm | 01/01/70 00:00 | |
Gray Code To Binary 8051![]() | 01/01/70 00:00 |