找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 8736|回复: 0
打印 上一主题 下一主题
收起左侧

c语言中的BIT含义

[复制链接]
跳转到指定楼层
楼主
ID:81203 发表于 2015-5-26 19:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
bit是C51编译器的一种扩充数据类型,利用它可定义一个位标量,但不能定义位指针,也不能定义位数组。它的值是一个二进制位,不是0就是1,类似一些高级语言中的Boolean类型中的True和False。事实上,bit和数据类型为int,char等具有许多相同特性。   1. 值域:    以char为例。Char为8位一个字节的数据类型,取值范围为 -128到+127。而bit只有1位,只能表示0和1两种值。通常bit定义的变量作为一个标志位用。   2.类型定义:    例如一个数据为25,那么它就可以定义为char型、int型等。因为他们都在自己的值域内。同样一个在自己值域的数0和1就可以定义为bit型。Bit可以指定函数返回值的类型, 如bit display(),也可对别的类型的数据进行数据强制转换,如x=(bit)y, (y为char,int型等)。此时,x的值便为0或1。那么如何确定x是0还是1呢? 现在看下面例题:  
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定义了一个函数返回值类型 bit lcd_busy(),一个变量 result 和 一个运算表达式 P0&0x80 .由此可以bit的用法和char、int等相同。那么resulit的值如何确定呢? 这个和运算表达式 P0&0x80有关。如果表达式 P0&0x80的运算结果为非零的值,那么resulit的值为1,否则为0。



分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表