Functional Debugging

程序简介

main.s程序有两个缓冲区HappyBuf和SadBuf,程序将sad和
happy两个8位变量赋为随机数,再将这两个变量转存到数组中。
Cnt保存数组偏移量,Cnt被初始化为0,转存时先判断Cnt是否
越界,若否,则将变量转存再将Cnt加1

实验结果

cnt值及HappyBuf


cnt值是SIZE的大小20(0x00000014)



HappyBuf的大小是(0x20000000)
对应的地址里存的数据是


实验分析

cnt存储在R1寄存器中,在save中存储happy、sad结束后会加一,而到达数组大小SIZE(20)之后就不再增加。
HappyBuf是happy的缓冲区,存储在R2中,save过程中在原始r0-r3入栈之后读取,地址是0x20000000。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容