free性丰满hd毛多多,久久综合给合久久狠狠狠97色69 ,欧美成人乱码一区二区三区,国产美女久久久亚洲综合,7777久久亚洲中文字幕

0
問答首頁 最新問題 熱門問題 等待回答標(biāo)簽廣場
我要提問

20120903請(qǐng)舉例 volatile 非用不可的幾個(gè)情況

20120903

請(qǐng)具體舉例 volatile 非用不可的幾個(gè)情況,不用的volatile可能問題,

最好說明單片機(jī)類型,有代碼說明最好

不要再解釋volatile的含義,不要貼出網(wǎng)絡(luò)上有的解釋

例子多多為善。
提問者:jjdwe 地點(diǎn):- 瀏覽次數(shù):1784 提問時(shí)間:05-01 02:18
我有更好的答案
提 交
11條回答
烈陽異丙醇 05-05 05:43
頂一個(gè)。。。
asd011 05-02 17:24
沒有這樣的例子。
hfjydz2013 05-10 17:37
屬于共享變量,而編譯器不知道的.

比如,IO輸入狀態(tài)寄存器. 如果不加聲明,在編譯器看來,它只屬于一個(gè)普通的RAM; 而實(shí)際上這個(gè)RAM是與外部事件共享的(外部電壓改變).
7347574353q 05-04 12:21


請(qǐng)繼續(xù),


等例子說明,


不然怎么能應(yīng)用自如,


不然怎么能看出代碼問題?
77uwfsdf 05-10 03:50
volatile 是針對(duì)“代碼優(yōu)化”的,即告訴編譯系統(tǒng)“此變量可能自變,注意其優(yōu)化處理”。

如果完全不考慮優(yōu)化,則不用volatile也無妨。
60user193 05-02 05:08
在特定的應(yīng)用中必須要用volatile,現(xiàn)在就等大家舉應(yīng)用的事例了
testd018 05-02 10:34
會(huì)在中斷中被修改的全局變量,裸奔時(shí)最常見。
多線程共享的全局變量。
胡政鵬測試_6 05-02 20:52
很好的東西 非常不錯(cuò)
yweyrwyds 05-06 17:10


比如程序?qū)⒛臣拇嫫骺梢杂米靼l(fā)送數(shù)據(jù)寄存器(比如UART、I2C的數(shù)據(jù)發(fā)送寄存器TXBUF)。分兩次由兩個(gè)變量a和b分別賦值給這個(gè)寄存器TXBUF:{TXBUF = a;TXBUF = b;},每次把數(shù)據(jù)發(fā)送給外部(比如PC或者I2C器件),并且該狀態(tài)寄存器在程序其他地方?jīng)]有被賦值。如果不加volatile并且開啟了優(yōu)化,那么編譯器可能會(huì)默認(rèn)你的寄存器TXBUF的值只需要被賦值一次。在這種情況下,編譯器可能會(huì)把你第一次a賦值給寄存器TXBUF的指令a=TXBUF;去除。你在接收端就只能接收到b的數(shù)據(jù),而a的數(shù)據(jù)已經(jīng)被編譯器優(yōu)化刪掉了。
當(dāng)然不同編譯器,指令集不一樣,優(yōu)化處理的方式方法也有差異。并且同一個(gè)編譯器也有不同的優(yōu)化級(jí)別選項(xiàng)??赡苣氵x低級(jí)別的優(yōu)化選項(xiàng),上述問題就可以避免。
yjfkpyu 05-08 12:13
11樓說了 一個(gè) 例子不錯(cuò),

再等其他的 實(shí)例。

相信經(jīng)過幾個(gè)實(shí)例的說明,理解會(huì)更深刻。
wang222221 05-04 02:14
這個(gè)的話就是前后的一種比較嗎
撰寫答案
提 交
1 / 3
1 / 3