#define XBYTE ((unsigned char volatile xdata *) 0) 谁给详细讲解一下这个宏定义。谢谢

 我来答
风若远去何人留
2013-04-20 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450110
专业C/C++软件开发

向TA提问 私信TA
展开全部
这个宏可以当做一个常量用,也可以当做一个数组
常量就不用说了,直接赋值就好,赋值给谁,谁就是这个数组的首地址,然后这个变量(应该也是无符号字符指针类型的)也就可以当做数组使用了

取值的时候,应该是取硬件寄存器或者管脚的值

这种定义不太可能出现在PC开发中,应该是单片机中的吧?
CPU系统指定了0地址作为一系列管脚或者寄存器的首地址值,于是可以通过这个宏进行读取和写入
FanyongYin
2013-04-19 · TA获得超过1054个赞
知道小有建树答主
回答量:1298
采纳率:100%
帮助的人:1002万
展开全部
修饰0地址的见过,但是没有见过还使用了volatile的;

能将这个XBYTE的被使用的语句一并发出来么?不需要完整程序,少数语句就可以了
追问
C51的P0,P2口做外部扩展时使用,其中XBYTE [0x0002],P2口对应于地址高位,P0口对应于地址低位。一般P2口用于控制信号,P0口作为数据通道。
XBYTE定义的是外部地址,这样才能和接到你的IO口上的器件通信
在一般的读写外部RAM的程序中,经常看到这样的句子:
XBYTE[address]=data 写数据
data=XBYTE[address] 读数据1
追答
呵呵,真的是第一次见到这种用法阿,学习了

Ref:
http://zhidao.baidu.com/question/451953338.html

这个更为详细:
http://blog.mcuol.com/User/zhjr1220/Article/18249_1.htm
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式