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

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

KEIL C51急救

作者:nylyt 欄目:單片機
KEIL C51急救
小弟用的是KEIL 51 7.09版本,程序大部分完成,但涉及數(shù)學(xué)算法51出錯,我簡單測試
//#include <intrins.h>
void main(void)
{//unsigned int x, y;
signed LONG z;
z=(1000*500);
//x=z/5000;
}仿真觀察Z,為何是0xffffa120,而不是0x0007a120


2樓: >>參與討論
jingwang
re
請查看數(shù)組變量int x的定義


3樓: >>參與討論
hiberhe
z是signed的啦~
 
4樓: >>參與討論
nylyt
不對
我的別的部分都正確,只為測試算法另建一工程,變量定以為字節(jié)和字計算結(jié)果都正確,但定以為LONG計算不對

5樓: >>參與討論
taoest
用強制轉(zhuǎn)換
用強制轉(zhuǎn)換:
z=((LONG)1000*(LONG)500);

因為1000 和500 都是INT ,乘起來也是 INT ,所以賦給Z的時候就只有INT

6樓: >>參與討論
32768Hz
應(yīng)寫成
z=1000L*500L;

7樓: >>參與討論
nylyt
為什么定義為字節(jié)和字都對
謝謝32768HZ和TAOEST兩位,我過去常用匯編的第一次用C,不明白為什么定義成字都對呢?例如X=100*3,X定義為unsigned int類型常數(shù)不用強制轉(zhuǎn)換都正確,但定義成LONG就不對呢如X=10000*30

8樓: >>參與討論
computer00
看你的計算結(jié)果是否超出范圍。溢出之后,當(dāng)然就錯了。
 
9樓: >>參與討論
nylyt
請解惑
computer00應(yīng)該把上面的帖子看完,不存在溢出問題,而是兩個常數(shù)相乘如果我把變量定義為長整型后,乘積也沒溢出,結(jié)果不對。

10樓: >>參與討論
chenqinyao
re
把 signed LONG z;改為unsigned LONG z;試試看!

11樓: >>參與討論
computer00
一個int的是16位,如果是無符號的,則表示最大的數(shù)為65535
而你現(xiàn)在是10000*30=300000>65535,這不是溢出,是什么?
你改成下面的就行了:
X=10000;
X*=30;

或者X=(LONG)10000*30;


* - 本貼最后修改時間:2005-3-7 18:20:10 修改者:computer00

12樓: >>參與討論
nylyt
LONG 是長整型沒有溢出
 
13樓: >>參與討論
computer00
但是右邊溢出了
默認(rèn)10000是int型的,而30是CHAR型的,因此在做乘法運算時,按int來處理,
結(jié)果就溢出了,在賦值給LONG X之前,就已經(jīng)溢出了。
你還是自己寫個程序,慢慢看吧,最好反匯編后來看看,它是怎樣處理這兩個數(shù)相
乘的。

14樓: >>參與討論
mailbert
寫成z=(0x3E8*0x1F4); 行嗎?
 
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
如何按工業(yè)級標(biāo)準(zhǔn)設(shè)計?
怎么讓您發(fā)的帖得到我的猛頂。!
請問如何燒斷51單片機的IO口﹖為了防止片內(nèi)FLASH被讀出
關(guān)于Keil的絕對地址偏移問題?
尋求一塊內(nèi)帶LCD驅(qū)動的EM單片機!望前輩們指點指點
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


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