导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[chenjianli]一个c51编译问题



No.86772
作者:chenjianli
邮件:yurencjl@126.com
ID:44314
登陆:1次
文章数:1篇
最后登陆IP:60.180.0.161
最后登陆:2005/12/28 7:58:25
注册:2005/12/11 9:11:07
财富:110
发帖时间:2005/12/11 9:31:40
发贴者IP:60.180.0.238
标题:chenjianli:一个c51编译问题
摘要:No.86772一个c51编译问题 我发现一个问题,不知道是我不对,还是c51的bug问题。见下图,其中d的声明是:
char bdata d;
sbit d7=d^7;
我要求返回的是d的值,可是不管是实际,还是从编译函数中看,返回的d值中的第7位(就是d7=1:)丢掉了。本来返回的是1;现在却返回的是0。c51为什么会这么编译呢?具体问题出在倒数第二行返回值处:MOV R7,A  这个A是在SETB d7之前的,不包含已经变化了的d7=1这一内容啊。
该怎么解决,凡是用到位变量的,c51都不能够返回正确值。


此主题相关图片如下:
按此在新窗口浏览图片  ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:7276毫秒 查询8次