
data:固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。
idata:固定指前面0x00-0xff的256个RAM,其中前128和data的128完全相同,只是因为访问的方式不同。idata是用类似C中的指针方式访问的。汇编态慧中的语句为:mox ACC,@Rx.(不重要的补充:c中idata做指针式的访问效世闭芹果很好)
xdata:外部扩展RAM,一般指外部0x0000-0xffff空间,用DPTR访问。
pdata:外部扩展RAM的低256个字节,地址出现在A0-A7的上时读写,用movx ACC,@Rx读写。这个比较特殊,而且C51好象有对此BUG,建议少用。但也有他的优点,具体用法属搜毕于中级问题,这里不提。
传送到屏内是编译后的文件,我们电脑上用软件看到的是编译前的程序。如果上传能看模掘和到,说明下载时就允许你上传,旦盯且在屏中保存了一份可上传的未被编译散野的文件。
反编译后可以用电脑看,但一般是不允许反编译的,我们也没有本事反编译。
你好!亩指誉很高兴为你解答,你上面的错误是英语转换中文【错误PDATA段过大】,这样你应该知道是那里出问题了把, 如果你定义的数组不用更改就用 uchar code XX[10]=
根据你数据的用处,你可以有以下几种选择:
data:直接寻址的片内逗册RAM区低128B(00H~7FH)
bdata:片内RAM的可位寻址区(20H~2FH),允许字节和位混合访问
idata:单片机间接访问的片内迅段RAM区,允许访问全部片内RAM
pdata:Ri间接访问的片外RAM的低256B(00H~FFH)
xdata:用DPTR间接访问的片外RAM,允许访问全部64KB片外RAM(0000H~FFFFH)
code:单片机的64KB程序存储区ROM
希望我的回答对你有帮助!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)