原帖由 huangxiang 于 2005-10-29 22:07 发表
那强化芯片部分放的数据是什么?是存放要调用地址的数据么,“不同的地方调用地址不同”是什么概念;
还有,要弄懂这部分的话,是要学汇编还是编译原理呢...
那强化芯片部分放的数据是什么?
并没有具体数据,只是一段代码
如果你装备的是HP+500的芯片,芯片代码2F(好像是...)
在计算HP时,当机体上四个插槽中,有2F芯片时候,会跳转到处理"HP在原有基础上加上500的"一段代码.
例:HP+500
08017348 20FA mov r0,#0xfa R0=FA
0801734A 0040 lsl r0,r0,#0x01 R0=FA lsh 01 = 1F4 (R0为加上的500HP)
0801734C 1812 add r2,r2,r0 R2=R2+R0 (R2为原HP)
0801734E E14A b $080175e6
要说其中的数据的话,就是"FAh"吧,FA进行左移1位运算,得到结果"01F4h",也就是500
准确的讲,那只是赋值命令,并不是以数值方式被读取的.
如果把"lsl r0,r0,#0x01"改成lsl r0,r0,#0x03,那+500的芯片其效果为+2000,因为FA lsh 03 = 7D0 (十进制为2000)
---------------------------------------------------------------------------------------
不同的地方调用地址不同
一些像增加数值的芯片,在查看状态时会被计算,而一些像是增加技能的芯片,则要转到技能的页面,才会被计算
还有每回合EN回复10%这类的芯片,在回合开始计算.
-----------------------------------------------------------------------------------------
要弄懂这部分的话,是要学汇编还是编译原理呢?
都不用学,我没有学过汇编,编译原理也不明白.只要仔细看看前面的帖子.再动手研究下即可. |