【ARM Trace32(劳特巴赫) 使用介绍 2.3 -- TRACE32 进阶命令之 参数传递介绍】

请阅读【ARM Coresight SoC-400/SoC-600 专栏导读】

文章目录

    • [参数传递命令 ENTRY](#参数传递命令 ENTRY)

参数传递命令 ENTRY

cpp 复制代码
ENTRY <parlist>

The ENTRY command can be used to

  • Pass parameters to a PRACTICE script or to a subroutine
  • To return a value from a subroutine

使用示例

c 复制代码
AREA.view
AREA.CLEAR
LOCAL &x
&x=0x25

PRINT "Value of &"+"x before subroutine level 1 = " &x

GOSUB level1 0x55

PRINT "Value of &"+"x after subroutine level 1 = " &x

ENDDO

level1:
(
	ENTRY &x
	IF &x==0x55
	(
		PRINT "par is:" &x
	)
	RETURN
)

运行结果如下:

从上面输出 log 可以看到,变量 x 作为形参传给子函数 level1 的时候,它的值被修改了,那么如如何才能保证它的值不被修改呢?

可以使用 命令 PARMETERS, 如下:

c 复制代码
AREA.view
AREA.CLEAR
LOCAL &x
&x=0x25

PRINT "Value of &"+"x before subroutine level 1 = " &x

GOSUB level1 "0x55"

PRINT "Value of &"+"x after subroutine level 1 = " &x

ENDDO

level1:
(
	ENTRY &x
	IF &x==0x55
	(
		PRINT "par is:" &x
	)
	RETURN
)

注意:传入的参数需要时字符串格式

运行结果如下:

相关推荐
Harbor Lau1 分钟前
Linux常用中间件命令大全
linux·运维·中间件
A阳俊yi2 分钟前
Spring Boot日志配置
java·spring boot·后端
苹果酱05672 分钟前
2020-06-23 暑期学习日更计划(机器学习入门之路(资源汇总)+概率论)
java·vue.js·spring boot·mysql·课程设计
echo17542527 分钟前
Apipost免费版、企业版和私有化部署详解
java
异常君1 小时前
Java 高并发编程:等值判断的隐患与如何精确控制线程状态
java·后端·代码规范
异常君1 小时前
Java 日期处理:SimpleDateFormat 线程安全问题及解决方案
java·后端·代码规范
꧁坚持很酷꧂1 小时前
Linux Ubuntu18.04下安装Qt Craeator 5.12.9(图文详解)
linux·运维·qt
都叫我大帅哥1 小时前
Spring AI中的ChatClient:从入门到精通,一篇搞定!
java·spring·ai编程
都叫我大帅哥1 小时前
《@SpringBootApplication:Spring Boot的"一键启动"按钮,还是程序员的"免死金牌"?》
java·后端·spring
triticale1 小时前
P12167 [蓝桥杯 2025 省 C/Python A] 倒水
java·蓝桥杯