下载此文档

汇编语言第6章 子程序结构.ppt


文档分类:IT计算机 | 页数:约26页 举报非法文档有奖
1/26
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/26 下载此文档
文档列表 文档介绍
第6章 子程序结构
 过程定义伪操作
 子程序的调用与返回
 现场保护与恢复
 子程序的参数传送
 子程序的嵌套与递归
1
精选课件
一. 过程定义伪操作
过程名 PROC NEAR ( FAR )
过程名 ENDP
(1)NEAR属性:调用程序和子程序在同一代码段中
(段内调用)
(2)FAR属性:调用程序和子程序不在同一代码段中
(段间调用)
.
.
.
2
精选课件
code segment

main proc far
……
call subr1
……
ret
main endp
subr1 proc near
……
ret
subr1 endp
code ends
segx segment
subt proc far
……
ret
subt endp
……
call subt
……
segx ends
segy segment
……
call far ptr subt
……
segy ends
3
精选课件
:隐含使用堆栈保存返回地址

call near ptr subp
(1) 保存返回地址
(2) 转子程序

call far ptr subp
(1) 保存返回地址
(2) 转子程序
:ret
二. 子程序的调用与返回
(SP)→ (IP)
(IP)
(CS)
(SP)→
4
精选课件
子程序调用和返回指令:
code1 segment
main proc far
……
call far ptr subp
……
ret
main endp
code1 ends
code2 segment
subp proc far
……
ret
subp endp
code2 ends
段间调用和返回
code segment
main proc far
……
call subp
……
ret
main endp
subp proc near
……
ret
subp endp
code ends
段内调用和返回
5
精选课件
例:带立即数返回
(SP)
堆栈段
code segment
main proc far
……
push ax
push bx
push cx
call sub
……
ret
main endp
sub proc near
……
ret 6
sub endp
code ends
(IP)
(cx)
(bx)
(ax)
(SP)
(SP)
6
精选课件
下面程序段是判断寄存器AH和AL中D3位是否相同,如相同,AH置0,。

AND AH,08H

MOV AH,0FFH
JMP NEXT
ZERO:MOV AH,0
NEXT:………
7
精选课件
三. 现场保护与恢复
subt proc far
push ax
push bx
push cx
push dx
……
……
pop dx
pop cx
pop bx
pop ax
ret
subt endp
8
精选课件
子程序的参数传送
原则:
寄 存 器:参数少

汇编语言第6章 子程序结构 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数26
  • 收藏数0 收藏
  • 顶次数0
  • 上传人相惜
  • 文件大小156 KB
  • 时间2021-06-21