音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

很簡單的KEILC 程序,高手指點(diǎn)

作者:lseek 欄目:單片機(jī)
很簡單的KEILC 程序,高手指點(diǎn)
下面的兩端程序,功能是一樣的,為什么運(yùn)行結(jié)果不同

#define    OUTV_MAX    45

uint pressure(uint val)
{
    uint    AAAA;
    uint    temp_data;
    
    AAAA=OUTV_MAX;              //1
    AAAA*=1023;                 //2
    AAAA/=50;                   //3

    AAAA=1023*OUTV_MAX/50;      //4
}
正常來說程序執(zhí)行1,2,3之后的結(jié)果應(yīng)該與4執(zhí)行的結(jié)果是一樣的,可仿真的結(jié)果卻不通,實(shí)在搞不懂是怎么回事?還望大俠指教.

2樓: >>參與討論
莊莊
看看反匯編的結(jié)果吧
可能是編譯器計(jì)算順序是由右到左

3樓: >>參與討論
lseek
好像不是順序問題
1,2,3 執(zhí)行的結(jié)果是正確的,而4執(zhí)行的結(jié)果是不正確的.

4的反匯編代碼如下:


4樓: >>參與討論
莊莊
數(shù)據(jù)類型由整型改為長整型
 
5樓: >>參與討論
wswh2o
uint 也沒有溢出吧?
 
6樓: >>參與討論
lseek
樓上
我試了,運(yùn)行結(jié)果是一樣的.只不過是有  FE7A  變成FFFFFE7A.

AAAA 我定義的是無符號整型,不會溢出.正確的結(jié)果是0x398.
可是4式就是的不出正確結(jié)果.郁悶. 

* - 本貼最后修改時(shí)間:2006-1-9 17:26:42 修改者:lseek

7樓: >>參與討論
楊工
少了1個(gè)L
改為AAAA=1023L*OUTV_MAX/50

8樓: >>參與討論
jinbos
一般都是數(shù)據(jù)類型問題,
 
9樓: >>參與討論
艾森豪威爾
AAAA=(uint)1023*(uint)OUTV_MAX/(uint)50;試一下
很明顯需要強(qiáng)制轉(zhuǎn)換

10樓: >>參與討論
lookuper
因?yàn)?式,不是單片機(jī)計(jì)算的,是C編譯器編譯時(shí)算好的
所以 只需
AAAA=1023L*OUTV_MAX/50;      //4
          ×
加L就好了


參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
介紹一本單片機(jī)的C語言編程,可以簡單一些,有一些例子的謝謝
有用過ucdos下的HZK24的沒有?
請大家?guī)兔y試一下USB口的電源問題
51單片機(jī),如果vcc不給電,但io口有電壓,會對芯片有損壞嗎?
大家好!什么程序可以反匯編27C1001?
免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號