第5章 高级汇编语言程序设计
第 5 章
教学重点 在掌握基本的汇编语言程序 设计方法之后,进一步学习 如何提高编程效率的各种实 用方法: 高级汇编语言猩序设计 √高级语言特性 √宏结构 √模块化
教学重点 在掌握基本的汇编语言程序 设计方法之后,进一步学习 如何提高编程效率的各种实 用方法: ✓高级语言特性 ✓宏结构 ✓模块化
第5章 5.1高级语言特性 >MASM60引入高级语言的程序设计 特性 条件控制伪指令 IF ELSE ENDIF ■循环控制伪指令 WHILEENDW REPEAT UNTIL ■过程声明和过程调用伪指令 PROTO NVOKE
第 5 章 5.1 高级语言特性 ➢MASM 6.0引入高级语言的程序设计 特性 ◼条件控制伪指令 .IF .ELSE .ENDIF ◼循环控制伪指令 .WHILE .ENDW .REPEAT .UNTIL ◼过程声明和过程调用伪指令 .PROTO .INVOKE
第5章 5.1.1条件控制伪指令 类似高级语言中、THEN、ELSE和 ENDF的相应功能 >在汇编时要展开,自动生成相应的比较和条 件转移指令序列,实现程序分支 F条件表达式;条件为真(值为非0) 分支体 执行分支体 ELSE ;前面条件为假 分支体 执行分支体] ;分支结束 条件 ENDIF
第 5 章 5.1.1 条件控制伪指令 ➢类 似 高 级 语 言 中 IF 、 THEN 、 ELSE 和 ENDIF的相应功能 ➢在汇编时要展开,自动生成相应的比较和条 件转移指令序列,实现程序分支 .IF 条件表达式 ;条件为真(值为非0) 分支体 ;执行分支体 [ .ELSE ;前面IF条件为假 分支体 ;执行分支体 ] .ENDIF ;分支结束 条件
;单分支结构 ∝例题 工FAx<0 ;双分支结构 工Eax==5 neg ax END工 cmp ax,05h 大 mov result ax Jne @C0001 ;双分支结构 mov ox ax 工Fax==5 mov ax, o ELSE mov bx ax mov ax, o jmp @C0003 ELSE ★⑧C0001: dec ax dec ax 。END工E END工F ★C0003:
;单分支结构 .IF AX < 0 neg ax .ENDIF mov result,ax ;双分支结构 .IF ax==5 mov bx,ax mov ax,0 .ELSE dec ax .ENDIF ;双分支结构 .IF ax==5 * cmp ax,05h * jne @C0001 mov bx,ax mov ax,0 .ELSE * jmp @C0003 *@C 0001 : dec ax .ENDIF *@C0003: 例题