汇编语言子程序是如何定义的?

汇编语言子程序是如何定义的?,第1张

这样定义的:

子程序名 PROC     NEAR|FAR

             .

              .

            RET

子程序名 ENDP

子程序名相当于标号,表示本过程的符号地址。过程有NEAR和FAR两种类型,FAR型的过程可供段间调用,NEAR型过程仅供段内调用。

在一个过程中,至少要有一条返回指令RET,它可以书写在过程中的任何位置,但是过程执行的的最后一条指令一定是RET。

扩展资料:

注意事项

一、子程序调用指令

格式:CALL   [NEAR PTR]    子程序名

CALL指令的两个作用,1.将断点地址(CALL指令的下一条指令地址)压栈保存,2.转去子程序执行。

[NEAR PTR]可以省略。

二、返回指令

格式:RET     [N]

指令作用:实现子程序执行完后返回主程序的指令。从堆栈栈顶d出一个字数据(段内调用)送入IP作为返回地址。N是立即数,执行完RET之后,再将SP增加N,也叫“平栈”。

子程序名:窗口_置标题

改指定窗口句柄的窗口标题(非"0"表示成功,返回"0"表示失败)

返回值类型:逻辑型

参数<1>的名称为“窗口句柄”,类型为“整数型”。注明:欲更改窗口标题的句柄。

参数<2>的名称为“新标题”,类型为“文本型”。注明:欲改成的新标题。

窗口_置标题

(进程_名取句柄

(“notepad.exe”),

“测试:我爱你99白羊!”)

我这里测试的进程是notepad.exe

记事本的进程

测试截图:

望采纳!

子程序名(参数)

对于子程序,参数相当于一个变量,可以由调用子程序的过程进行赋值,然后用返回命令退出子程序,并且产生一个数值.

返回(123)

这样就可以让"子程序名"的值等于123

当然也可以做一些较复杂的计算过程,获得你想要的返回值.

当然这些也可以省略,也许你的子程序只是为了实现某种过程,不需要有返回值,也是可以的.

一个典型的子程序

.版本

2

.子程序

_按钮1_被单击

编辑框1.内容

到文本

(三数求和

(1,

2,

3))

.子程序

三数求和,

整数型

.参数

a,

整数型

.参数

b,

整数型

.参数

c,

整数型

返回

(a

b

c)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7869517.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存