第三章-汇编语言程序设计.pptx

  1. 1、本文档共88页,可阅读全部内容。
  2. 2、本文档付费后,不意味着付费购买了版权,只能用于单位或个人使用,不得用于商业用途(如:【转卖】进行直接盈利和【编辑后售卖】进行间接盈利)。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:18428362892(电话支持时间:9:00-19:00)。
会计学;3.1 汇编语言的基本语法;3.1.1 汇编语言源程序结构;1. 标准的单模块源程序框架;3.1.1 汇编语言源程序结构;(4) 将主程序定义为远过程;3.1.2 汇编语言的语句格式;3.1.2 汇编语言的语句格式;●操作数 ;3.1.3 汇编语言的数据 ;3.1.3 汇编语言的数据 ;3.1.3 汇编语言的数据 ; 例3.1 假设VAR1和VAR2为字变量,LAB为程序中的一个标号,判断下列指令是否正确,若错误请指出错误之处:;3.1.4 表达式与运算符; ●数值表达式 指在汇编过程中能够由汇编程序计算出数值的表达式。可作为指令中的立即操作数和数???区中的初值使用。例如: MOV BX,0FFF0H AND 0B234H MOV AL,4CH EQ 2 MOV AH,4CH GT 1 MOV AX,SEG LABLE;3.1.4 表达式与运算符;3.2.1 方式选择伪指令 3.2.2 逻辑段定义伪指令 3.2.3 数据伪指令语句 3.2.4 模块定义伪指令 3.2.5 过程与宏定义伪指令 3.2.6 结构定义伪指令 ;3.2.1 方式选择伪指令;3.3.2 逻辑段定义伪指令;3.3.2 逻辑段定义伪指令;3.3.2 逻辑段定义伪指令;⑵ 段寄存器说明语句 ; 简化段有利于实现汇编语言程序模块与Microsoft高级语言程序模块的连接,它可以由操作系统自动安排段序,自动保证名字定义的一致性。但是命令文件(.COM)的编程不能使用简化段定义。; 使用简化段定义的独立汇编语言源程序框架: DOSSEG .MODEL SMALL .STACK [长度] .DATA … ;数据语句 .CODE 启动标号:MOV AX,@DATA ;或MOV AX,DGROUP MOV DS,AX … ;可执行语句 MOV AH,4CH ;返回DOS INT 21H END 启动标号;3.2.3 数据伪指令语句; 例3.2 赋值语句与等号语句举例。 赋值语句: X EQU 50 Y EQU X +10 COUNT EQU $ - ARRY 等号语句: CON = 5 BASE = 200H ? BASE = BASE + 10H ;重新定义BASE ;2. 数据定义伪指令;使用说明:; ⑵ 使用SEG、OFFSET、TYPE、LENGTH和SIZE运算符求变量的各种属性时,特别要注意: ; 解: 此题有两层DUP定义,但最外层DUP给定的值为100,所以: (BX)= 数组ARRAY的偏移地址; (CX)= 数组ARRAY的长度 = 100; (SI)= 数组ARRAY的类型 = 2。 ; ⑶ 操作符“$”是取地址计数器的当前值,常用于表达式定义数组长度。; ⑷ 使用DB、DW、DD定义串数据(用‘ ’定义的字符串)时,允许定义的串长度不同,字符的存放顺序也不相同:; 例3.6 今需在变量名为STRING的数据区中顺次存放数据‘A’、‘B’、‘C’、‘D’、‘E’、‘F’、‘G’、‘H’,请写出分别用汇编命令DB、DW和DD实现的语句。;3.2.4 模块定义伪指令;3.2.5 过程与宏定义伪指令;格式:过程名 PROC [属性] … ;过程体 [RET] … RET 过程名 ENDP;宏定义格式: 宏名 MACRO [形式参数表] ? ;宏体 ENDM;3.2.5 过程与宏定义伪指令 ; 解:宏定义如下: MOVE MACRO SARY,DARY LOCAL LP MOV SI,0 MOV CX,100 LP: MOV AL,SARY[SI] MOV DARY[SI],AL INC SI LOOP LP ENDM;3. 宏和过程的比较;3.2.6 结构定义伪指令 ;3.2.6 结构定义伪指令 ;语句格式: [变量名] 结构名 〈[域值表]〉 ;3.3 汇编语言程序设计入门;

您可能关注的文档

文档评论(0)

kuailelaifenxian

相关文档

相关课程推荐