首頁 發表: 美術繪圖 | 美術設計 | 攝影 | 熱門標籤 美術討論: 美術工作 | 美術比賽 | 展覽活動 | 美術相關 | 一般討論 | 美術同好 CG 討論 :: Photoshop | Painter | 3D 行動 | AMP

【 立即註冊 】 : 更改個人資料 : : 登入

會員名稱: 登入密碼: 保持登入

C/C++ bit-op test_bit,set_bit,clear_bit like linux kernel

發表新主題 回覆主題 討論區 Windows, Linux, Perl, PHP, C/C++, Driver, Web 理論、應用、硬體、軟體

| 1頁, 共1
發表人 人氣點閱:600
Type



繪圖畫廊設計藝廊
攝影相簿留言板
最愛收藏分類標籤
暱稱: Type
註冊: 2002-11-30
發表: 7614
來自: vovo2000.com
V幣: 856339
@ 1F
C/C++ bit-op test_bit,set_bit,clear_bit like linux kernel 2016-09-15 08:04

C/C++ bit-op test_bit,set_bit,clear_bit like linux kernel



You might love the bit operation APIs in "bitops.h" @ Linux kernel driver and 'd like to use them as well in user space C/C++ applications and UEFI / DOS tools.

Here comes 32-bit bit operations examples like the following:

代碼:


/* Set __SHIFT bit */
void set_bit(uint8_t __SHIFT, uint32_t *var_addr)
{
    *(var_addr) |= ( 0x1UL << __SHIFT)
}

/* Clear __SHIFT bit */
void clear_bit(uint8_t __SHIFT, uint32_t *var_addr)
{
    *(var_addr) &= ~( 0x1UL << __SHIFT)
}

/* Test __SHIFT bit */
uint8_t test_bit(uint8_t __SHIFT, uint32_t *var_addr)
{
    return (*(var_addr) >> __SHIFT) & 0x1UL;
}

void main(void)
{

    uint32_t a = 0x0000feef;


    set_bit( 8,  &a)
    printf("%s: 0x%x\n", __func__, a)
    printf("%s: test bit 8 == %d\n", __func__, test_bitƘ, &a))

    clear_bit( 8,  &a)
    printf("%s: 0x%x\n", __func__, a)
    printf("%s: test bit 8 == %d\n", __func__, test_bitƘ, &a))

    return;
}

=============================

$ ./a.out

main: 0xffef
main: test bit 8 == 1

main: 0xfeef
main: test bit 8 == 0


________________

美術插畫設計案子報價系統 v0.1 Beta 版
爪哇禾雀





資訊相關理論、技術、管理、應用、產品等
發表新主題 回覆主題
一般討論
發表:美術繪圖、插畫設計
新聞、活動、評論、公告
最近 10 則討論
2017 愛孩子大雞大利
By Type R:0 V:18 02/23
求教!關於畢業製作的問題
By comwi R:3 V:2781 02/18
蠟筆小新紙娃娃
By Irene R:1 V:14699 02/18
誠徵創業夥伴
By sincere R:0 V:226 02/07
最近 10 則討論
陰陽師-鮭魚祭
By 妖幻狐 R:0 V:28 02/22
學生穗姬
By WeiYi R:0 V:45 02/22
七龍珠:18號
By naga R:0 V:48 02/22
(小女孩)人物畫之練習
By honda R:0 V:40 02/22
溫泉妹子
By 柯萍 R:0 V:29 02/22
夢幻玫瑰 夢幻玫瑰
By comwi R:0 V:48 02/21
卡 春卡 春
By comwi R:0 V:39 02/21
只加水練習
By 天城風 R:0 V:42 02/21
最近 10 則討論
呂浴珊-金工創作展
By 金車文藝中心 R:0 H:147 02/09
游文志-油畫展
By 金車文藝中心 R:0 H:132 02/09
【幻畫時空】繪畫聯展
By 金車文藝中心 R:0 H:383 02/05