2688|12

348

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

C语言符号求问 [复制链接]

 
本帖最后由 火火山 于 2016-7-2 09:32 编辑


请教一下,下面的程序代表什么意思?

expected ^= SSCS    (变量都是16字节的)

学习过C语言的,基础不够扎实

谢谢大家!
此帖出自51单片机论坛

最新回复

GPIOA->ODR^=0x80;    // 循环执行  让PA7 闪烁;  详情 回复 发表于 2016-7-8 14:51
点赞 关注
 

回复
举报

1234

帖子

4

TA的资源

纯净的硅(高级)

推荐
 
"x 自乘 y 个"  哎

^ 按位异或 若参加运算的两个二进制位值相同则为0,否则为1

异或运算符∧也称XOR运算符。它的规则是若参加运算的两个二进位同号,则结果为0(假);异号则为1(真)。即0∧0=0,0∧1=1,1∧1=0。如: 即071∧052,结果为023(八进制数)。
“异或”的意思是判断两个相应的位值是否为“异”,为“异”(值不同)就取真(1),否则为(0)。

下面举例说明∧运算符的应用:
  (1)使特定位翻转
  假设有01111010,想使其低4位翻转,即1变为0,0变为1。可以将它与00001111进行∧运算,即
  
结果值的低4位正好是原数低4位的翻转。要使哪几位翻转就将与其∧运算的该几位置为1即可。这是因为原数中值为1的位与1进行∧运算得0,原数中的位值0与1进行∧运算的结果得1。
  (2)与0相∧,保留原值
  如012∧00=012
  
因为原数中的1与0进行∧运算得1,0∧0得0,故保留原数。
  (3)交换两个值,不用临时变量
  假如a=3,b=4。想将a和b的值互换,可以用以下赋值语句实现:
  a=a∧b;
  b=b∧a;
  a=a∧b;
  可以用下面的竖式来说明:
即等效于以下两步:
  ① 执行前两个赋值语句:“a=a∧b;”和“b=b∧a;”相当于b=b∧(a∧b)。而b∧a∧b等于a∧b∧b。b∧b的结果为0,因为同一个数与本身相∧,结果必为0。因此b的值等于a∧0,即a,其值为3。
  ② 再执行第三个赋值语句:a=a∧b。由于a的值等于(a∧b),b的值等于(b∧a∧b),因此,相当于a=a∧b∧b∧a∧b,即a的值等于a∧a∧b∧b∧b,等于b。
  a得到b原来的值。
此帖出自51单片机论坛

赞赏

1

查看全部赞赏

 
个人签名天地庄周马;江湖范蠡船。
个性签名还是放QQ号吧,2060347305,添加说明EEworld好友
 
 

回复

2167

帖子

8

TA的资源

五彩晶圆(初级)

板凳
 
那是异或符号。。。
x=4(0100b)
y=2(0010b)
x^y=6(0110b)
此帖出自51单片机论坛
 
个人签名坐而言不如起而行
 
 

回复

6040

帖子

195

TA的资源

版主

4
 
这C语言中^是异或运算符
你说的x自乘y个那是其他语言里面的幂运算符,不是C语言里面的
此帖出自51单片机论坛
 
 
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

5
 
关于那个自乘的,就是不相信才上来问大家的
谢谢大家!明白了
此帖出自51单片机论坛
 
 
 

回复

2721

帖子

0

TA的资源

纯净的硅(中级)

6
 
^ 按位异或
此帖出自51单片机论坛
 
 
 

回复

4177

帖子

9

TA的资源

五彩晶圆(高级)

7
 
那个是个“异或”运算。实在不行,您可以这样,在vc中或者codeblocks中,写个与此相关的简单的代码验证就明白了。
此帖出自51单片机论坛

点评

这个方法赞  详情 回复 发表于 2016-7-2 08:05
 
 
 

回复

2700

帖子

0

TA的资源

五彩晶圆(初级)

8
 
还是去买本书看吧
此帖出自51单片机论坛
 
个人签名作为一个水军,就是尽量的多回帖,因为懂的技术少,所以回帖水分大,见谅!
EEWORLD开发板置换群:309018200,——电工们免费装β的天堂,商家勿入!加群暗号:喵
 
 

回复

366

帖子

1

TA的资源

一粒金砂(高级)

9
 
^=通常是寄存器赋值的时候取反用的
此帖出自51单片机论坛
 
 
 

回复

1025

帖子

1

TA的资源

纯净的硅(高级)

10
 
没学过C语言啊?
此帖出自51单片机论坛

点评

学过,符号有些记不请楚  详情 回复 发表于 2016-7-2 08:05
 
 
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

11
 
huaiqiao 发表于 2016-7-1 22:40
那个是个“异或”运算。实在不行,您可以这样,在vc中或者codeblocks中,写个与此相关的简单的代码验证就明 ...

这个方法赞
此帖出自51单片机论坛
 
 
 

回复

348

帖子

0

TA的资源

一粒金砂(高级)

12
 
lelee007 发表于 2016-7-2 01:42
没学过C语言啊?

学过,符号有些记不请楚
此帖出自51单片机论坛
 
 
 

回复

26

帖子

0

TA的资源

一粒金砂(中级)

13
 
GPIOA->ODR^=0x80;    // 循环执行  让PA7 闪烁;
此帖出自51单片机论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表