技成培训网论坛

 找回密码
 立即注册
打印 上一主题 下一主题
开启左侧

带参数的子程序调用

[复制链接]
跳转到指定楼层
楼主
发表于 2023-2-6 14:38:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式   来自:113.116.224.171

您正在浏览的页面需要登录,为了提高您的阅读体验,请在右上角登录您的账号!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
子程序中可以有参变量,带参数的子程序调用扩大了子程序的使用范围,增加了调用的灵活性。子程序的调用过程如果存在数据的传递,则在调用指令中应包含相应的参数。
1)子程序参数
子程序最多可以传递16个参数。参数在子程序的局部变量表中加以定义。参数包含下列信息:变量名、变量类型和数据类型。
(1)变量名变量名最多用8个字符表示,第一个字符不能是数字。
(2)变量类型变量类型是按变量对应数据的传递方向来划分的,可以是传入子程序(IN)、传入/传出子程序(IN/OUT)、传出子程序(OUT)和暂时变量(TEMP)四种类型。四种变量类型的参数在变量表中的位置必须按以下先后顺序:
①IN类型传入子程序参数。所接的参数可以是直接寻址数据(如VBI00)、间接寻址数据(如AC1)、立即数(如16#2344)和数据的地址值(如&VBI06)
②IN/OUT类型:传入/传出子程序参数。调用时将指定参数位置的值传到子程序,返回时从子程序得到的结果值被返回到同一地址。参数可以采用直接和间接寻址,但立即数(如16#1234)和地址值(如&VBl00)不能作为参数。
③OUT类型:传出子程序参数。它将从子程序返回的结果值送到指定的参数位置。输出参数可以采用直接和间接寻址,但不能是立即数或地址编号。
④TEMP类型:暂时变量类型。在子程序内部暂时存储数据,不能用来与主程序传递参数数据。
(3)数据类型局部变量表中还要对数据类型进行声明。数据类型包括:能流,布尔型,字节、字和双字型,整数、双整数型以及实型。
①能流:仅允许对位输入操作,是位逻辑运算的结果。在局部变量表中,布尔能流输入处于所有类型的最前面。
②布尔型:布尔型用于单独的位输入和输出。
③字节、字和双字型:这三种类型分别声明一个1字节、2字节和4字节的无符号输入或输出参数。
④整数、双整数型:这两种类型分别声明一个2字节或4字节的有符号输入或输出参数。
⑤实型:该类型声明一个IEEE标准的32位浮点参数。
2)参数子程序调用的规则
常数参数必须声明数据类型。例如,把值为223344的无符号双字作为参数传递时,必须用DW#223344来指明。如果缺少常数参数的这一描述,常数可能会被当作不同类型使用。
输入或输出参数没有自动数据类型转换功能。例如,局部变量表中声明一个参数为实型,而在调用时使用一个双字,则子程序中的值就是双字。参数在调用时必须按照一定的顺序排列,先是输入参数,然后是输入输出参数,最后是输出参数。
3)变量表使用
按照子程序指令的调用顺序,参数值分配给局部变量存储器,起始地址是L0.0。使用编程软件时,地址分配是自动的。在局部变量表中要加入一个参数,右击要加入的变量类型区可以得到一个选择菜单,选择“插入”,然后选择“下一行”即可。局部变量表使用局部变量存储器。当在局部变量表中加入一个参数时,系统自动给各参数分配局部变量存储空间。参数子程序调用指令格式:CALL子程序,参数 I,参数2,.,参数n.局部变量分配见表3-16,带参数调用子程序示例如图3-18所示。

2
发表于 2023-2-6 15:21:51 | 只看该作者   来自:113.116.224.171
[五星]很好
3
发表于 2023-2-6 15:42:36 | 只看该作者   来自:113.116.224.171
期待更新!!
4
发表于 2023-2-7 15:06:55 | 只看该作者   来自:113.116.224.171
了解了解
5
发表于 2023-2-7 15:25:02 | 只看该作者   来自:113.116.224.171
小时候学习,现在工作了还得学习
6
发表于 2023-2-7 16:00:27 | 只看该作者   来自:113.116.34.187
通俗易懂逻辑清晰和颜悦色棒
7
发表于 2023-2-10 15:33:19 | 只看该作者   来自:113.116.224.171
谢谢大佬分享
8
发表于 2023-2-10 16:00:15 | 只看该作者   来自:113.116.224.171
奥利给
9
发表于 2023-2-10 17:06:26 | 只看该作者   来自:113.116.34.187
好好学习天天向上
10
发表于 2023-2-13 17:01:58 | 只看该作者   来自:113.116.224.27
学习中
11
发表于 2023-2-13 17:23:39 | 只看该作者   来自:113.90.3.111
简单易懂
12
发表于 2023-2-14 10:53:43 | 只看该作者   来自:113.90.3.219
谢谢分享
13
发表于 2023-2-14 14:08:26 | 只看该作者   来自:113.90.1.137
学习学习
此软件“仅限学习交流”,如用于商业用途,请到官方购买正版软件,追究法律责任与“技成培训网”无关!
本站仅提供软件下载,不提供软件安装、破解等指导服务。
您需要登录后才可以回帖 登录 | 立即注册

本版技能点规则

小黑屋|技成培训网论坛   粤ICP备11069432号-1

GMT+8, 2024-4-26 05:15

Powered by jcpeixun X3.3

© 2007-2024 深圳市技成科技有限公司

快速回复 返回顶部 返回列表