Tcl脚本笔记

1. 前言

Tcl脚本语言,在FPGA的开发中经常被用到,什么是Tcl脚本语言,Tcl脚本语言有何优点,如何开发Tcl脚本语言。是FPGA工程师必须掌握的技能。

2. 参考博文

  1. Tcl脚本入门笔记详解(1) 一点一点的进步

3. 什么是Tcl脚本语言

  • Tcl全名Tool Command Language,是一种解释执行的脚本语言(解释执行就是边解释边执行,区别于编译)。
  • 包括两个部分:一个语言和一个库。
  • 语言是指: Tcl是一种简单的脚本语言,主要使用命令给一些交互程序如文本编辑器,调试器和shell。
  • 库是指:由于TCL的解释器是用C\C++语言的过程库实现的,因此在某种意义上又可以把TCL看作C库。

4. 基本语法

[命令 字符串 #注释]

set a 1 #设置参数a=1;

对于Tcl来说,说有的变量都是字符串

Tcl解释器一般分两步:分析和执行。

set x 10 ;   #定义变量x,并把x的值赋为10
10
set y x+100 ;#y的值是x+100,而不是我们期望的110
x+100

如果想要带入x的值要使用置换
置换有三种:

  1. 变量置换
  2. 命令置换
  3. 反斜杠置换

变量置换

set y $x+100; #y的值是10+100,这里x被置换成它的值10
10 + 100

命令置换

set y [expr $x+100];
110

[]中的内容是一个完整的命令,计算完[]括号中的结果会给y。

反斜杠置换
类似于C语言中的转义符,把\后面的内容当做符号。

set msg multiplex\ space;         #msg的值为multiple space。
multiple space

双引号和花括号
除了使用反斜杠外,TCL提供另外两种方法来使得解释器把分隔符和置换符等特殊字符当作普通字符,而不作特殊处理,这就要使用双引号 " " 和花括号 {} 。

set y "$x ddd";
100 ddd

5. 变量

变量的名字可以是任意字符串,tcl变量可以直接赋值无需声明。

set a 2		#设置a的值为2
2 
set a.1 4;	#设置a.1的值为4
4   
set b $a.1; 
2.1
set b ${a.1}#使用{}能使用a.1整体的值
4



set a {kdfj kjdf}  #变量a的值是kdfj kjdf   
set a              #省略变量名后的参数时,读取变量a的值
kdfj kjdf

6. 数组

set day(monday) 1; #生成一个名为 day 的数组 , 同时在数组中生成 一个名为monday的数组元素,并把值置为1
set day(tuesday) 2;	#生成一个名为tuesday的数组元素,并把值置为2

7. 常见命令

  1. unset 删除变量,可以一次性删除多个
unset a b day(monday);
  1. append 把一个文本加到变量后面
set txt hello;    #hello
append txt"! How are you";   #hello! How are you
  1. incr命令把一个变量值加上一个整数。incr要求变量原来的值和新加的值都必须是整数。
set b 2; incr b 3;   #结果为5
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bigbeea

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值