汇编实验报告(一)



一开始弄不明白为什么每一条的偏移地址有时候是3有时候是2,后来明白了指令算一个,寄存器算一个,值算一个,两个寄存器只算一个。

第一次没逐条编译直接崩溃了,发现是个死循环。

第二次没有给CS和IP赋值,导致ax的值没有变化,CS和IP的值也不对。

第三次对了,然后2的8次方就是16进制里面的0100.


查这个生产日期,一开始我没懂怎么做。别人教我0:0 ff 的意思,就是从指定的内存位置开始读取,从那个位置开始读到地址ff处。题目中FFF00H~FFFFFH 可以算偏移地址是ff。FFF00H就是FFF0H乘16,,从FFF00H到FFFFFH要再加上偏移地址ff。

一开始没注意,啥都没看出来,后来才发现会有图案出现,挺好玩的嘿。
用d查发现b810不是我改的值,就很好奇,之后改别的地址是可以的,查了一下,貌似是因为b810控制的显存,用d的时候屏幕刷新了,所以b810那的值又变回去了,就不是我改的值了。

posted @ 2018-11-20 21:44  花逢君  阅读(194)  评论(2编辑  收藏  举报