关于几个指令问题

[复制链接]
2375|5
 楼主| Sjj爱 发表于 2011-2-21 14:27 | 显示全部楼层 |阅读模式
对于 BC BNC BAZ BNZ BA0 BA1 BA2 BA3 CALL 这些指令,其寻址范围是2K,
请问下以下情况是否可行?

1)      ORG      0800H

        BC         XXXX

XXXXX:


2)   ORG      0000H


      CALL      XXXX

XXXX:
      X
      X
      JMP       XXXX_BANK

      ORG     0800H


XXXX_BANK:

        X
        X
       RTNI

以上2种运用是否可行?

谢谢!
neyo.zhong 发表于 2011-2-22 09:38 | 显示全部楼层
第一种可行;
第二种部分错误:XXXX_ BANK返回时,不能使用RTNI,而要使用JMP,CALL和返回指令只能在同一个BANK(0~2K,2K~4K........以此类推),跨BANK调用时,要使用JMP

很久没有玩4BIT了,如果有错,其他哥哥帮忙修正
juginhine 发表于 2011-2-22 16:45 | 显示全部楼层
兩種方式都是可以的。
第二種方式中,你的代碼從bank0到bank1的時候,已經是用的jmp指令了。所以這個沒有錯誤。
 楼主| Sjj爱 发表于 2011-2-23 08:35 | 显示全部楼层
第二种方式怎么会有两种结果呢

究竟你们2楼和3楼谁说的对啊

不过就实际运用中好象没什么问题,怕就是会影响代码稳定性
neyo.zhong 发表于 2011-2-23 09:08 | 显示全部楼层
4# Sjj爱
呵呵,相信三楼的,他是公司里面的前辈,技术比我好。
bnyuli 发表于 2011-2-24 11:17 | 显示全部楼层
几种方式几种结合
液位传感器
波纹管
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

1159

帖子

0

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