从单片机基础到程序框架(全集 2019pdf版) - 第81页
View(f); //把第 6 个数 f 发送到电脑 端的串口助手 软件上观察。 View(g); //把第 7 个数 g 发送到电脑 端的串口助手 软件上观察。 View(h); //把第 8 个数 h 发送到电脑 端的串口助手 软件上观察。 while(1) { } } /*---C 语言 学习区域的结 束。----- ----------- ---------- ----------- ---------- */ 在电脑串口 助手…

【18.3 例程练习和分析。】
现在我们编写一个程序来验证上面讲到的例子:
程序代码如下:
/*---C 语言学习区域的开始。-----------------------------------------------*/
void main() //主函数
{
unsigned char a; //定义一个变量 a,并且分配了 1 个字节的 RAM 空间。
unsigned char b; //定义一个变量 b,并且分配了 1 个字节的 RAM 空间。
unsigned char c; //定义一个变量 c,并且分配了 1 个字节的 RAM 空间。
unsigned char d=5; //定义一个变量 d,并且分配了 1 个字节的 RAM 空间。初始化默认为 5.
unsigned char e=5; //定义一个变量 e,并且分配了 1 个字节的 RAM 空间。初始化默认为 5.
unsigned char f=5; //定义一个变量 f,并且分配了 1 个字节的 RAM 空间。初始化默认为 5.
unsigned char g=5; //定义一个变量 g,并且分配了 1 个字节的 RAM 空间。初始化默认为 5.
unsigned char h=5; //定义一个变量 h,并且分配了 1 个字节的 RAM 空间。初始化默认为 5.
unsigned char q=1; //定义一个变量 q,并且分配了 1 个字节的 RAM 空间。初始化默认为 1.
unsigned char x=3; //定义一个变量 x,并且分配了 1 个字节的 RAM 空间。初始化默认为 3.
unsigned char y=6; //定义一个变量 y,并且分配了 1 个字节的 RAM 空间。初始化默认为 6.
unsigned char k=2; //定义一个变量 k,并且分配了 1 个字节的 RAM 空间。初始化默认为 2.
unsigned char r=8; //定义一个变量 r,并且分配了 1 个字节的 RAM 空间。初始化默认为 8.
//第 1 个知识点:连加。
a=1+69+102; //加数全部是常量。a 的结果为:172。
b=q+x+y+k+r; //加数全部是变量。b 的结果为:20。
c=3+x+y+5+k; //加数有的是常量,有的是变量。c 的结果为:19。
//第 2 个知识点:自加。
d+=6; //相当于 d=d+6; d 的结果为:11。
e+=x; //相当于 e=e+x; e 的结果为:8。
f+=18+y+k; //相当于 f=f+18+y+k; f 的结果为:31。
//第 3 个知识点:自加 1。
g++; //相当于 g=g+1 或者 g+=1; g 的结果为:6。
++h; //相当于 h=h+1 或者 h+=1; h 的结果为:6。
View(a); //把第 1 个数 a 发送到电脑端的串口助手软件上观察。
View(b); //把第 2 个数 b 发送到电脑端的串口助手软件上观察。
View(c); //把第 3 个数 c 发送到电脑端的串口助手软件上观察。
View(d); //把第 4 个数 d 发送到电脑端的串口助手软件上观察。
View(e); //把第 5 个数 e 发送到电脑端的串口助手软件上观察。

View(f); //把第 6 个数 f 发送到电脑端的串口助手软件上观察。
View(g); //把第 7 个数 g 发送到电脑端的串口助手软件上观察。
View(h); //把第 8 个数 h 发送到电脑端的串口助手软件上观察。
while(1)
{
}
}
/*---C 语言学习区域的结束。-----------------------------------------------*/
在电脑串口助手软件上观察到的程序执行现象如下:
开始...
第 1 个数
十进制:172
十六进制:AC
二进制:10101100
第 2 个数
十进制:20
十六进制:14
二进制:10100
第 3 个数
十进制:19
十六进制:13
二进制:10011
第 4 个数
十进制:11
十六进制:B
二进制:1011
第 5 个数
十进制:8
十六进制:8
二进制:1000
第 6 个数
十进制:31
十六进制:1F
二进制:11111

第 7 个数
十进制:6
十六进制:6
二进制:110
第 8 个数
十进制:6
十六进制:6
二进制:110
分析:
通过实验结果,发现在单片机上的计算结果和我们的分析是一致的。
【18.4 如何在单片机上练习本章节 C 语言程序?】
直接复制前面章节中第十一节的模板程序,练习代码时只需要更改“C 语言学习区域”的代码就可以了,
其它部分的代码不要动。编译后,把程序下载进带串口的 51 学习板,通过电脑端的串口助手软件就可以观
察到不同的变量数值,详细方法请看第十一节内容。