HI,各位HACK友,小编又来了!这期的教程是手把手带大家入坑汇编 续,内容紧接着视频教程手把手带大家入坑汇编,如果大家没有看完视频教程,看这篇,会比较难上手,推荐大家先看完视频教程!
观看地址:http://www.hackrom.cn/html/5/41.html
这期教程的例子呢,找个比较有趣的吧,来个按开始键改变人物廋小再按下就还原,让这两期的教程来个完美的收尾,当然,通过这两个教程东东,大家就能精通了,不不不,只是让大家更好的入坑,今后就靠大家自己了。
好了,先给大家一个威猛的地址:10812E,值:FFFF,前面两个FF为胖瘦,后面的FF为高矮!小编改为77CC来测试下!
按上回的视频教程,捣鼓代码,小编先给大家,等会手把手的教大家看透汇编是神马东东!
开始研究代码,第一句就不说了,开始键自带的东东,第2句,cmpi.w #$fffe,$2e(a4),这句是神马意思,不是觉厉啊,怕怕,别急,打开68K指令集临时速查有这货,如下图:
小编,第一次看这种东东的时候,不明所以然,不知所云,神马XNZVC的。比较二字看到了吧,嗯,就是比较大小的,看运算那段,目的操作数-立即数,就是后面的$2e(a4)内存的东东-前面的fffe,就是这么一回事!那个神马XNZVC,看下图!就是一堆位,嘿嘿,大家头晕了吧,慢慢来!
现在我们来了,$2e(a4)的内存值为:77cc,77cc-fffe应该为负数,N位为1,Z位为0,后面的溢出、借位、进位神马东东!
cmpi这个东东,是在进行减法运算,所以只有借位,加法的东东只有进位,它们的值为0的时候,叫无错位,现在小编头晕了。那溢出又是神马意思,两数相减,同号,则不溢出,两数为异号,结果与减数符号相同,则溢出。
上面的东东,大家明白了吗,嗯,这个慢慢来吧。
接上面,V位应该溢出了吧,为1,C位应为有借位,为1!终于解释完这一句了!庆祝下!值得收藏!
下一句,bls abc,这个好理解,上手册!
怎么理解呢,就是C位和Z位,只要有一个是1,就跳转到子程序abc里!程序中,C位为1,跳转到子程序,说明我们修改过这个东东,进入子程序还原这个内存地址原来的FFFF值!
好了,大家,经过这一通说明,大家对68K指令集临时速查有了更好的理解了吧!在今后的修改中,不懂的,大家看看手册也就一目了然了,汇编教程就说到这里了,其实,这货大家多看,多调试就会很快上手了的。886大家!