打印

程序写不下

[复制链接]
2453|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
高建明|  楼主 | 2007-1-2 13:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现有一项目需要增加功能,原来使用SH69P55-44,程序有4个页面,共4*2K=8K容量,为了编程方便,程序分块编写,所以每一页都有程序(并且每一页的程序都接近2K),第0页是主程序,子程序在1,2,3页中,现在的问题是程序写不下了,原来的程序宏比较多,所以现在想把宏用子程序替换,但是如果有跳转指令的宏那么如何用子程序替换?比如像这样的:
;***4位寄存器与寄存器比较,相等则转***
CJE4_XX        MACRO    X1,BK1,X2,BK2,ADDR
        LDA    X2,BK2
        SUB    X1,BK1
        BAZ    ADDR
        ENDM
请问如何CALL?
沙发
juginhine| | 2007-1-3 08:36 | 只看该作者

可以用一個標誌

按照你說的那種跳轉設計,一般都是不能用call來替換的。不過可以換一下來實現用call。就是加入一個位標誌。如果2個單元相等,那麽位標誌等於1,如果2個單元不相等,那麽位標誌等於0。然後在call返回時返回這個位標誌。在call的下一個指令中用位跳轉來跳到你要的位置。不過這樣實現節省不了什麽空間,每次可以節省一個字節。
請試下。

使用特权

评论回复
板凳
melovecho| | 2007-1-4 10:27 | 只看该作者

ggf

请不要发广告,谢谢合作!!
                        本版版主   WARM_ICE
                       2007-01-04

使用特权

评论回复
地板
高建明|  楼主 | 2007-1-5 20:35 | 只看该作者

谢谢,是个好思路

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

46

主题

203

帖子

0

粉丝