c语言与或非,单片机avr c语言位运算 与或非 异或逻辑 运算介绍 详解
位运算是指按二进制位进行的运算。在单片机中位运算通常用于I/O端口的输入输出控制和逻辑判断。
C语言提供的位运算符有:
运算符含义功能
&按位与如果两个相应的二进制位都为1,则该位的结果值为1;否则为0。
|按位或两个相应的二进制位中只要有一个为1,该位的结果值为1。
∧按位异或若参加运算的两个二进制位同号则结果为0(假)异号则结果为1(真)
~取反~是一个单目(元)运算符,用来对一个二进制数按位取反,即将0变1,将1变0。
<
>>右移表示将a的各二进制位右移N位,移到右端的低位被舍弃,对无符号数,高位补0。
与逻辑:
将PA口的第0位清0(即最低位输出低0v电平),其余位保持不变: PORTA口应同‘11111110’进行与运算
二进制:11111110 的十六进制为:0xFE,C语言代码:PORTA=PORTA&0xFE;一般采用c语言的“&=‘运算符,通常写成
PORTA&=0xFE; 执行此语句后,PORTA口的第0位将输出低电平。
或逻辑:
将PA口的第7位置1(即最高位输出高电平)其余为保持不变,PORTA应与‘10000000’进行或运算
即c语言:PORTA=PORTA|0x80 ;采用或赋值运算符,通常写成 PROTA|=0x80 ; 二进制‘10000000’的十六进制是0x80;
非逻辑:
c语言:PORTA~=0x0F;//将0x0F=‘00001111‘取反后 '11110000‘=0xF0 赋值给PORTA,通常和其他逻辑运算符一起使用
异或逻辑:
将PA口的第7位翻转,PORTA^=0x80,即执行此语句一次,PORTA口的第7位状态变化一次,由0变1,或由1变0,可以周期性的控制一个灯的亮灭。
移位操作:
判断PA口的第7位是否为0,c语言 if (PINA&(1<<7)==0) 1<<7 结果为0x80,也可写为 if (PINA&0x80)==0)
c语言与或非,单片机avr c语言位运算 与或非 异或逻辑 运算介绍 详解相关推荐
- 常见位操作及运算应用举例:1,C语言中位运算符异或“∧”的作用2,异或运算的作用3,(与运算)、|(或运算)、^(异或运算)
1 C语言中位运算符异或"∧"的作用: 异或运算符∧也称XOR运算符.它的规则是若参加运算的两个二进位同号,则结果为0(假):异号则为1(真).即0∧0=0,0∧1=1,1∧1=0 ...
- matlab中逻辑非运算,MATLAB:图像的与、或、非、异或逻辑运算(、|、~、xor)
图像的与.或.非.异或逻辑运算涉及到了&.|.~和xor符号 close all;%关闭当前所有图形窗口,清空工作空间变量,清除工作空间所有变量 clc; clear all; I=imrea ...
- 单片机c语言或运算,单片机avr c语言位运算 与或非 异或逻辑 运算介绍 详解
位运算是指按二进制位进行的运算.在单片机中位运算通常用于I/O端口的输入输出控制和逻辑判断. C语言提供的位运算符有: 运算符 含义 功能 & 按位与 如果两个相应的二进制位都为1,则该位的结 ...
- 51单片机c语言除法符号,51单片机之C语言-4.4运算符及表达式
原标题:51单片机之C语言-4.4运算符及表达式 4.4 及 前面三节实际是讲如何定义一个数据类型,所谓数据类型其实就是不同存储空间的形状,也就是不同单元格的组合方式.既然定义了数据类型,我们的目的当 ...
- c语言io口置1,AVR C语言编程的小技巧-IO口置位
avr AVR C语言编程的小技巧-IO口置位 给单片机IO口置位是编程用的比较多的操作,这是我在学习C语言编程中的一点小小心得,希望大家觉得有用! AVR 单片机的IO口是标准的双向端口,首先要设置 ...
- 怎么用C51语言实现50ms延时,单片机入门-C51语言实现简单的红绿LED交通灯控制
原标题:单片机入门-C51语言实现简单的红绿LED交通灯控制 视频教程如下: 本文介绍了用C51语言实现十字路口交通灯控制: 四个路口各有红.绿2个LED,模拟交通灯的控制,即东西走向的灯变红,南北走 ...
- c语言画曲线程序,单片机 LCD C语言画弧线的程序,哪位高手会
当前位置:我的异常网» 单片机 » 单片机 LCD C语言画弧线的程序,哪位高手会 单片机 LCD C语言画弧线的程序,哪位高手会 www.myexceptions.net 网友分享于:2013-0 ...
- at89s51数码管秒表c语言程序,基于AT89C51单片机的一个2位的LED数码显示作为“秒表”设计【基于单片机系统的00-99s的定时器】...
基于AT89C51单片机的一个2位的LED数码显示作为"秒表"设计[基于单片机系统的00-99s的定时器] 工程技术学院 课程设计 题 目:用单片机AT89C51设计一个2位的LE ...
- C语言---函数介绍详解
生活的全部意义在于无穷地探索尚未知道的东西,在于不断地增加更多的知识--左拉 文章目录 前言 函数 模块化程序设计方法 函数的定义 函数的分类 函数定义角度 库函数 自定义函数 函数形式角度 无参函数 ...
- c语言d打开文件夹,BAT批处理之文件与文件夹操作代码(附xcopy命令详解)
批处理中的文件.文件夹操作,xcopy命令的用法. 一,建bat文件自动执行复制,删除命令. 例1:复制cd.dll文件至windows\system32的bat文件内容: copy cd.dll % ...
最新文章
- 驭下术:如何让下属老实听话?用这3招,让你不怒自威
- JAVA_OA(十四):SSM练手项目bug-JSP页面传递参数的编码问题
- Python词云学习之旅
- 使用winform来递归实现资源管理器
- java swing进度条_Java Swing创建自定义闪屏:在闪屏上添加Swing进度条控件(转)
- kerberos验证_SQL Server中的服务主体名称和Kerberos身份验证概述
- 25岁该有多少存款?数据分析带你揭露打工人的工资真相
- L - All in All(子序列)
- nginx css 304 导致图片丢失_Nginx面试三连问:如何工作?负载均衡策略有哪些?如何限流?...
- Linux笔记19.postfix邮件服务器配置安装
- 传说中人生必去的50个地方
- 在app上查看开发代码
- Linux命令学习:Linux中more和less命令以及查找用法
- 对抗样本(三)FGSM
- 【CV2】Python中cv2使用小窗口显示高分辨率图片
- 联想用u盘重装系统步骤_练习联想使用u盘重装win7教程
- 通过scheme协议启动app
- wordpress企业网站模板
- 《Graph Neural Network with Heterophily》阅读笔记
- vscode+CRA+TypeScript+eslint+prettier+stylelint+husky+lint-staged完整版配置