第4章佑指令及汇编语言源程序结构 就是伪指令语句,其功能是在内存中设置3个存储单元,单元的 名字分别是: BUFFERA、 BUFFERB和SUM。 BUFFERA、 BUFFERB的初 值是35H和123AH,而SUM单元未定义初值。 宏指令语句——由若干条指令语句形成的语句。一条宏指 令语句的功能相当于若干条指令语句的功能。宏指令语句实际 上是一个指令序列,汇编时产生对应的目标代码序列
第4章 伪指令及汇编语言源程序结构 就是伪指令语句,其功能是在内存中设置3个存储单元,单元的 名字分别是:BUFFERA、BUFFERB和SUM。BUFFERA、BUFFERB的初 值是35H和123AH,而SUM单元未定义初值。 宏指令语句——由若干条指令语句形成的语句。一条宏指 令语句的功能相当于若干条指令语句的功能。宏指令语句实际 上是一个指令序列,汇编时产生对应的目标代码序列
第4章佑指令及汇编语言源程序结构 注释语句——以分号“;”开始的说明性语句,汇编程序 不予以处理,只起注释作用,使程序易于理解 空行语句——为保持程序书写清晰,仅包含回车换行符的 句行 注意:有关逻辑段的定义和说明伪指令,以及其他伪指令/ 指令语句的格式与参数规定等,因汇编程序的类型和版本不同 而有所不同
第4章 伪指令及汇编语言源程序结构 注释语句——以分号“ ; ”开始的说明性语句,汇编程序 不予以处理,只起注释作用,使程序易于理解。 空行语句——为保持程序书写清晰,仅包含回车换行符的 语句行。 注意:有关逻辑段的定义和说明伪指令,以及其他伪指令/ 指令语句的格式与参数规定等,因汇编程序的类型和版本不同 而有所不同
第4章佑指令及汇编语言源程序结构 (4)80x86汇编语言源程序一般具有数据段、附加数据髟 堆栈段和代码段。但是,根据程序的实际情况,堆栈段、数据 段和附加段也可以没有;只有代码段是必不可少的,每个程序 至少必须有一个。当然,对于复杂、庞大的源程序,这几种逻 辑段也分别允许定义多个。不过允许同时使用的段则是有限定 的:8086/8088只允许同时使用4个段,即堆栈段(SS)、数据段 (DS)、附加段(ES)和代码段(CS)各一个;80486允许同时使用6 个段,即除以上4个段外,还可有FS和GS两个附加数据段。在 8086和实地址方式下,每个段的大小可以是1~64KB;而在保 护方式下,80486允许4GB
第4章 伪指令及汇编语言源程序结构 (4) 80x86汇编语言源程序一般具有数据段、附加数据段、 堆栈段和代码段。但是,根据程序的实际情况,堆栈段、数据 段和附加段也可以没有;只有代码段是必不可少的,每个程序 至少必须有一个。当然,对于复杂、庞大的源程序,这几种逻 辑段也分别允许定义多个。不过允许同时使用的段则是有限定 的:8086/8088只允许同时使用4个段,即堆栈段(SS)、数据段 (DS)、附加段(ES)和代码段(CS)各一个;80486允许同时使用6 个段,即除以上4个段外,还可有FS和GS两个附加数据段。在 8086和实地址方式下,每个段的大小可以是1~64 KB;而在保 护方式下,80486允许4 GB
第4章佑指令及汇编语言源程序结构 (5)由于段寄存器说明伪指令只说明了各段寄存器与逻 段的关系,并没有设置段寄存器的初值,所以在源程序中,除 代码段CS(有时还有堆栈段SS)外,其他所有定义的段寄存器的 初值都要在程序代码段的起始处由用户自己设置,以建立这些 逻辑段的可寻址性。 (6)每个源程序在其代码段中都必须含有返回到DS操作系 统的指令语句,以保证程序执行完后能自动返回DOS状态,可继 续向计算机键入命令或程序。终止当前程序,使其正确返回DOS 状态的方法通常有以下四种:
第4章 伪指令及汇编语言源程序结构 (5) 由于段寄存器说明伪指令只说明了各段寄存器与逻辑 段的关系,并没有设置段寄存器的初值,所以在源程序中,除 代码段CS(有时还有堆栈段SS)外,其他所有定义的段寄存器的 初值都要在程序代码段的起始处由用户自己设置,以建立这些 逻辑段的可寻址性。 (6) 每个源程序在其代码段中都必须含有返回到DOS操作系 统的指令语句,以保证程序执行完后能自动返回DOS状态,可继 续向计算机键入命令或程序。终止当前程序,使其正确返回DOS 状态的方法通常有以下四种:
第4章佑指令及汇编语言源程序结构 ①采用DOS4CH号功能调用。这种方法在代码段结束前加 调用语句: MOV AH, 4CH ;功能号4CH→AH INT 21H ;中断调用 这种方法在前面的源程序结构中我们已使用过。这是返回DOS最 有效且兼容性最好的一种方法
第4章 伪指令及汇编语言源程序结构 ① 采用DOS 4CH号功能调用。这种方法在代码段结束前加 调用语句: MOV AH,4CH ;功能号4CH→AH INT 21H ;中断调用 这种方法在前面的源程序结构中我们已使用过。这是返回DOS最 有效且兼容性最好的一种方法