C/C++培训
达内IT学院
400-996-5531
各位,相信你们都听过Debug这个词,那这个词在我们计算机领域究竟是什么意思呢?今天就在这和大伙简单说道说道,讲的不好不对的地方还请大家批评指正。
那我们就从这个名字的由来说起,一位名叫葛丽丝·霍波(Grace Hopper)的美国海军准将及计算机科学家,同时也是世界最早的一批程序设计师之一。有一天,她在调试设备时出现故障,拆开继电器后,发现有只飞蛾被夹扁在触点中间,从而“卡”住了机器的运行。于是,霍波诙谐的把程序故障统称为“臭虫(BUG)”,把排除程序故障叫DEBUG,那这个词也就这么来了,是不是发现好多名词都是这么无意之间来的?
那到了今天Debug究竟是什么意思呢?其实从本质上来说,Debug是一种程序,一种调试工具,说白了就是供程序员检查修改问题的工具。用比较正式的话说Debug是DOS,Windows都提供的实模式(也就是8086方式)程序的调试工具。其实严格来说,Debug是在DOS方式下使用的程序,我们在进入Debug前应该先进入DOS。而就目前我们用的计算机来说,进入DOS有以下两种方法:
1.重启计算机,进入DOS,此时进入的是实模式的DOS。
2.在Windows界面进入DOS,此时进入的是虚拟8086模式的DOS。
讲到这里一定有人会问,实模式和虚拟8086模式什么意思?给大家简单讲一下:
我们所说的CPU工作模式分为实模式和保护模式两种,而虚拟8086是保护模式下一种任务的运行模式,并非CPU的工作模式。大家平时用的Windows系统是运行在保护模式下的,而计算机在刚启动的时候是在实模式下运行,在启动Windows系统时进入保护模式,除非关闭系统,否则不会回到实模式。如果要一直在实模式下运行,那就得使用DOS等实模式下的操作系统。但是在Windows系统中加载的DOS程序是在虚拟8086模式下运行的。当然这里面涉及了一些DOS的相关知识,由于篇幅原因咱们在这儿就不讲了,感兴趣的可以留言评论一起交流。
好了,言归正传,回到Debug上, 这里有一点需要注意,Debug把所有数据都当成字节处理,因此可以用它检查内存中任何地方的字节以及修改任何地方的字节。它可以用于逐指令执行某个程序以验证程序运行的正确性,也可以在机器码这个级别追踪执行过程、比较一个指令执行前后的值以及比较与移动内存中数据的范围,读写文件与磁盘扇区。
值得一提的是,Debug在汇编语言中的应用非常广泛,Debug的命令比较多,大约20多个,和汇编密切相关的有R命令、D命令、E命令、U命令、T命令、A命令等等,当然每个命令作用不同,比如D是查看内存内容,E是修改内存内容,T是执行一条机器指令等等,还有很多,而且都有固定的命名使用格式,这里就不一一讲了,我们今天主要是让大家知道并理解Debug的意思,关于怎么使用它学有余力的可以自行学习研究一下,好了,就到这里吧。
各位,关于Debug你明白了吗?
最后,达内C++培训机构提醒每一个it爱好者:如果你想要在短时间内快速入门,顺利掌握一门技术,建议还是认真学习视频。多练习,多动手。
版权声明:转载内容及图片来自公开网络,版权归作者本人所有,推送文章除非无法确认,我们都会注明作者和来源。如果出处有误或侵犯到原作者权益,请与我们联系删除或授权事宜。
填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved