我在写程序员与EOM话题的时候,有个朋友对我说:“现在的年轻人,甚至工作十年的程序员对汇编语言一点概念都没有,有时间你可以举个例子,让我们看看什么是汇编语言。”
的确,在学校学习计算机少不了要学习汇编语言,不过大家仅仅是学学而已,很少认真正学习汇编语言,并用汇编语言去编制程序的。但是,汇编语言是程序语言中非常基础的东西,懂得汇编语言及其原理对自己的技术水平的提高是大有益处的。也许,很多人并不赞同这个观点,我还是那句话“懂吃懂的苦,不懂吃不懂的苦。”
不过,我们可以笑弄一下汇编语言,感觉一下汇编语言,作为一种好奇和放松吧。
操作步骤:
1、 点击屏幕左下角开始;见“所有程序”。
2、 点击“所有程序”;见“附件”。
3、 点击“附件”;见“命令提示符”。
4、 点击“命令提示符”;见命令提示符黑框。
5、 在〉之后,输入debug回车。见“-”。
6、 在“-”之后,输入 a100 回车;输入mov ax,0回车;输入int 16回车;输入int 3回车。再输入回车。见如图:
7、 在“-”之后,输入g=100回车
8、 输入1,见如图:
这段程序功能就是接受用户输入一个键。
1) mov ax,0 就是对寄存器AX置0
2) int 16 就是调用中断16,就是接受用户的键入,接收后,用户的键的值放在AX寄存器之中。
大家看到AX=0231,其中31就是“1”的ASCII码。
3) int 3 就是中断结束。表示程序执行到此为止,不继续执行下去了。
9、 在“-”输入q回车;系统推出debug程序。汇编程序结束。
通过这个小程序,大家可以看到操作系统底层是如何接受用户键盘输入的了。如今我们早已跳过了汇编的时代,但是再高级的程序最终也要成为汇编。我一直说我们“要知其然,也要知所以然”就是这个道理。这仅仅是我正式话题中的一个插曲和放松而已,不必当真。