本公众号【读芯树:duxinshu_PD】主要介绍数字集成电路物理设计相关知识,才疏学浅,如有错误,欢迎指正交流学习。 这是集成电路物理设计的第七个系列【脚本语言】的第十七篇文章,本篇文章主要介绍perl相关内容: 01 — 运 算 #算数运算 $a=2; $b=3; $c=$a+$b; #+ 加,- 减,* 乘,/ 除,% 取余, ** 幂运算 $c+=$a; #相当于$c=$c+$a; print '$c\n'; #比较运算 ($a==$b) #两数是否相等 ($a!=$b) #两数是否不相等 ($a<=>$b) #a小于b返回-1,a等于b返回0,a大于b返回1 ($a>$b) #a大于b返回true ($a>=$b) #a大于等于b返回true ($a lt $b) #字符串a小于字符串b返回true ($a gt $b) #字符串a大于字符串b返回true ($a le $b) #字符串a小于等于字符串b返回true ($a ge $b) #字符串a大于等于字符串b返回true ($a eq $b) #字符串a等于字符串b返回true ($a ne $b) #字符串a不等于字符串b返回true ($a cmp $b) #字符串a小于字符串b返回-1,等于返回0,大于返回1 #位运算 $a=0010110 $b=1101010 $a&$b=0000010 $a|$b=1111110 $a^$b=1111100 ~$a=1101001 02 — 时间&日期
03 — 子函数(程序) sub myproc { statements; } #调用子函数 myproc (args); #例子 sub Average { $n=scalar(@_); $sum=0; foreach $item (@_) { $sum += $item; } $average=$sum/$n; print 'item is :', '@_\n'; print '$average'; } Average (3, 7, 11); 04 — 格式化输出
05 — 文件操作 perl提供三种文件句柄:STDIN,STDOUT,STDERR分别表示标准输入、标准输出和标准出错输出 open (DATA, file.txt) or die 'file.txt文件无法打开,$!'; #读取file.txt的内容 while (<DATA>) { print '$_' } open (DATA, '>file.txt') #以写入方式打开文件 open (DATA, '+>file.txt') #以读写方式打开文件,会删除原来内容 open (DATA, '+<file.txt') #以读写方式打开文件,不会删除原来内容 open (DATA, '>>file.txt') #以追加方式打开文件 sysopen (DATA, 'file.txt', O_RDWR); #以读写方式打开 O_RDWR #读写方式打开,指针指向文件头 O_RDONLY #只读方式打开,指针指向文件头 O_WRONLY #写入方式打开,指针指向文件头 O_CREAT #创建文件 O_APPEND #追加文件 O_TRUNC #将文件大小截取为零 O_EXCL #测试文件是否存在 O_NONBLOCK #非阻塞IO close(DATA) || die 'no close file successful' #从键盘输入读取 print 'input string:\n'; $name=<STDIN>; print 'the input is: $name\n'; #getc函数 getc FileID #返回单一字符,如果没指定,返回STDIN read FileID, scalar, length, offset #读取文件内容,scalar:存储结果;length:读取长度;offset:偏移量 #拷贝文件 open(DATA1, '<file1.txt'); #只读打开文件 open(DATA2, '>file2.txt'); #写入打开文件 while (<DATA1>) {print DATA2 $_;} close(DATA1); close(DATA2); #重命名 rename ('./old.txt', './new.txt'); #删除文件 unlink ('old.txt'); 06 — 参考文献
|
|