简单的汇编程序编写

专业文档是百度文库认证用户/机構上传的专业性文档文库VIP用户或购买专业文档下载特权礼包的其他会员用户可用专业文档下载特权免费下载专业文档。只要带有以下“專业文档”标识的文档便是该类文档

VIP免费文档是特定的一类共享文档,会员用户可以免费随意获取非会员用户需要消耗下载券/积分获取。只要带有以下“VIP免费文档”标识的文档便是该类文档

VIP专享8折文档是特定的一类付费文档,会员用户可以通过设定价的8折获取非会員用户需要原价获取。只要带有以下“VIP专享8折优惠”标识的文档便是该类文档

付费文档是百度文库认证用户/机构上传的专业性文档,需偠文库用户支付人民币获取具体价格由上传人自由设定。只要带有以下“付费文档”标识的文档便是该类文档

共享文档是百度文库用戶免费上传的可与其他用户免费共享的文档,具体共享方式由上传人自由设定只要带有以下“共享文档”标识的文档便是该类文档。

}

汇编执行指令是机器指令的符号囮表示其操作码用记忆符表示,地址码直接用标号、变量名字、常数等表示汇编执行指令经简单的汇编程序翻译为机器指令,二者之間基本上保持一一对应的关系汇编伪指令又称作汇编指示,用于向简单的汇编程序提供用户自定义的符号、数据的类型、数据空间的长喥以及

的格式、存放位置等提示性信息,其作用是指示简单的汇编程序如何进行汇编使用汇编语言编写的源代码,需要通过使用相应嘚简单的汇编程序将它们转换成可执行的机器代码这一过程被称为汇编过程。

许多简单的汇编程序可以识别代表地址和常量的标签(label)囷符号(symbols)这样就可以用字符来代表操作数而无需采取写死的方式。普遍地说特定的汇编语言和特定的机器语言指令集是一一对应的。

许多简单的汇编程序为程序开发、汇编控制、辅助调试提供了额外的支持机制有的汇编语言编程工具经常会提供宏,它们也被称为宏彙编器

汇编语言不像其他大多数的程序设计语言一样被广泛用于程序设计;在实际应用中,它通常被应用在底层硬件操作和高要求的程序优化的场合驱动程序、嵌入式操作系统和实时运行程序都需要汇编语言

简单的汇编程序的雏型是在电子离散时序自动计算机 EDSAC上研制成功的。这种系统的特征是用户程序中的指令由单字母指令码、十进制地址和终结字母组成第一个简单的汇编程序是符号优化简单的汇编程序(SOAP)系统,它是50年代中期为IBM650计算机研制的这种计算机用磁鼓作

,每条指令指出后继指令在磁鼓中的位置当初研制SOAP系统的动机不是引入

嘚符号化特色,而是为了集中解决指令在磁鼓中合理分布的问题以提高程序的运行效率。IBM704计算机的符号简单的汇编程序(SAP)是简单的汇编程序发展中的一个重要里程碑此后的简单的汇编程序大都以这一系统为模型,其主要特征未发生本质的变化随着计算机

的高速发展和广泛应用,简单的汇编程序又吸收了宏加工程序、高级语言

等系统的一些优点相继研制出宏简单的汇编程序、高级简单的汇编程序

简单简單的汇编程序 又称“装入并执行”式简单的汇编程序。由于简便而得到广泛使用这种简单的汇编程序的特点是汇编后的机器语言程序直接放在内存之中准备执行。

所占据的存储位置是在汇编时固定的并且以后不能改变,所以这种工作方式不能将多个独立汇编的子程序合並为一个完整的程序而且只能调用位置与目标程序不冲突的程序库中的子程序。

模块简单的汇编程序 为适应模块程序设计方法而研制的它除了克服简单简单的汇编程序的缺点之外,还提供并行设计、编码和调试不同

的能力而且更改程序时只更改有关的模块即可。每个彙编后的

称为目标模块多个目标模块经连接装配程序组合成一个完整的可执行的程序。

条件简单的汇编程序 主要特点是具有选择汇编某些程序段的能力它适用于编写选择性较大的程序或程序包,以便根据用户的需要和设备的配置情况剪裁、编制适当的

通常要引入“条件轉移”、“转移”等汇编指示以便根据用户指定的汇编条件有选择地汇编某些程序段或控制简单的汇编程序的加工路径。

宏简单的汇编程序 主要特点是在简单的汇编程序中增加宏加工功能它允许用户方便地定义和使用

,适用于程序中多处出现、具有一定格式、可以通过尐数参数调节改变的程序段落的场合采用这种方法不仅减少程序的长度,增加可读性而且程序段落的格式需要改变时,只须改动定义處而不必改动每一使用处。

高级简单的汇编程序 采用高级

的控制语句结构的简单的汇编程序它不仅保持

表达能力强、程序运行效率高嘚优点,而且能充分吸收高级语言书写简单和易读的长处这是由于高级简单的汇编程序允许用户使用高级

的控制语句(如条件语句、循环語句、函数和过程)编写程序中的控制部分,而且还允许用户直接利用

直接控制存储分配、存取

硬件描述高级语言难于表达的算法。第一個高级简单的汇编程序是N.沃思为IBM360系统研制的PL/360语言简单的汇编程序其特点是程序的控制部分采用高级语言的控制语句编写,而数据加工部汾采用IBM360汇编指令编写自此以后,又相继出现了类似ALGOL的简单的汇编程序类似FORTRAN的简单的汇编程序FAT

的指令与机器语言的指令大体上保持一一對应的关系,汇编算法采用的基本策略是简单的通常采用两遍扫描源程序的算法。第一遍扫描源程序根据符号的定义和使用收集符号嘚有关信息到符号表中;第二遍利用第一遍收集的符号信息,将源程序中的符号化指令逐条翻译为相应的机器指令具体的翻译工作可归納为如下几项:用机器操作码代替符号操作;用数值地址代替符号地址;将常数翻译为机器的内部表示;分配指令和数据所需的

。除了上述的翻译工作外简单的汇编程序还要考虑:处理伪指令,收集程序中提供的汇编指示信息并执行相应的功能。为用户提供信息和源程序清单汇编的善后处理工作,随目标语言的类型不同而有所不同有的直接启动执行,有的先进行连接装配如果具有条件汇编、宏汇編或高级汇编功能时,也应进行相应的翻译处理

中规定符号的应用一定出现在定义之后,则两遍算法可容易地合并成一遍算法加以实现

源程序。检查语法的正确性如果正确,则将源程序翻译成等价的二进制或浮动二进制的机器语言程序并根据用户的需要输出源程序囷

的对照清单;如果语法有错,则输出

指明错误的部位、类型和编号。最后对已汇编出的

CPU 只负责计算,本身不具备智能你输入一条指令(instruction),它就运行一次然后停下来,等待下一条指令

这些指令都是二进制的,称为操作码(opcode)比如加法指令就是。编译器的作用就是将高级语言写好的程序,翻译成一条条操作码

对于人类来说,二进制程序是不可读的根本看不出来机器干了什么。为了解决可讀性的问题以及偶尔的编辑需求,就诞生了汇编语言

汇编语言是二进制指令的文本形式,与指令是一一对应的关系比如,加法指令寫成汇编语言就是 ADD只要还原成二进制,汇编语言就可以被 CPU 直接执行所以它是最底层的低级语言

  • 1. 李兆鹏 陈意云 葛 琳 华保健. 一种简单的汇編程序的形式验证框架[J]. 计算机研究与发展, 2008,
  • 2. 王学东, 汪文勇. 简单的汇编程序覆盖测试中虚拟插桩的实现[J]. 计算机工程, ):87-88.
}

我要回帖

更多关于 简单的汇编程序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信