首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

《数字集成电路静态时序分析基础》笔记①

/user/bin/tclsh" window:安装active tcl并双击wish.exe 置换 TCL置换分为三种,变量置换, 变量置换 用表示变量置换,后为变量名,将变量置换为它的值 ?...命令置换 用[]表示命令置换,[]表示一个独立的TCL语句 ? 反斜杠置换 用\表示反斜杠置换,和其他语言一样,把特殊字符当作普通字符对待 ? \t为tab \n换行 ?...变量、数组和列表 变量 定义:set 变量名 变量值 引用:$变量名 ? 例题:假设我们想打印变量varible,后面跟一个“_1",会发生什么? ?...lindex 语法格式 lindex 列表 n 返回列表的第n个元素(从0开始计数) ? 如何得到list1 {a b c d f}的最后一个元素? ?...lappend 语法格式:lappend 列表 新元素 功能:在列表末尾添加新元素 ? lappend一个列表会发什么? ? 如果想得到4,要怎么做? ?

99431

tcl三部曲(二)、变量与列表

(整数、实数、数组、列表、tcl脚本etc.) 变量名 : 变量名由字母数字和下划线构成,遇到非数字、字母、下划线就会停止。...) —end :最后一个字符 —end-整数n:倒数第n个字符【倒序】 如果charIndex小于0或者大于字符串长度,返回空(Null) example: ?...将list中从first到last的元素换成0个或多个元素,该指令可以用来替换、删除元素 ? 6、lset varName ?index…? newValue lset varName ?...把value作为列表元素添加到varName变量中,如果这个变量不存在,就创建它,需要注意的是此处使用list的话不需要$ ? 9、lrepeat number value ?value?...在list中搜索与pattern匹配的一个或多个元素,option选项控制模式匹配方式(-exact/-glob/-regexp),是返回元素值(-inline)还是索引,是搜索所有的匹配(-all)还是值搜索最先出现的匹配等

1.8K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    tcl三部曲(三)、数组、流控制与函数

    数组是元素的集合,每一个元素是由自己的名称和值的变量(变量的组成:变量名和变量值)。 数组元素的名称由两部分组成:数组名和数组中的元素名。数组名和元素名都可以是任意类型的字符串。...数组元素使用如month(May)这样的形式,即数组名(此处是month)加上圆括号中的元素名(这里是May)。可以使用简单变量的地方都可以使用数组,例如set命令: ?...rfile_handle close $wfile_handle 关闭读写文件 流控制之foreach 格式一: foreach varname list body varname是一个变量,list是一个列表...body varname是一个变量,list是一个列表,body是循环体 example1: ?...把value作为列表元素添加到varName变量中,如果这个变量不存在,就创建它,需要注意的是此处使用list的话不需要$ 第一种 ?

    2.1K20

    Perl语言入门系列之二

    \n"; } 运行结果如下所示: 实际上,控制变量就是动态的列表或者数组,对控制变量的操作会改变列表或数组元素,这也是foreach的强大之处,而当循环结束之后,控制变量会被自动还原为循环之前的值,如果之前没有赋值...\n"; 这时候运行结果如下所示: Perl的内置警告提示我们拼错的变量名berney在代码中只出现了一次,因此很可能是一个错误的变量。...@_,这时第一个参数为$_[0],第二个为$_[1]…该变量仅可在子程序内部使用。...事实上,my私有变量设置不只是在子程序中,也可以是在if、while、foreach的语块中,事实上,在日常编程中最好对每个新变量都是用my声明,使其保持在自己所在的模块区域内,对Perl 5.10以上的版本尤为如此...⑵each函数 each函数每次访问哈希都会以包含两个元素的列表的形式返回键-值对,直到遍历每一个哈希元素,这在需要逐项处理哈希元素时十分有用。

    1.3K30

    小白入门笔记:CMake编译过程详解

    另一个需要注意的点在于,环境变量在启动CMake进程后会基于CMake在配置阶段中收集的信息在CMake生成阶段生成环境变量的副本,该副本会在单一的、全局的作用域中可用。... 表达式,则执行第一部分的,如上例第2行部分,否则,CMake 将在属于该块中满足条件的第一个elseif() 指令节中执行命令。...endforeach() 上述示例中是声明了MY_LIST的列表变量为【1,2,3】,在foreach循环中会获取MY_LIST中的所有元素和中的e、f值,存储在VAR中,在每一次循环中命令指令就是打印...IN ZIP_LISTS ) 在压缩列表中CMake 将为每个提供的列表创建一个num_N> 变量,用每个列表中的项填充该变量。...同时,除了使用CMake自动创建的num_N> 变量,用户也可以自定义传递多个 变量名(每个列表一个),每个列表将使用单独的变量来存储,详细见下: //声明两个具有相同数量元素的list

    6.6K31

    Java8新特性

    执行代码块:包含在一对大括号中,出现在操作符的右侧 2.2.2 变量的访问操作 1.匿名内部类: 说明:在匿名内部类中,this代表的是匿名内部类,而不是LambdaApp这个类 public class...-->MyInterface.strategy(T t,R r),strategy函数需要一个T类型和一个R类型, 我们在把MyInterface当作类型传递给参数时,确定了它的T类型和R类型,确定了它的...总结:JVM会根据代码在运行过程中的上下文进行检测,在这里test需要一个MyInterface类型的参数,在调用test时我们传递了一个lambda表达式, MyInterface就是lambda...extends R>> mapper); //有一个字符串数组:其有三个元素,每个元素有两个数组并用空格隔开,如果每个元素以空格分割成2个元素,并遍历打印这6个元素 List list...(System.out::println); //用map()方法返回了一个“流中流”,需要在每个Stream元素遍历时,再加一层forEach进行遍历 list.stream().map

    1.1K00

    01.Scala:开发环境搭建、变量、判断、循环、函数、集合

    NOTE] scala中定义变量类型写在变量名后面 scala的语句最后不需要添加分号 4. 2在解释器中定义一个变量 示例:定义一个变量保存一个人的名字"tom" 步骤 打开scala解释器 定义一个字符串类型的变量用来保存名字...语法格式: lazy val/var 变量名 = 表达式 示例 在程序中需要执行一条以下复杂的SQL语句,我们希望只有用到这个SQL语句才加载它。...scala中,使用{}表示一个块表达式 和if表达式一样,块表达式也是有值的 值就是最后一个表达式的值 问题 请问以下代码,变量a的值是什么?...NOTE] 在scala中,数组的泛型使用[]来指定 使用()来获取元素 示例一 定义一个长度为100的整型数组 设置第1个元素为110 打印第1个元素 参考代码 scala> val...使用Nil创建一个不可变的空列表 val/var 变量名 = Nil 使用::方法创建一个不可变列表 val/var 变量名 = 元素1 :: 元素2 :: Nil [!

    4.1K20

    python中for循环的用法-Python for循环及基础用法详解

    for 循环的语法格式如下: for 迭代变量 in 字符串|列表|元组|字典|集合: 代码块 格式中,迭代变量用于存放从序列类型变量中读取出来的元素,所以一般不会在循环中对迭代变量手动赋值;代码块指的是具有相同缩进格式的多行代码...总之,在使用 range() 函数时,如果只有一个参数,则表示指定的是 end;如果有两个参数,则表示指定的是 start 和 end。 大家也可以根据需要写代码测试一下。...不仅如此,程序中还使用了 Python 的 isinstance() 函数,该函数用于判断某个变量是否为指定类型的实例,其中前一个参数是要判断的变量,后一个参数是类型。...如果需要,for 循环也可根据索引来遍历列表或元组,即只要让迭代变量取 0 到列表长度的区间,就可通过该迭代变量访问列表元素。...假如需要实现一个程序,用于统计列表中各元素出现的次数。由于我们并不清楚列表中包含多少个元素,因此考虑定义一个字典,以列表的元素为 key,该元素出现的次数为 value。

    3.4K20

    《数字集成电路静态时序分析基础》笔记②

    {判断语句}{ 脚本语句 }elseif{判断语句}{ 脚本语句 }else{ 脚本语句 } 注意,上例中脚本语句得'{'一定要写在上一行,因为如果不这样,TCL解释器会认为if命令在换行出已经结束,...例题:判断一个列表{0 1 2 3 4}的长度是大于3,还是等于3,还是小于3? ?...循环指令-foreach 语法格式:foreach 变量 列表 循环主体 功能:从第0个元素开始,每次按顺序取得列表的一个元素,将其赋值给变量,然后执行循环主体一次,直到列表最后一个元素 ? ?...sub1表示正则表达式中的第一个子表达式匹配的字符串 sub2表示正则表达式中的第一个子表达式匹配的字符串 实例讲解 如何匹配字符串"abc456" ?...一个完整的写入文件过程 ? 现有文本file.txt其内容如下。请编写TCL脚本求出所有slack值之和 ?

    79430

    JAVA入门1 原

    因此 scores[3] ,表示数组中的第 4 个元素,而并非第 3 个元素 2、 数组下标的范围是 0 至 数组长度-1 ,如果越界访问,就会报错。如: ? 运行时会报如下错误:  ?...2、 将数组转换为字符串 语法:  Arrays.toString(数组名); 可以使用 toString( ) 方法将一个数组转换成字符串,该方法按顺序把多个数组元素连接在一起,多个元素之间使用逗号和空格隔开...运行结果为:  输出数组nums中的元素:[25,7,126,53,14,86] 6.4使用 foreach 操作数组 foreach 并不是 Java 中的关键字,是 for 语句的特殊简化版本,在遍历数组...看到 foreach 的方便了吧!! 留个思考问题给大家:如果想在 foreach 语句中获取数组元素的下标,该如何做呢??...3、 处理数组 二维数组的访问和输出同一维数组一样,只是多了一个下标而已。在循环输出时,需要里面再内嵌一个循环,即使用二重循环来输出二维数组中的每一个元素。如: ? 运行结果: ?

    2.6K20

    Servlet终极保姆级入门指南

    重写参数带着 Http 开头的 service 方法:在该方法中处理请求并响应数据。...7.2、作用域类型 作用域 类型 作用范围 请求域 HttpServletRequest 只在同一次请求中起作用 会话域 HttpSession 同一个会话中起作用浏览器第1次访问服务器直到浏览器关闭的整个过程称为...属性名 是否支持EL 属性类型 属性描述 items true 数组或集合 使用 EL 表达式,代表集合或数组 var false String var 的变量名代表集合中的每一个元素 varStatus...标签:用于JSP页面遍历集合和数组 items属性:设置要遍历的集合或数组:一般从作用域中获取 var属性:设置一个变量名:用来接收遍历到的每一个元素...varStatus属性:设置一个变量名:记录当前遍历元素的状态(状态对象) index 属性:当前遍历元素的在集合中的索引值:从0开始

    82430

    一文掌握shell脚本的基本语法

    ,就是告知系统文件的执行都需要指定一个解释器。指定一个文件类型的特殊标记。占用 2 字节 。 1.1 脚本解释器 shell极脚本都是以 #!开头,告知系统该文件的执行需要一个解释器。...1.测试通配符 2.通配符,在正则表达式中表示一个字符,也可以用来匹配单个字符。 在表达式中测试一个条件的结果,类似C语言中的三元操作符。 $ 1.引用变量 2.正则表达式中,表示行结束符。...在函数或者判断语句中使用代码块 在大括号中不允许有空白,除非空白被引用或者转义 [ ] 1.测试条件 2.数组元素 3.字符范围 作为字符范围时,方括号描述一个匹配的字符范围 > &> >& >>...该风格类似于C语言风格中的变量操作处理方式。 9.1 if和if嵌套 if/then结构用来判断命令列表的退出状态码是否为0。...|显示文件中匹配字符的文件名|| [grep显示存在字符的文件名.png] |-n|--line-number|打印字符匹配所在的行|| [grep打印pattern所在的行.png] |-o|--only-matching

    4.1K01

    Java 8中的Lambda 和 Stream (from Effective Java 第三版)

    它在 try-with-resources 块中打开字典文件,获取包含文件中所有行的流。stream 变量被命名为 words,表示流中的每个元素都是一个 word。...以下操作你可以在代码块中执行,但无法在函数对象中执行: 在代码块中,你可以读取或修改范围内的任何局部变量; 在 lambda 中,你只能读取最终或有效的最终变量[JLS 4.12.4],并且你无法修改任何局部变量...现在假设我们想要在每个梅森素数之前加上它的指数(p)。该值仅出现在初始流中,因此在终端操作中无法访问,从而打印结果。幸运的是,通过反转第一个中间操作中发生的映射,可以很容易地计算出梅森数的指数。...技巧是使用幂集中每个元素的索引作为位向量,其中索引中的第 n 位表示源集合中是否存在第 n 个元素。本质上,从 0 到 2^n - 1 的二进制数和 n 个元素集的幂集之间存在自然映射。...让我们调用一个子列表,该子列表包含列表的第一个元素和列表的前缀(prefix)。例如,(a,b,c)的前缀是(a),(a,b)和(a,b,c)。

    2.3K10

    2025新鲜出炉--前端面试题(二)

    你平时开发的时候需要改host吗? 回答: 是的,在开发过程中,我有时需要修改hosts文件来映射域名到特定的IP地址,以便在本地环境进行调试或访问特定的服务器。...const声明的变量拥有块作用域,不存在变量提升,且声明时必须初始化,且不能重新赋值。 13. 如何实现一个const不可更改?...forEach numbers.forEach(n => console.log(n)); // 打印 1, 2, 3,但不返回新数组 21....Watcher:当组件或指令用到数据对象的属性时,会创建一个Watcher实例,该实例会将自己添加到对应属性的Dependency列表中。...每个属性都有一个Dependency实例,当属性被读取时,Dependency会记录当前的Watcher。 这样,每个属性都维护了一个Watcher列表,这些Watcher依赖于该属性。

    9910

    【python系统学习08】for循环知识点合集

    每次循环时,我们定义的变量name就会被重新赋值为nameList的对应元素,第1次循环name被赋值为第一个元素、第2次循环name又被赋值成第二个元素。...观察上述代码,for循环的语法格式也有一定的规律。 语法格式 for 元素变量 in 迭代对象:   【for子句】在代码块中,位于【缩进】后边。for子句里的内容会被循环执行。...^', '郭菊锋' 字典 for循环遍历字典数据,可以依次打印出字典中的每一个键(key)名。...迭代列表时获取索引 我们通过上边迭代列表和字典的代码中可以看出来,for后边的变量在迭代列表的时候是列表内的元素、迭代字典的时候则是字典里边的键名。...那么如果我想迭代字典时,有个变量存放列表中各项所对应的偏移量(索引)呢? 通过range函数的搭配,我们不仅可以迭代整数,还能迭代列表的索引。 于是我就试了下边的写法,但是他报错了。

    1.4K60

    tcl三部曲(一)、替换、引用与匹配

    $引用的变量名由字母数字和下划线构成,遇到非数字、字母、下划线就会停止,并不是说变量名中不可以含有其他字符,在含有其他字符时需要用{}进行引用表示这是一个整体。 ?...glob返回的是一个列表形式的返回值,类似于一个数组,当直接使用filedelete [glob *.v]进行删除时会失败是因为此时操作的对象是list的地址,而非list中的多个元素,所以使用{*}对列表的地址进行解析...大括号最重要的一个功能就是“延期处理”,延期处理时特殊字符被当做参数传递给命令过程,命令过程自己处理处理这些特殊字符,实际上命令过程也是拿到这些特殊字符后给Tcl解释器处理,例如: 统计在列表中某个特定值出现的次数...整个过程块都在大括号中,他会原封不动的传递给proc,在解析proc命令时变量list的值不会被替换进来。在每次调用这个过程时$list都需要读入不同的值。...把里面的内容作为一个单词传递给命令过程,之后命令过程在根据命令参数再去解析这个单词中的内容。 Part04三种匹配方式 Tcl中存在三种匹配方式:exact、glob、正则表达式。

    3.9K11

    Java---数组

    动态获取数据长度 语法: 数组名.length; 这是是获取长度,并不是获取最后一个元素的下标 所以 arrs.length; 获取的长度就是5; 打印最后一个元素?...,是因为如果哪天你不知道数组长度的时候,就可以用它拿到最后一个 6.4 数组的赋值和打印 数组的赋值和打印一般情况下需要配合循环进行。...6.4.3 增强for循环,迭代 语法: for(数据类型 迭代变量名 : 数组名){} foreach称为增强for循环,它是以一种迭代的方式对数组进行循环,迭代,用一个变量对代理数组里的每个元素,会一直从第一个元素开始一直代理到最后一个元素...(n); } } } 问题,如果在一个循环中多次使用当前数组元素时可以使用一个代理变量来对元素进行使用操作。...(System.out::println); } } 静态方法的调用:在同一个文件中,直接写方法名就行,在不同的文件中要使用 类名.方法名(); public class Main13 {

    21550

    计算机程序的思维逻辑 (9) - 强大的循环

    循环除了用于重复读取或展示某个列表中的内容,日常中的很多操作也要靠循环完成。 在文件中,查找某个词,程序需要和文件中的词逐个比较(当然可能有更高效方式,但也离不开循环)。...对于不需要使用索引变量,只是简单遍历的情况,foreach语法上更为简洁。 循环控制 - break 在循环的时候,会以循环条件作为是否结束的依据,但有时候可能会根据别的条件提前结束循环。...比如说,在一个数组中查找某个元素的时候,循环条件可能是到数组结束,但如果找到了元素,可能就会想提前结束循环,这时候可以使用break。...我们看个例子,以下代码统计一个数组中某个元素的个数: int[] arr = ......循环嵌套 和if类似,循环也可以嵌套,在一个循环体中开启另一个循环。在嵌套循环中,break语句只会跳出本层循环,continue也一样。

    1.3K80

    Java---数组

    动态获取数据长度 语法: 数组名.length; 这是是获取长度,并不是获取最后一个元素的下标 所以 arrs.length; 获取的长度就是5; 打印最后一个元素?...,是因为如果哪天你不知道数组长度的时候,就可以用它拿到最后一个 6.4 数组的赋值和打印 数组的赋值和打印一般情况下需要配合循环进行。...6.4.3 增强for循环,迭代 语法: for(数据类型 迭代变量名 : 数组名){} foreach称为增强for循环,它是以一种迭代的方式对数组进行循环,迭代,用一个变量对代理数组里的每个元素,会一直从第一个元素开始一直代理到最后一个元素...(n); } } } 问题,如果在一个循环中多次使用当前数组元素时可以使用一个代理变量来对元素进行使用操作。...(System.out::println); } } 静态方法的调用:在同一个文件中,直接写方法名就行,在不同的文件中要使用 类名.方法名(); public class Main13 {

    21240

    Python标准数据类型-List(列表)

    这一马平川,一眼见底的活,我不想要,我的人生,我自己书写,余生很长,请多关照,我的人生,敬请期待 ✨序列概述 在Python中序列是最基本的数据结构 序列是一块用于存放多个元素的内存空间 Python...1、3、5个元素 运行结果如下: ✨列表简介 创建列表 使用赋值运算符创建列表 同其他类型的Python变量一样,创建列表时,可以使用赋值运算符=直接将一个列表复制给变量 创建列表语法格式:listname...,element n] 参数说明如下: listname:列表名称 element:列表中的元素 实例:使用=创建一个列表 demo = ["但行好事", "莫问前程"] 注意事项: 在创建列表时我们可以将不同数据类型的数据放进同一个列表中...,但是通常情况下,我们会在一个列表中只放入一种类型的数据,增加程序的可读性 创建空列表 在Python中,也可以创建空列表,然后再对列表进行一系列操作 实例:创建一个名为hacker的空列表 hacker...# 索引从0开始以此类推 修改列表元素 修改列表元素只需要通过索引获取该元素,然后再重新赋值即可 实例:定义一个名为demo的列表修改索引值为1的元素 demo = ["hello", "python

    24920
    领券