新聞中心

IAR stm8 判斷位的方法

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏
寫(xiě)程序,用到位判斷,開(kāi)始時(shí)候,我是這么寫(xiě)的
if (a& 0x02) == 1)
{
}
else
{

}
a的第二位如果為1,則執(zhí)行if中的程序,否則執(zhí)行else中的程序
但編譯完以后,事情的發(fā)展卻殘酷的背離了我的初衷。
結(jié)果改成以下語(yǔ)句后,事情才得到了平息。
if ((a>> 1& 0x01)== 1)
{

}
else
{

}
先把位移1位,然后在和“1與操作”,這個(gè)時(shí)候,就可以得到想要的結(jié)果了
原因可能是由于c語(yǔ)言的語(yǔ)法造成的,但具體的原因由于沒(méi)有看書(shū),也不知道,寫(xiě)這個(gè)的目的是給同樣困惑的小盆友們一個(gè)提示,在遇到這樣的情況,試試以下的方法。


關(guān)鍵詞: IARstm8判斷

評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉