寄存器赋值问题

[复制链接]
4063|30
 楼主| supernan 发表于 2013-5-9 21:26 | 显示全部楼层
玩汇编的目的是速度和代码大小两者并重,当芯片的速度够快了,可以满足我们的要求了难道为了速度可以使自己的代码很大
 楼主| supernan 发表于 2013-5-9 21:27 | 显示全部楼层
以至于内部flash不够,需要外部的flash,那样的话取指各方面的速度要受影响了
栩栩如生 发表于 2013-5-9 21:28 | 显示全部楼层
指令中直接给出操作数地址(dir)的寻址方式称为直接寻址。寻址对象为:1 内部数据存储器,在指令中以直接地址表示;2特殊功能寄存器SFR,在指令中用寄存器名称表示。
栩栩如生 发表于 2013-5-9 21:28 | 显示全部楼层

     以寄存器中的内容为地址,该地址的内容为操作数的寻址方式称为寄存器间接寻址。能够进行寄存器间接寻址的寄存器有:R0、R1、DPTR,用前面加@表示,如@R0、@R1、@DPTR。寄存器间接寻址的存储空间包括内部数据存储器和外部数据存储器。由于内部数据存储器共有128字节,因此用一字节的R0和R1可间接寻址整个空间。而外部数据存储器最大可达64K,仅R0或R1无法寻址整个空间,为此需要由P2端口提供外部RAM高8位地址,由R0或R1提供低8位地址,由此共同寻址64K字节范围。也可用16位的DPTR寄存器间接寻址64K字节存储空间。
zwll 发表于 2013-5-9 21:29 | 显示全部楼层
其实,如果是入门的话,这些知识你不必深究,先学会怎么应用即可,等你的知识深度到达一定层次的时候,你就会明白是什么意思了。
zwll 发表于 2013-5-9 21:30 | 显示全部楼层
如果想完全了解的话,建议你去看看《微机原理》吧,上面说的很详细,很清楚!
 楼主| supernan 发表于 2013-5-9 21:31 | 显示全部楼层
结贴了,我在看看把
 楼主| supernan 发表于 2013-5-9 21:31 | 显示全部楼层
多谢大家啦
kan_cb 发表于 2013-5-9 22:23 | 显示全部楼层
指令都是规定死的,你硬背就完事了。想那么多干啥
zhaofy521 发表于 2013-5-10 08:39 | 显示全部楼层
寄存器不一定在内存中,所以不能取址
HORSE7812 发表于 2013-5-10 11:37 | 显示全部楼层
楼主应该是可以选择汇编方式来实现的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部