求解微控制器中C編的幾個指令temp1和temp

2021-03-10 01:49:57 字數 1112 閱讀 2798

1樓:匿名使用者

temp << 1;計算 temp 左移一位的值,語句結束後temp沒有變化

temp <<= 1相當於temp=temp << 1也就是 計算 temp 左移一位的值,並把版這個值賦給tempif(!(p1 & temp)) 就是 計算 p1 與 temp按位權

與運算的值,然後判斷這個值是否為0

if(!(p1 & temp))

else

2樓:匿名使用者

temp <<= 1是指temp左移1位,再送回temp,相當於temp=(temp<<1)。

temp <<=1是將temp左移1位。

if(!(p1 & temp)) 是指如果p1的值和temp的值相與專的結果為0,就執行if語句後屬面的操作。

3樓:寂寞

temp << 1 是把temp左移1位

temp <<= 1 是把 temp << 1 的結果賦值給 temp

if(!(p1 & temp)) 是判斷p1與temp按位與的結果是否不為0

微控制器c語言程式設計語句temp=temp<<1和temp=temp<<1+1怎麼理解 ,他們有什麼區別?

4樓:匿名使用者

temp=temp<<1表示將temp左移一位;temp=temp<<1+1則是將temp左移一位後加1。左移的含義:比如temp=00001111b(二進位制),那麼temp<<1的結果是00011110,也就是temp的資料位依次向左移動一位,最高位可以認為被捨棄,最低位由0補齊。

這是基本的位運算,可以參考相關的c語法書目。

5樓:匿名使用者

temp = temp << 1 右移一位,相當於乘以2

temp=temp<< 1+1 +運算優先順序高於<<,本句相當於temp=temp<<2,右移2位,相當於乘以4

6樓:匿名使用者

temp=temp<<1 等同於 temp = temp * 2;

temp = temp<<1 + 1 等價於 temp = temp * 2 + 1;

微控制器中斷返回指令,微控制器組合語言指令中中斷返回指令RET和RETI有什麼不同?

程式結構錯誤。mov th0,65536 50000 256 定時50毫秒 mov tl0,65536 50000 256mov ie,82h setb tr0 主程式,到這,就沒有了,這那行?timer 下面就是 定時器中斷服務程式mov th0,65536 50000 256 初脈衝50ms m...

關於微控制器中的jc指令,關於微控制器中的JC指令

閣下首先搞清楚cjne a,25,1的含義,它的含義有三點 1.當a等於25時,執行下一句 2.當a不等版於25時,跳轉到權ne1語句執行 3.要注意當a不等於25時,a必定大於25或者小於25,如果a小於25,則不僅要跳轉到ne1執行,還要給cy標誌位置一,如果a大於25,則僅僅要跳轉到ne1執行...

微控制器中調整指令daa是什麼意思

35h 27h 5ch 累加器 a 5ch經過 da a 累加器 a 92 da a 的指令是累加器十進位制調整.答案是制 a 62h da a 是bcd加法後的調整 兩個baibcd碼相加du 35 27 62add a,27後 a 5bh da a 進行調整就zhi 成了 62h 一定是兩個bc...