单片机中为什么 void delay(uchar z) 与void delay(uint z)延时时间不...

发布网友 发布时间:2024-10-22 14:34

我来回答

4个回答

热心网友 时间:7分钟前

因为形参变量类型不同,UINT需要占用两个8位(16位)内存空间,而
51单片机
只能进行8位运行,对于16位的数没有直接可用的指令,需要一段不小的程序来处理,所以花费时间就长了。

热心网友 时间:3分钟前

你定义的
uchar
是字符变量
最大只能到
255,超出部分就会溢出,而舍去,,不过你要是在255ms以内延时的话,,这两个都对,,要是超过255ms,就要使用第二个了!!!

热心网友 时间:4分钟前

当然不同,unsigned
char
z
这里是字符型变量,编译成执行代码后,代码量较小,执行时间相应要小。unsigned
int
z
这里是整型量,编译成执行代码后,代码量要长不少,执行时间当然要长不少了。

热心网友 时间:6分钟前

unsigned
int
和unsigned
char
的变量分配地址空间不一样,虽然执行一样代码过程。当然时间会有差别。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com