60是rts
也许是为了防止误运行.
因为sysdir下的bin文件就是从$4000开始运行的!
也许,呵呵..........
以下是引用shuyufeng在2006-7-6 20:38:00的发言:哦.......
60是rts
也许是为了防止误运行.
因为sysdir下的bin文件就是从$4000开始运行的!
也许,呵呵..........
这和NOR有什么关系?
怎么是为了防止误运行?
以下是引用shenji在2006-6-18 14:05:00的发言:在WQX的NOR的某一页的开头几个字节的数据中,为什么一般都是这几个数据呢:
$4000: 60 EA ...
这是不是有什么用意?比如在在升级内核时做识别代码用的?等等...
恳请达人解答一下,谢谢.
请问是哪几页啊?要把话说明白啊!!
引用第4楼Isword于2006-07-14 21:01发表的“”:
请问是哪几页啊?要把话说明白啊!!
.......
每一页都是这个样子的......不管什么型号都是如此 事实上,WQX的中断处理代码是这样处理Int指令的(简单的说一下):
在相应的Nor闪存页取一个地址,然后执行。
举例:
比如说,现在我们执行了一个中断 int $ca04
根据中断代码,(相应资料可以在论坛里找到),系统将转到$0a页,并且将$04 左移一位(也就是乘以2)作为偏移,从$4000处取得要执行的代码的地址。在本例中,就是从$0a页的$4008和$4009取得地址。例如,$4008=$12,$4009=$34,则中断将从$3412处运行程序。
换句话说,当你执行中断int $ca04的时候,程序执行的是$0a页$3412处开始的程序。
不知道我这样说LZ能不能理解…… 所以不会有XX00的中断?除了$4000开头不是的 引用第7楼lcq于2006-08-01 08:46发表的“”:
所以不会有XX00的中断?除了$4000开头不是的
嗯,是的。因为XX00在进行移位之后,仍然是00,所以嘛……60 ea应该没什么用,只是作为一个标示吧 60=RTS
EA=NOP
...........
因此 XX00 是没有效果的。 还是糊涂啊~~~`
请教汇编达人一个问题
在WQX的NOR的某一页的开头几个字节的数据中,为什么一般都是这几个数据呢:$4000: 60 EA ...
这是不是有什么用意?比如在在升级内核时做识别代码用的?等等...
恳请达人解答一下,谢谢.
页:
[1]