我认为,当我们掌握了编程基础,要去编程解决一个具体问题时,可以天马行空,不受拘束,但在学习知识时,尤其是学入门知识时,不要太过于执着,比如做书的习题,你突然有自己好的想法,可以脱离题目要求去草稿本上写代码,可以去debug研究,这是种很好的学习方法,但另一方面,千万不要忽视作者出题目的意图,千万不要忽视老师想教给咱们的知识点。
我认为,这道题的答案就是
mov ax,cs
及mov cx,cx
理由:(1)这是两个知识点,第一个不用说了,第二个相信有很多人忽视,我也是看了贴回头在91页找到的,老师用心良苦啊;(2)那种直接写成mov cx,17H的,我认为是绝不可行的,一段程序有其自己的使命,debug只是调试这段程序有没有问题,而不是用来去看了些参数回头又用在程序里,这跟用debug看了cs是0eb8h(假设)回头又填到第一个空有什么区别?这是一种与编程原理相悖的思想,是千万不能有的;(3)老师是很严谨的,我开始为了mov cx,cx是把所有指令包括最后两句也复制过去不符合题目要求伤透了脑筋,想了N多种可能,最后都排除了。结果用debug上机一试,最后两句不翼而飞,估计跟突然冒出来的int 3有关,这就即不违反题意,又让我们带着问题往下学;当然,有同学直接运行程序,再用debug看内存,发现所有代码包括最后两句都完全复制过去了,这又是个知识点,肯定中间有什么发生了作用;老师出的题要求都是在debug中调试,所以老师的题目要求也达到了,题并没出错,只是让我们更有悬念;(4)知道了CX这个知识点,自然mov cx,cx这句可以不要了,但是如果没有这句填空,会有多少同学包括我就漏掉了这个重要知识点,老师的作用就在于此啊! |