Tcl中的數(shù)學運算,即便是很簡單的兩個數(shù)相加,都要用到命令expr,看下面這個例子。在這個例子中,計算x1與x2之和時通過expr命令實現(xiàn)。可以看到如果直接寫{$x1 + $x2},給變量y1賦值,此時,Tcl解釋器把它們當作字符串處理,并不會完成相應的計算。但如果對變量y1使用expr命令,則可得到預期結(jié)果。
expr命令所支持的計算操作符是C語言中操作符的一個子集,并且寫法、優(yōu)先級也和C語言中的完全一致,包括基本計算符(加、減、乘、除、取余)、關系運算符、邏輯運算符、移位運算符、按位邏輯運算符和三重運算符。除了數(shù)學計算操作符之外,expr還支持字符串的比較操作。這里不再羅列這些運算符的含義和使用方法,只給出一些簡單的例子。
這里特別強調(diào)一下,使用除法操作符時應注意,如果兩個操作數(shù)均為整數(shù),那么結(jié)果仍然是整數(shù)。只要有一個是浮點數(shù),那么結(jié)果就是浮點數(shù)。看下面這個例子。時鐘周期為3ns,對應頻率為333.33MHz。1/$period的結(jié)果為0,但1.0/$period和1/double($period)的結(jié)果就不是0。
Tcl本身還提供了許多數(shù)學函數(shù),包括取整函數(shù)(ceil, floor, round等)、三角函數(shù)、反三角函數(shù)、對數(shù)函數(shù)和指數(shù)函數(shù)等。這里不再一一羅列,只給出一些例子。
最后,介紹一個新的命令incr,這個命令在描述for循環(huán)時會經(jīng)常用到。該命令根據(jù)指定的步長來增加或減少參數(shù)的值。當步長為負時,減少參數(shù)值;當步長為正時,增加參數(shù)值。默認步長為+1。另外,incr后面直接跟變量名,并不需要變量置換符$,這也是很多初學者容易疏忽的地方。看下面這個例子。
結(jié)論:
-在Tcl中執(zhí)行數(shù)學運算必須使用expr命令
-Tcl中的操作符與C語言保持一致
-Tcl本身提供了很多數(shù)學函數(shù)
-
C語言
+關注
關注
180文章
7614瀏覽量
137703 -
TCL
+關注
關注
10文章
1741瀏覽量
88873 -
數(shù)學
+關注
關注
0文章
99瀏覽量
19296
原文標題:Tcl中的數(shù)學運算
文章出處:【微信號:Lauren_FPGA,微信公眾號:FPGA技術驛站】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
用labvIEW進行復雜的數(shù)學運算的時候,有怎樣的思路?
求MATLAB偏微分數(shù)學運算編程,限定時間完成,有酬謝.
數(shù)學運算時出現(xiàn)中斷問題
鼎陽示波器功能之數(shù)學運算
如何在GCC中為具有FPU的Cortex M4啟用硬件浮點數(shù)學運算呢?
基本數(shù)學運算庫 -包括各種用VHDL語言描述的基本數(shù)學運算單
GE FANUC PLC的數(shù)學運算功能
CCS及DSP基本數(shù)學運算實驗
基于GPU的數(shù)學形態(tài)學運算并行加速研究
![基于GPU的<b class='flag-5'>數(shù)學</b>形態(tài)<b class='flag-5'>學運算</b>并行加速研究](https://file.elecfans.com/web2/M00/49/2D/pYYBAGKhtD2AQM7aAAAMP7UnLns369.jpg)
簡單的數(shù)學運算計算數(shù)學函數(shù)的方法CORDIC的詳細資料概述
![簡單的<b class='flag-5'>數(shù)學運算計算數(shù)學</b>函數(shù)的方法CORDIC的詳細資料概述](https://file.elecfans.com/web1/M00/51/ED/pIYBAFsPahqAUm3xAABWW_sdRVE545.png)
數(shù)學運算在FPGA中的實現(xiàn)方式
Python中常見的數(shù)學運算方法
如何在FPGA中進行簡單和復雜的數(shù)學運算?
![如何在FPGA中進行簡單和復雜的<b class='flag-5'>數(shù)學運算</b>?](https://file1.elecfans.com/web2/M00/82/C2/wKgZomRhp5SAYqWzAAAiWGsLLSI604.png)
C語言中關于數(shù)學運算的相關知識
![C語言中<b class='flag-5'>關于</b><b class='flag-5'>數(shù)學運算</b>的相關知識](https://file1.elecfans.com/web2/M00/AC/F8/wKgaomVK7K2AYQ4JAAGXsq4VkCg464.png)
評論