找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10042|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

c語言中的BIT含義

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:81203 發(fā)表于 2015-5-26 19:31 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
bit是C51編譯器的一種擴(kuò)充數(shù)據(jù)類型,利用它可定義一個位標(biāo)量,但不能定義位指針,也不能定義位數(shù)組。它的值是一個二進(jìn)制位,不是0就是1,類似一些高級語言中的Boolean類型中的True和False。事實上,bit和數(shù)據(jù)類型為int,char等具有許多相同特性。   1. 值域:    以char為例。Char為8位一個字節(jié)的數(shù)據(jù)類型,取值范圍為 -128到+127。而bit只有1位,只能表示0和1兩種值。通常bit定義的變量作為一個標(biāo)志位用。   2.類型定義:    例如一個數(shù)據(jù)為25,那么它就可以定義為char型、int型等。因為他們都在自己的值域內(nèi)。同樣一個在自己值域的數(shù)0和1就可以定義為bit型。Bit可以指定函數(shù)返回值的類型, 如bit display(),也可對別的類型的數(shù)據(jù)進(jìn)行數(shù)據(jù)強(qiáng)制轉(zhuǎn)換,如x=(bit)y, (y為char,int型等)。此時,x的值便為0或1。那么如何確定x是0還是1呢? 現(xiàn)在看下面例題:  
bit lcd_busy()
{   
     bit result;  
     LCD_RS = 0;   
     LCD_RW = 1;  
     LCD_EN = 1;  
     delayNOP();
     result = (bit)(P0&0x80);   
     LCD_EN = 0;
     return(result);
  }  
在上面例題中我們可以看到,bit定義了一個函數(shù)返回值類型 bit lcd_busy(),一個變量 result 和 一個運(yùn)算表達(dá)式 P0&0x80 .由此可以bit的用法和char、int等相同。那么resulit的值如何確定呢? 這個和運(yùn)算表達(dá)式 P0&0x80有關(guān)。如果表達(dá)式 P0&0x80的運(yùn)算結(jié)果為非零的值,那么resulit的值為1,否則為0。



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表