只需一步,快速开始
热门: 51单片机 | 24小时必答区 | 单片机教程 | 单片机DIY制作 | STM32 | Cortex M3 | 模数电子 | 电子DIY制作 | 音响/功放 | 拆机乐园 | Arduino | 嵌入式OS | 程序设计
大家好,本人新手~ 有几个问题想请教大家~
#include <reg52.h> //头文件
main()
{
P1=0xfe;
}
问题1:这里fe前面0x是什么意思?请问能省略么?
问题2:当我改成P1=11111111(有八个灯)的时候,本应该八个灯都是灭的,但是为什么第456三个灯是亮的,而其他灯是灭的?谢谢。。。
使用道具 举报
首先我要说句是事实但可能对你有较大打击的话
你的基础还应该加强呀
0X是什么?这个前缀是表示后面的数是16进制的,能不能省略就不说了
P1=11111111,,,你的想法是后面的那些111是2进制的表示,如果编译器或是单片机也知道你的意思,那肯定是没有错的,但是单片机不知道你的想法,而把他们当成的是10进制,是十进制的结果是什么呢?是0XA98AAC7,取低位有效就是0XC7,二进制就是11000111B,所以就有你看到的想象,明白不?
问题3: 当我写成P1=11111110的时候,第一个灯,第四 5 6个灯是亮的,其他灯灭,难道不应该是最后一个灯亮,其他灯灭么?谢谢。。。
看懂上面的,你就不难明白这个咯
不能省略,用十六进制表示一个字节. 基础很差,加油啊.......
本版积分规则 发表回复 回帖后跳转到最后一页
手机版|小黑屋|51黑电子论坛 | 管理员QQ:125739409;技术交流QQ群281945664
Powered by 单片机教程网