NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
bit.hpp 文件参考

位操作函数 更多...

bit.hpp 的引用(Include)关系图:

浏览该文件的源代码.

函数

constexpr int popcount64 (const uint64_t x) noexcept
 计算64位整数中1的个数
constexpr int clz64 (uint64_t x) noexcept
 计算64位整数前导零的个数
constexpr int popcount32 (const uint32_t x) noexcept
 计算32位整数中1的个数
constexpr int clz32 (uint32_t x) noexcept
 计算32位整数前导零的个数
constexpr int popcount (const uintptr_t x) noexcept
 计算整数中1的个数
constexpr int countl_zero (const uintptr_t x) noexcept
 计算整数前导零的个数
constexpr int countl_one (const uintptr_t x) noexcept
 计算整数前导1的个数
constexpr int countr_zero (const uintptr_t x) noexcept
 计算整数尾随零的个数
constexpr int countr_one (const uintptr_t x) noexcept
 计算整数尾随1的个数
constexpr int lowest_set_bit_pos (const intptr_t x) noexcept
 获取最低设置位的位置,从0开始
constexpr int highest_set_bit_pos (const intptr_t x) noexcept
 获取最高设置位的位置
constexpr bool parity32 (uint32_t x) noexcept
 计算32位整数的奇偶性
constexpr bool parity64 (uint64_t x) noexcept
 计算64位整数的奇偶性
constexpr bool parity (const uintptr_t x) noexcept
 计算整数的奇偶性
constexpr int bit_width (const uintptr_t x) noexcept
 计算表示整数所需的最小位宽
constexpr uintptr_t bit_floor (const uintptr_t x) noexcept
 获取不大于x的最大2的幂
constexpr uint64_t bit_ceil (const uintptr_t x) noexcept
 获取不小于x的最小2的幂
constexpr bool has_single_bit (const uintptr_t x) noexcept
 检查整数是否为2的幂
constexpr uint32_t rotate_l32 (const uint32_t x, const int s) noexcept
 32位整数循环左移
constexpr uint32_t rotate_r32 (const uint32_t x, const int s) noexcept
 32位整数循环右移
constexpr uint64_t rotate_l64 (const uint64_t x, const int s) noexcept
 64位整数循环左移
constexpr uint64_t rotate_r64 (const uint64_t x, const int s) noexcept
 64位整数循环右移
constexpr uintptr_t rotate_l (const uintptr_t x, const int s) noexcept
 整数循环左移
constexpr uintptr_t rotate_r (const uintptr_t x, const int s) noexcept
 整数循环右移
constexpr uintptr_t bit_extract (const uintptr_t x, const int pos, const int len) noexcept
 从整数中提取指定位段
constexpr uintptr_t bit_insert (const uintptr_t x, const uintptr_t bits, const int pos, const int len) noexcept
 向整数中插入指定位段
constexpr uint32_t reverse_bits32 (uint32_t x) noexcept
 反转32位整数的位顺序
constexpr uint64_t reverse_bits64 (uint64_t x) noexcept
 反转64位整数的位顺序
constexpr uintptr_t reverse_bits (const uintptr_t x) noexcept
 反转整数的位顺序
constexpr uintptr_t mask_from_to (const int from, const int to) noexcept
 生成从from到to的位掩码

变量

constexpr byte_t POPCOUNT_TABLE [256]
 popcount查找表

详细描述

位操作函数

此文件提供了各种位操作函数的实现,包括位计数、前导零计数、位旋转、位反转等。 支持32位和64位平台,使用查表法和位运算技巧优化性能。

在文件 bit.hpp 中定义.