搞芯片怎么能不懂perl语言呢?

描述

各位ICer在工作的过程当中,无论是前后端,都会使用各种常见的脚本语言如:shell,python,perl,tcl等等用于文件的处理,case测试,工具环境的调用和搭建,虽然随着Python的发展以及perl的停止更新,导致perl慢慢的在淡出历史舞台。但是不可否认的是,现在很多项目的环境还是用perl搭建的,但是Perl较差的代码可读性,维护这些环境有一定难度。因此学习掌握Perl是一个称职的IC工程师的必备技能!

首先我们来介绍Perl的变量,了解并应用变量是一个语言最基础的内容,变量即存储在内存当中的数据,创建一个变量会在内存中开辟一个空间,解释器也会根据变量的类型来决定内存的存储空间,Perl语言有三个不同的数据类型:标量,数组,哈希。

标量$开始,比如$a $b是两个标量 

数组@开始,如@a@b是两个数组 

哈希%开始,%a %b是两个哈希

在声明变量前我们通常要使用use strict语句来让所以变量需要强制声明类型,接下来以straberryperl版本为例,让我们开始本期的学习吧!

数据类型:

1.标量scalar(数字以及字符串)给任何变量量赋值标量都要在变量前面加$(意思取),比如:

Verilog

2. 列表与数组(列表是存有序标量数据,数组存的是存储列表的变量,即列表是数据,数组是变量)

VerilogVerilogVerilogVerilogVerilog

3.哈希%hash(很像字典/关联数组,提取数据非常的快)

VerilogVerilogVerilog

标量上下文列表上下文(表达式的返回值和输入值由perl上下文定义,简单的说变量赋值是int还是string要看代码的上下文,这个在多数脚本语言内都有)  

VerilogVerilog

子程序(就是函数,任何语言都有函数,类别python中的def,tcl中的proc,verilog中的function等等)  

VerilogVerilog

foreach遍历结构体(ICer学习的任何语言都必带循环结构,而foreach是最简易也是最常用的循环结构,其中有个默认变量$_非常有意思,相当于可以省写很多i)

Verilog

each操作符

Verilog

私有(局部)变量声明my持久化私有变量声明state

Verilog

Perl的输入与输出

VerilogVerilogVerilogVerilog

到这里,Perl语言的一些函数特点&输入输出,数据结构特点小编就介绍完了,不知道ICer们理解了这些示例嘛,下面一期小编将会介绍Perl语言的文件处理功能以及最强的正则匹配(Perl的最强优势)功能,并贴上flow中的一个perl案例来进行解析。




审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分