Преглед изворни кода

Add bitpop16() in util.c.

tags/v1.9
tmk пре 11 година
родитељ
комит
94b4fba6e6
2 измењених фајлова са 11 додато и 2 уклоњено
  1. 9
    1
      common/util.c
  2. 2
    1
      common/util.h

+ 9
- 1
common/util.c Прегледај датотеку

{ {
uint8_t c; uint8_t c;
for (c = 0; bits; c++) for (c = 0; bits; c++)
bits &= bits -1;
bits &= bits - 1;
return c; return c;
/* /*
const uint8_t bit_count[] = { 0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 }; const uint8_t bit_count[] = { 0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 };
*/ */
} }


uint8_t bitpop16(uint16_t bits)
{
uint8_t c;
for (c = 0; bits; c++)
bits &= bits - 1;
return c;
}

// most significant on-bit - return highest location of on-bit // most significant on-bit - return highest location of on-bit
uint8_t biton(uint8_t bits) uint8_t biton(uint8_t bits)
{ {

+ 2
- 1
common/util.h Прегледај датотеку

*/ */


#ifndef UTIL_H #ifndef UTIL_H
#define UTIL_H 1
#define UTIL_H


#include <stdint.h> #include <stdint.h>






uint8_t bitpop(uint8_t bits); uint8_t bitpop(uint8_t bits);
uint8_t bitpop16(uint16_t bits);
uint8_t biton(uint8_t bits); uint8_t biton(uint8_t bits);


#endif #endif

Loading…
Откажи
Сачувај