有关CASL的一个菜问题,请各位帮忙看一下

CTAer 2003-09-14 06:12:39
有如下说明:
A DC #1234
B DC #5678
能不能用
LEA GR1 ,1
LD GR0 ,A ,GR1
来取代
LD GR0 ,B
...全文
26 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cupidvenus 2003-09-20
  • 打赏
  • 举报
回复
如果A、B的地址是连续的就可以。
cenguokai 2003-09-20
  • 打赏
  • 举报
回复
lea gr1,1
这样也行???
你怎么知道地址为1的内存单元放的是什么东西?


LEA GR1,1 是把常数1放在GR1中,即1->GR1
而不是内存地址为1,即不是(1)->GR1
cenguokai 2003-09-20
  • 打赏
  • 举报
回复
可以替换。
前提是B紧跟着A定义的。
LD GR0 ,A ,GR1即为 (A+GR1)->GR0
沙沙的吹 2003-09-19
  • 打赏
  • 举报
回复
可以替换!
LEA把1放到了GR1,然后使用变址寻址.可以访问B
lhg3122 2003-09-19
  • 打赏
  • 举报
回复
不好意思,可以替换,我上面回答错了
LD GR0,A,GR1表示把A对应的地址加1于是就得到B的地址,固B=A+1,可以替换。
lhg3122 2003-09-19
  • 打赏
  • 举报
回复
不能替换,因为LD GR0,A,GR1里面e=(A)+1=1234+1,结果把地址为1235里面的数据取到了GR0,谁知道1235单元里面是什么.而LD,GR0,B是把地址5687里面的数据取道GR0,所以不能替换。
zbstone 2003-09-14
  • 打赏
  • 举报
回复
LD GR0,A,GR1
表示(A+GR1)->GR0
那么也就是说如果B=A+GR0
那么上面你说的就应该可以替换
zbstone 2003-09-14
  • 打赏
  • 举报
回复
lea gr1,1
这样也行???
你怎么知道地址为1的内存单元放的是什么东西?

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧