找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2565|回复: 5
收起左侧

逻辑运算和位运算的区别和读法怎么看

[复制链接]
ID:288745 发表于 2018-3-10 15:20 | 显示全部楼层 |阅读模式
各位大佬,这是我在书上看到的代码,但是我读不出来,特向你们请教一下逻辑运算符是怎么读的
void piaymusic(void)
{
uInt16 i,j,k;
while(song_long[ i]!=0||song_tone[ i]!=0)
{
for(j=0;j<song_long[ i]*20;j++)
{
beep=~beep;
for(k=0;k<song_tone[ i]/3;k++);
}
这是那段代码的一部分,song_tong和song_long函数它前面分别有提供两串数字,我的主要问题是不知道这些逻辑运算符怎么读,函数的意思也不太理解,往各位帮我看看。
回复

使用道具 举报

ID:288745 发表于 2018-3-10 15:38 | 显示全部楼层
这里的beep=~beep我也不懂,beep不是蜂鸣器的引脚吗?怎么按位取反?
回复

使用道具 举报

ID:231545 发表于 2018-3-11 17:04 来自手机 | 显示全部楼层
"||"逻辑或,还有"&&"逻辑与,"!"逻辑非。beep原来是0取反后为1
回复

使用道具 举报

ID:212149 发表于 2018-3-11 17:57 | 显示全部楼层
void piaymusic(void)
{
uInt16 i,j,k;
while(song_long[ i]!=0||song_tone[ i]!=0)//当song_long[i]不等于0或者song_tone[ i]不等于0时进入while循环
{
for(j=0;j<song_long[ i]*20;j++)
{
beep=~beep;//beep按位取反
for(k=0;k<song_tone[ i]/3;k++);
}
回复

使用道具 举报

ID:290585 发表于 2018-3-12 00:09 | 显示全部楼层
void piaymusic(void)
{
uInt16 i,j,k;
while(song_long[ i]!=0||song_tone[ i]!=0)//当song_long[i]不等于0或者song_tone[ i]不等于0时进入while循环
{
for(j=0;j<song_long[ i]*20;j++)
{
beep=~beep;//beep按位取反
for(k=0;k<song_tone[ i]/3;k++);
}
回复

使用道具 举报

ID:158375 发表于 2018-3-12 11:57 | 显示全部楼层
多看书学习。。。。。。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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