/*測試變數某一位是否為『
1』,是返回真,否返回假,
num為待測試的數,
bit為位數,其值從0到
7,下同*/
uchar bittest(uchar num,uchar bit)
;return num&~bit_value[bit];
uchar bitset(uchar num,uchar bit) /*
設定某一位*/
uchar bit_value=;
return num|bit_value[bit];
uchar bitcpl(uchar num,uchar bit) /*
取反某一位*/
uchar bit_value=;
if(num>>bit&0x01==1)
return num&~bit_value[bit];
else
return num|bit_value[bit]; /*
以下主程式演示,呼叫時,可以直接給出數值,也可以給出變數名*/
void main(void)
uchar xx=0xfe;
xx=bitset(xx,0);
printf("the set out is %x/n",xx);
printf("the clr out is %x/n",bitclr(255,0));
printf("the test out is %x/n",bittest(0xff,0));
printf("the cpl out is %x/n",bitcpl(0x00,7));
以上是以tc為例編寫的主程式,各函式在其它c語言中也一樣可用。
位運算的一些操作
按位與 操作通常用作將一個數的某些位清零或保留某些位操作 例如 把a的高8位清零 a 0000000011111111 也就是將a 255操作之後,就會實現將數字a的高8位位清零了 異或 操作的用途 將某些特定的位翻轉 例如對數0x10100001的第2和第3位翻轉操作,那麼 可以0x1010000...
一些檔案操作函式
fileage 函式 返回檔案已存在的時間 fileclose 命令 關閉指定的檔案 filecreate 命令 用指定的檔名建立新檔案 filedatetodatetime 函式 將dos的日期格式轉換為delphi的日期格式 fileexists 函式 檢查檔案是否存在 filegatattr ...
C opencv C 一些操作函式
1.fread size t fread void buffer,size t size,size t count,file stream buffer 是讀取的資料存放的記憶體的指標 可以是陣列,也可以是新開闢的空間,buffer就是一個索引 size 是每次讀取的位元組數 count 是讀取次數...
位運算的一些基本操作
原部落格 一 邏輯運算子 1.位與運算 1 運算規則 位與運算的實質是將參與運算的兩個資料,按對應的二進位制數逐位進行邏輯與運算。例如 int型常量4和7進行位與運算的運算過程如下 4 0000 0000 0000 0100 7 0000 0000 0000 0111 0000 0000 0000 ...
一些位運算
該篇文章會持續更新將遇到的位運算在這進行解釋 1.按位與 運算 運算規則 0 0 0 0 1 0 1 0 0 1 1 1 例如 8的二進位制 00001000 5的二進位制 00000101 8 5 0000 0000 轉換成十進位制就是0 與運算 的特殊用途 1 清零。如果想將一個單元清零,即使其...