汇编语言的应用

2014-7-12

历史上,汇编语言曾经是非常流行的程序设计语言之一。随着软件规模的增长,以及随之而来的对软件开发进度和效率的要求,高级语言逐渐取代了汇编语言。但即便如此,高级语言也不可能完全替代汇编语言的作用。就拿Linux内核来讲,虽然绝大部分代码是用C语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码。由于这部分代码与硬件的关系非常密切,即使是C语言也会显得力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能。

首先,汇编语言的大部分语句直接对应着机器指令,执行速度快,效率高,代码体积小,在那些存储器容量有限,但需要快速和实时响应的场合比较有用,比如仪器仪表和工业控制设备中。

其次,在系统程序的核心部分,以及与系统硬件频繁打交道的部分,可以使用汇编语言。比如操作系统的核心程序段、I/O接口电路的初始化程序、外部设备的低层驱动程序,以及频繁调用的子程序动态连接库、某些高级绘图程序、视频游戏程序等等。

再次,汇编语言可以用于软件的加密解密计算机病毒分析防治,以及程序的调试和错误分析等各个方面。

最后,通过学习汇编语言,能够加深对计算机原理和操作系统等课程的理解。通过学习和使用汇编语言,能够感知、体会和理解机器的逻辑功能,向上为理解各种软件系统的原理,打下技术理论基础;向下为掌握硬件系统的原理,打下实践应用基础。

汇编语言的应用

时间: 2024-10-13 13:41:17

汇编语言的应用的相关文章

汇编语言入门:流程控制

流程控制:顺序,分支,循环 程序计数器PC中存储当前执行的程序在EM中的位置 汇编里面,用比较.跳转实现流程控制. 1.顺序:PC+1(不一定加一,看指令长度) 2.分支循环,直接赋给PC值,执行指定地址的程序 有时候需要程序有一定的流程控制能力,它不是老老实实按照顺序来执行的,中间可能会跳过一些代码 修改PC值,不可用MOV指令,PC是特殊的寄存器,特殊对待,跳转指令修改其值. 跳转指令: 1 ja 大于时跳转 2 jae 大于等于 3 jb 小于 4 jbe 小于等于 5 je 相等 6 j

王爽《汇编语言》第三版 第十五章 外中断

引言 CPU 除了有运算能力外,还要有 I/O( Input/Output ,输入/输出)能力. 15.1 接口芯片和端口 在PC系统的接口卡和主板上,装有各种接口芯片.这些外设接口芯片的内部有若干寄存器,CPU将这些寄存器当作端口来访问. 外设的输入不直接送入内存和CPU ,而是送入相关的接口芯片的端口中. CPU向外设的输出也不是直接送入外设,而是先送入端口中,再由相关的芯片送到外设. 15.2 外中断信息 当CPU 检测到可屏蔽中断信息时: 1.如果IF=1,则CPU 在执行完当前指令后响

王爽《汇编语言》第三版 第五章 [BX]和loop指令

5.1 [bx] mov ax,[bx]功能:bx 中存放的数据作为一个偏移地址EA ,段地址SA 默认在ds 中,将SA:EA处的数据送入ax中. 5.2 Loop指令 指令的格式是:loop 标号,CPU 执行loop指令的时候,要进行两步操作: 1.(cx)=(cx)-1: 2.判断cx中的值,不为零则转至标号处执行程序,如果为零则向下执行. 通常我们用loop指令来实现循环功能,cx 中存放循环次数. 5.3 在Debug中跟踪用loop指令实现的循环程序 5.4 Debug和汇编编译器

用汇编语言给XP记事本添加“自动保存”功能 good

[文章标题]: 用汇编语言给XP记事本添加“自动保存”功能 [文章作者]: newjueqi [作者邮箱]:[email protected] [作者QQ]:190678908 [使用工具]: OD, LordPE,eXeScope[操作平台]: XP-SP2[作者声明]: 本人平时一般的文字处理都是用记事本(用Word好像大材小用了),电脑自从拿去大修后有时候会莫名其妙的重启,弄得经常重写(本人常常忘记保存^-^),于是想给记事本增加类似于Word的自动保存功能,以图个方便.失误之处敬请诸位大

汇编语言 王爽著

汇编语言让我们深入了解计算机底层,值得去学习了解. 汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指令或操作数的地址.在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令.普遍地说,特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植.

汇编语言 王爽著第三章

汇编语言(assembly language)是一种用于电子计算机.微处理器.微控制器或其他可编程器件的低级语言,亦称为符号语言.在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址符号(Symbol)或标号(Label)代替指令或操作数的地址.在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令.普遍地说,特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植.

汇编语言基础-1

汇编语言的组成:至今有三类指令 1.汇编指令  机器码的助记符,有对应的机器码. 2.伪指令     没有对应的机器码,由编译器执行 ,计算机不执行. 3.其他符号   如+ - × / 由编译器识别, 没有对应的机器码. 内存(存储器):CPU要工作,就需要指令与数据,指令与 数据就需要内存给CPU,磁盘中的数据或指令先要加载到内存,然后内存再给CPU. 磁盘 -----> 内存------->CPU 指令与数据:他们在磁盘或内存中,是没有区别的,在应用上才有区别,在磁盘或内存上,都是二进制

VC++中开发汇编语言(转)

汇编程序结构 一个显示字符串的汇编程序 程序格式 一.模式定义 二.includelib语句 三.函数声明语句 四.数据和代码部分 Visual C/C++环境 建立工程 汇编程序的调试 一.设置断点 二.内存窗口 三.寄存器窗口 四.监视窗口 常用调试命令 字符串输入.输出 printf sprintf scanf 常用Windows API调用 MessageBox 确定函数的声明语句和库文件 读取CPU标识 WinDbg调试工具 实验题:用MessageBox函数显示CPU信息 源自:ht

汇编语言入门(在debug中编辑和调试程序)

2013-06-02 17:09 4252人阅读 评论(2) 收藏 举报  分类: 汇编语言(1)  版权声明:本文为博主原创文章,未经博主允许不得转载. 我们在Windows中进入的Dos方式,实际上是虚拟8086模式的Dos,方法是:点击“开始”,“运行”,输入"command",点击“确定”, 可以看到弹出一个黑色的框框,然后,在黑色的框框中输入相关信息,如图所示(提前说一句,汇编语言对大小写不敏感,而C语言对大小写敏感): 下面来具体分析一下: 1. debug是一个调试工具(

汇编语言编辑、汇编、连接、运行的全过程

2013-06-02 19:24 4991人阅读 评论(0) 收藏 举报  分类: 汇编语言(1)  版权声明:本文为博主原创文章,未经博主允许不得转载. 为了理解汇编语言的编辑.汇编.连接.运行的全过程,我们不使用IDE,而是分步骤来进行: 需要工具: 1. 文本编辑器(如果有Notepad++或者UltraEdit就更好了) 2.  汇编器(如MASM.exe) 3.  连接器(对应的link.exe) 为了省略盘符转换,我在电脑的F盘中建立了myASM这个文件夹,并把Windows系统的c