
【计】 open subprogram; open subroutine
由于未搜索到可引用的权威来源,以下为基于计算机科学术语的通用解释:
开型子程序(Open Subroutine)
在编程领域指宏指令(Macro),其代码在编译/汇编时被直接展开并插入到每次调用的位置。与闭型子程序(函数/过程)不同,开型子程序不会产生调用开销,但会导致代码重复。例如:
; 汇编语言宏示例(开型子程序)
MACRO AddTwo a, b
MOV AX, a
ADD AX, b
ENDM
; 调用时展开为:
AddTwo 5, 3
; → 编译后实际代码:
MOV AX, 5
ADD AX, 3
核心特征对比
特性 | 开型子程序(宏) | 闭型子程序(函数) |
---|---|---|
实现方式 | 预处理时代码展开 | 执行时跳转至独立代码段 |
内存占用 | 每次调用复制代码 | 代码仅存储一次 |
执行效率 | 无调用开销,速度快 | 存在栈操作开销 |
调试难度 | 展开后难追踪 | 易于定位错误 |
典型应用 | 汇编语言、性能关键代码段 | 结构化编程、代码复用 |
术语来源说明
"开型/闭型"源于早期计算机科学对子程序实现方式的分类(如Wilkes, Wheeler和Gill 1951年著作《The Preparation of Programs for an Electronic Digital Computer》)。现代术语中:
注:因未检索到可引用的权威在线词典资源,本文解释依据《计算机程序设计艺术》(Knuth, D.E.)第1卷1.4.1节关于子程序的分类标准,以及《现代编译原理》(Andrew W.Apple)对宏实现的描述。建议通过IEEE Xplore或ACM Digital Library查询"macro vs subroutine"获取学术定义。
关于“开型子程序”这一术语,目前公开资料中并无明确定义,但结合编程领域的子程序特性及上下文语境,可推测其可能指向以下两种解释方向:
若“开型”对应编程中“开放参数”的特性,则可能指无需参数传递或参数作用范围受限的子程序。例如:
若“开型”强调代码展开形式,则可能指调用时直接嵌入主程序的子程序,例如:
需注意以下两点:
若需进一步探讨,建议提供术语出现的具体技术文档或上下文。
百金花碱绑腿半脱位变动性不合不履行法律义务电视广播电子天平二苯哌酯分次式配砂场粉化盖革穆勒尔区域汞齐板刮痕过帐豁免捐税假性阿盖耳·罗伯逊氏瞳孔锯叶棕果可实施的政治空蚀醌亚胺沥青铺路油犁头强肌松人手不足的热浴首轮司法行为