日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]從業(yè)十年,教你單片機入門 第23講:不管是以前講的加法,現(xiàn)在講的減法,還是未來講的乘法和除法,我都會強烈建議“請把所有參與運算的變量都轉(zhuǎn)成unsigned long類型”。unsigned long變量是三種數(shù)據(jù)類型中

從業(yè)十年,教你單片機入門 第23講:

不管是以前講的加法,現(xiàn)在講的減法,還是未來講的乘法和除法,我都會強烈建議“請把所有參與運算的變量都轉(zhuǎn)成unsigned long類型”。unsigned long變量是三種數(shù)據(jù)類型中取值范圍最大的數(shù),取值范圍可達(dá)0到4294967295之間,用了此類型變量的運算,不會輕易導(dǎo)致運算溢出的問題。有細(xì)心讀者會問,萬一數(shù)據(jù)超過了4294967295怎么辦?答:可用BCD碼的數(shù)組方式進(jìn)行運算。這種數(shù)組運算的方法我在《從業(yè)將近十年,手把手教你單片機程序框架》里用了好幾個章節(jié)跟大家介紹過,初學(xué)者暫時不用深入學(xué)習(xí)它。

變量轉(zhuǎn)換的方法是引入中間變量,有多少個需要轉(zhuǎn)換的變量就引入多少個中間變量,請看下面這個例子。

轉(zhuǎn)換之前:

unsigned int a;

unsigned char x=195;

unsigned long y=101;

a=x-y;

分析:上述公式用到3個變量,其中a和x都不是unsigned long變量,因此需要為它們分別引入中間變量t和s。

轉(zhuǎn)換之后:

unsigned int a;

unsigned char x=195;

unsigned long y=101;

unsigned long t; //引入的中間變量,用來替代a

unsigned long s; //引入的中間變量,用來替代x。

s=0; //s在接收x原數(shù)據(jù)之前先把高位和低位全部清零。因為s和x的數(shù)據(jù)寬度不一。

s=x; //接收x原數(shù)據(jù),相當(dāng)于把x轉(zhuǎn)換成unsigned long中間變量。

t=s-y; //此處的t就默認(rèn)代表了變量a。

本章雖短,但是此方法在實際項目中很重要,大家不可大意。

下節(jié)預(yù)告:乘法運算的5種常見格式。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉