我在写程序员与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程序。汇编程序结束。
通过这个小程序,大家可以看到操作系统底层是如何接受用户键盘输入的了。如今我们早已跳过了汇编的时代,但是再高级的程序最终也要成为汇编。我一直说我们“要知其然,也要知所以然”就是这个道理。这仅仅是我正式话题中的一个插曲和放松而已,不必当真。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述