news 2026/4/15 18:16:16

34、能源感知参数传递:按需参数传递策略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
34、能源感知参数传递:按需参数传递策略

能源感知参数传递:按需参数传递策略

1. 引言

集成电路能耗问题日益严峻,解决该问题需多领域协同。电路、架构、操作系统、应用程序和编译器等方面虽有进展,但编程语言对低功耗的支持也至关重要。编程语言定义了应用程序与执行环境的接口,影响编译器优化和运行时系统对架构特性的利用。然而,目前从能耗角度评估不同语言特性的研究较少。

参数传递机制是参数在被调用子程序间传递的方式,每种编程语言支持的机制有限。在嵌入式系统编程常用的 C 语言中,参数在子程序执行前就会完成评估,这种早期参数评估虽便于实现,但如果子程序未使用该参数,会导致冗余计算。

为解决此问题,本文提出了一种能源感知的参数传递机制——按需参数传递。该机制仅在子程序实际使用形式参数时,才计算对应的实际参数值。其借助编译器将实际参数值的计算推迟到形式参数实际使用的位置,不仅消除实际参数值的计算,还消除所有与之相关的无用计算。

2. 参数传递机制回顾

子程序是实现控制和数据抽象的重要编程结构,其与其他代码的接口通过子程序名和参数体现。子程序头列出的参数为形式参数,调用语句中的参数为实际参数。典型实现中,子程序调用时,实际参数会被计算并通过参数访问路径传递给形式参数,执行结束后,形式参数的值可能通过参数返回路径复制回实际参数。

C 语言有两种参数传递机制:
-按值传递(CBV):默认机制,传递参数时,计算实际参数的值并复制给形式参数,增加了存储开销,且子程序执行过程中不会修改实际参数的值,可用于单向通信场景。
-按引用传递(CBR):实际参数和形式参数共享同一位置,调用时传

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/11 8:43:17

EpicGames免费游戏自动领取终极指南:一键操作全攻略

EpicGames免费游戏自动领取终极指南:一键操作全攻略 【免费下载链接】epicgames-freebies-claimer Claim available free game promotions from the Epic Games Store. 项目地址: https://gitcode.com/gh_mirrors/ep/epicgames-freebies-claimer Epic Games每…

作者头像 李华
网站建设 2026/4/11 4:00:37

39、博客应用管理功能开发与实现

博客应用管理功能开发与实现 1. 禁用管理员功能 在应用程序中,为了确保未登录用户无法访问管理员功能,我们需要隐藏提供管理功能的按钮,如“Add new post”、“Edit”和“Delete”按钮。具体实现步骤如下: - 添加布尔变量 :在 BlogCode.as 文件中添加一个可绑定的布…

作者头像 李华
网站建设 2026/4/14 17:50:26

从零实现软件激活系统:激活码分发、设备绑定与数量限制完整方案

前言 最近在做一个商业软件项目,需要实现完整的软件授权管理功能。研究了一圈市面上的方案,要么太重(动不动就要部署一堆服务),要么收费太贵。索性自己撸一套,踩了不少坑,这里把整个实现过程记录下来,希望能帮到有类似需求的朋友。 本文将实现以下功能: 激活码生成与…

作者头像 李华
网站建设 2026/4/12 12:05:34

基于Spring Boot和Vue的多通道支付网关系统设计与实现

基于Spring Boot和Vue的多通道支付网关系统设计与实现 多通道支付网关系统:毕业设计的理想选择与全栈开发实践 在当今数字化时代,支付系统已成为各类应用的核心组件,无论是电商平台、在线服务还是企业应用,都离不开高效、安全的…

作者头像 李华
网站建设 2026/4/13 12:53:50

投资组合分析工具的终极指南:用量化方法提升投资决策能力

投资组合分析工具的终极指南:用量化方法提升投资决策能力 【免费下载链接】pyfolio Portfolio and risk analytics in Python 项目地址: https://gitcode.com/gh_mirrors/py/pyfolio 作为一名投资者,你是否曾面临这样的困惑:明明收益率…

作者头像 李华