找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3112|回复: 8
打印 上一主题 下一主题
收起左侧

C语言中给单片机io端口赋二进制的值居然出错

[复制链接]
跳转到指定楼层
楼主
ID:608154 发表于 2020-2-8 20:43 来自触屏版 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本人一直用汇编,最近才用C语言,用P0口驱动数码管显示3 ,查编码为01001111 ,十六进制为0x4F ,汇编中P0=01001111和0x4F都对,C中P0=01001111居然出错,只能P0=0x4F才行,这是什么鬼?
看来C还是没有汇编强大。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:446775 发表于 2020-2-8 22:11 | 只看该作者
您是直接写的就是P0=01001111吗?这显然不行
回复

使用道具 举报

板凳
ID:220005 发表于 2020-2-8 23:24 | 只看该作者
本帖最后由 Flywithliye 于 2020-2-9 16:46 编辑

二进制数之前要加0b哦~emmm搞错了不好意思
回复

使用道具 举报

地板
ID:168996 发表于 2020-2-8 23:35 | 只看该作者
C51应该只能十进制(18)、十六进制(0x12)
回复

使用道具 举报

5#
ID:235200 发表于 2020-2-9 00:28 | 只看该作者
因为C语言只支持10进制,十六进制和八进制,有了这3种数据,什么数都可以表示出来呀,不能说不支持二进制就不强大
回复

使用道具 举报

6#
ID:77479 发表于 2020-2-9 01:04 | 只看该作者
C中P0=01001111是什么意思,你知道吗?赶紧看看书!
回复

使用道具 举报

7#
ID:213173 发表于 2020-2-9 08:02 | 只看该作者
16进制是2进制的简短表达方式,不存在优劣高下问题,不同场合使用各有优势。C与汇编同样各有优势。
回复

使用道具 举报

8#
ID:159575 发表于 2020-2-17 12:43 来自触屏版 | 只看该作者
这个只能16进制或者10进制。
回复

使用道具 举报

9#
ID:158375 发表于 2020-2-18 10:29 | 只看该作者
汇编转C语言,会遇到许多问题:拿出你当初学用汇编的劲头,用那个劲头学学C......
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表