您的位置 首页 被动

第23节:变量都转换成unsigned long数据类型

从业十年,教你单片机入门第23讲:不管是以前讲的加法,现在讲的减法,还是未来讲的乘法和除法,我都会强烈建议请把所有参与运算的变量都

从业十年,教你单片机入门 第23讲:

不管是曾经讲的加法,现在讲的减法,仍是未来讲的乘法和除法,我都会强烈建议“请把一切参加运算的变量都转成unsigned long类型”。unsigned long变量是三种数据类型中取值规模最大的数,取值规模可达0到4294967295之间,用了此类型变量的运算,不会容易导致运算溢出的问题。有仔细读者会问,如果数据超过了4294967295怎么办?答:可用BCD码的数组办法进行运算。这种数组运算的办法我在《从业将近十年,手把手教你单片机程序结构》里用了好几个章节跟我们介绍过,初学者暂时不必深化学习它。

变量转化的办法是引进中心变量,有多少个需求转化的变量就引进多少个中心变量,请看下面这个比如。

转化之前:

unsigned int a;

unsigned char x=195;

unsigned long y=101;

a=x-y;

剖析:上述公式用到3个变量,其间a和x都不是unsigned long变量,因而需求为它们别离引进中心变量t和s。

转化之后:

unsigned int a;

unsigned char x=195;

unsigned long y=101;

unsigned long t; //引进的中心变量,用来代替a

unsigned long s; //引进的中心变量,用来代替x。

s=0; //s在接纳x原数据之前先把高位和低位悉数清零。由于s和x的数据宽度纷歧。

s=x; //接纳x原数据,相当于把x转化成unsigned long中心变量。

t=s-y; //此处的t就默许代表了变量a。

本章虽短,可是此办法在实践项目中很重要,我们不行粗心。

下节预告:乘法运算的5种常见格局。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ziliao/beidong/262148.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部