TI中文支持网
TI专业的中文技术问题搜集分享网站

指令代码小问题

举例,下面这两个指令结果有什么区别吗?

TACTL = TASSEL_1 + MC_1;     // ACLK, up mode

TACTL |= TASSEL_1 + MC_1;

Thanks

Shi JianHua:

个人感觉+就是或,你第二个没有啥意义

Ling Zhu2:

 你好,

TACTL 是一个16位的寄存器,TASSELx在里面占两位,MCx在里面占两位。

第一句是对整个16位寄存器赋值,除了TASSELx和MCx,其余位都被清零。

第二句用或等赋值则不会影响其余的比特位。

Haiqi Bian:

回复 Ling Zhu2:

那第二句可以改寫為TACTL |= TASSEL + MC;這樣嗎?謝謝

赞(0)
未经允许不得转载:TI中文支持网 » 指令代码小问题
分享到: 更多 (0)