一本加勒比hezyo无码视频,久久久久波多野结衣高潮,久久久久波多野结衣高潮,97人妻视频妓女网,最新免费视频一区二区三区,中文字幕无码无码专区,亚洲精品亚洲人成在线观看,亚洲熟妇av一区二区三区漫画
手機(jī)版

掃一掃,手機(jī)訪問(wèn)

關(guān)于我們 加入收藏
馬爾文帕納科
Malvern Panalytical
400-810-0069轉(zhuǎn)8860

中國(guó)粉體網(wǎng)認(rèn)證電話,請(qǐng)放心撥打

馬爾文帕納科

19 年白金會(huì)員

已認(rèn)證

撥打電話
獲取底價(jià)
提交后,商家將派代表為您專人服務(wù)
立即發(fā)送
點(diǎn)擊提交代表您同意 《用戶服務(wù)協(xié)議》
當(dāng)前位置:
馬爾文帕納科 >技術(shù)文章 >

XRD軟件應(yīng)用| HighScore Plus腳本入門(mén)(一)

XRD軟件應(yīng)用| HighScore Plus腳本入門(mén)(一)
馬爾文帕納科  2024-07-05  |  閱讀:2997

手機(jī)掃碼查看

XRD軟件HighScore的Plus功能模塊(即HighScore Plus)里包含了對(duì)腳本代碼的支持;基于腳本的擴(kuò)展性,軟件也有了更大的可能讓用戶得以實(shí)現(xiàn)一些特殊的計(jì)算或自定義特定格式的結(jié)果輸出,以補(bǔ)足原軟件在設(shè)計(jì)時(shí)未預(yù)見(jiàn)未直接包含的功能。本文介紹了HighScore Plus的腳本編程語(yǔ)言的編輯方法以及開(kāi)發(fā)環(huán)境,為研究者實(shí)現(xiàn)個(gè)性化的計(jì)算和結(jié)果提供指導(dǎo)。

HighScore Plus腳本所使用的語(yǔ)言是Object Pascal,繼承自相對(duì)古老的Pascal編程語(yǔ)言,支持結(jié)構(gòu)化和面向?qū)ο缶幊獭K膬?yōu)點(diǎn)包括代碼的易讀性、快速編譯,以及支持多個(gè)單元文件從而實(shí)現(xiàn)模塊化編程。作為已經(jīng)不再流行的編程語(yǔ)言,可能在圖書(shū)館里才能翻得到它的出版教程了,但網(wǎng)絡(luò)上依然保留了不少資源。Neil Moffatt的Delphi Basic、Marco Cantù的Essential Pascal(中文)和Tao Yue的Learn Pascal tutorial(Wiki化后的中文版)都可以給初學(xué)者提供不少幫助。

HighScore Plus軟件里甚至內(nèi)置了一個(gè)集成開(kāi)發(fā)環(huán)境(IDE,Integrated Development Environment ),可以由菜單Tools - Script Editor調(diào)出,麻雀雖小五臟俱全,可以直接編輯、編譯和調(diào)試代碼。軟件幫助系統(tǒng)的第11部分中羅列了HighScore Plus軟件開(kāi)放的可調(diào)用的對(duì)象模型及它們的屬性、函數(shù)和過(guò)程。軟件安裝目錄下的HelpExternals子目錄下也放了不少.PAS的示例代碼文件,可用于參考和學(xué)習(xí);Documentation子目錄下的Scripting in HighScore Plus.pdf文件中也舉了大量的例子來(lái)告訴你如何實(shí)現(xiàn)某些功能。

本文的編寫(xiě)也參考了上述的文件和網(wǎng)絡(luò)資源。

圖1 HighScore Plus中內(nèi)置的腳本編輯器



01丨程序結(jié)構(gòu)

如下圖,Pascal程序的基本結(jié)構(gòu)由三部分組成:

圖2 Pascal程序基本結(jié)構(gòu)

程序首部:

以關(guān)鍵字program開(kāi)頭,用以標(biāo)識(shí)這是一個(gè)程序;其后便是由用戶自己定義的程序名稱ExampleProgram;以半角分號(hào)(;)作為這一部分的結(jié)束。

聲明部分:

聲明部分可以省略,但凡是在程序中用到所有變量、常量、數(shù)組及自定義的數(shù)據(jù)類(lèi)型、過(guò)程與函數(shù)等都必須在聲明部分預(yù)先定義,也就是說(shuō),不允許不聲明就使用;聲明部分中可以包含:

使用指令:以關(guān)鍵字uses開(kāi)頭,指定要在程序中引用的單元(相當(dāng)于模塊),以便在程序中使用在單元中定義好的過(guò)程、函數(shù)和類(lèi)等等;一般System單元不用特地聲明引用;如程序中不需要引用額外的單元,此部分可省略;

類(lèi)型聲明:以關(guān)鍵字type開(kāi)頭,基于已有數(shù)據(jù)類(lèi)型構(gòu)建自定義的數(shù)據(jù)類(lèi)型,以在程序中使用;如沒(méi)有自定義新數(shù)據(jù)類(lèi)型的必要,此部分可省略;

常量聲明:以關(guān)鍵字const開(kāi)頭,定義在程序中會(huì)使用到的常量;如無(wú)必要可省略;

變量聲明:以關(guān)鍵字var開(kāi)頭,定義在程序中會(huì)使用到的變量;如果程序中用不到自定義的變量,此部分可以省略;

子過(guò)程、子函數(shù)定義;如無(wú)必要可省略;

程序主體:

程序主體由begin開(kāi)始,end.(注意,不要遺漏這個(gè)點(diǎn)符)結(jié)束,兩者中間則是執(zhí)行語(yǔ)句。

Pascal程序代碼不管哪一部分,語(yǔ)句末尾都必須有半角分號(hào)(;)以示這一語(yǔ)句的結(jié)束,但允許end前面的那一個(gè)語(yǔ)句省略分號(hào);多個(gè)語(yǔ)句可以用一對(duì)begin和end;(注意,這里有半角分號(hào))包含起來(lái)作為一個(gè)程序塊,程序塊多用于子過(guò)程、子函數(shù)等的定義以及流程語(yǔ)句;代碼里最后一個(gè)end后的點(diǎn)符(.)代表整個(gè)程序的結(jié)束。

Pascal語(yǔ)言中,程序名稱、常量名稱、變量名稱等這種自定義的名稱統(tǒng)稱為標(biāo)識(shí)符。標(biāo)識(shí)符必須以一個(gè)英文字母或者下劃線(_)開(kāi)始,后面可以是英文字母、數(shù)字或下劃線,長(zhǎng)度不限;但不能與Pascal語(yǔ)言已占用的有特殊含義的關(guān)鍵字/保留字(如program)相同。標(biāo)識(shí)符以及關(guān)鍵字都不區(qū)分大小寫(xiě),因此exampleprogram、ExampleProgram、EXAMPLEPROGRAM和eXaMpLePrOgRaM這幾個(gè)名稱都是相同的,但為了代碼的可讀性,建議遵循一定的命名書(shū)寫(xiě)規(guī)范,有意義地使用大小寫(xiě)。

在圖2中可以看到,在腳本編輯器默認(rèn)的代碼高亮規(guī)則下,部分代碼以綠色斜體顯示,這些是不被編譯也不被執(zhí)行的注釋。注釋同樣是代碼的一部分,主要用來(lái)寫(xiě)一些說(shuō)明,以讓代碼更容易理解,也可以用來(lái)在不刪除的情況下屏蔽有問(wèn)題的代碼。Pascal語(yǔ)言支持三種注釋方式:一對(duì)半角大括號(hào)({  })、一對(duì)帶星號(hào)的半角小括號(hào)((*  *))以及雙斜線(//)。


圖3 注釋

在HighScore Plus的腳本編輯器中,當(dāng)點(diǎn)開(kāi)工具欄中第一個(gè)按鈕并點(diǎn)擊New Script項(xiàng)新建一個(gè)腳本時(shí),在Script Name框中輸入的腳本名稱同時(shí)默認(rèn)為程序名稱;輸完名稱后,點(diǎn)擊OK按鈕,即會(huì)新建一個(gè)完整結(jié)構(gòu)的空白的腳本。


圖4 新建腳本



02丨數(shù)據(jù)類(lèi)型及賦值、運(yùn)算

Pascal語(yǔ)言中包含了以下基本數(shù)據(jù)類(lèi)型:

整數(shù)類(lèi)型:最基礎(chǔ)的是integer類(lèi)型,其數(shù)據(jù)范圍一般情況下已足夠使用,如果需要更大的整數(shù)范圍,可以用longint類(lèi)型甚至int64類(lèi)型;

實(shí)數(shù)類(lèi)型:也稱浮點(diǎn)數(shù)型,最基礎(chǔ)的是real類(lèi)型,但不提倡用,建議用single單精度實(shí)型或double雙精度實(shí)型,要更大范圍得話,還可以用extended擴(kuò)展實(shí)型;

字符類(lèi)型:最基礎(chǔ)的是char類(lèi)型,即ASCII字符,一般用一對(duì)半角單引號(hào)將單個(gè)字符括起來(lái),如‘a(chǎn)‘、‘@’等(注:半角單引號(hào)需多用一個(gè)單引號(hào)轉(zhuǎn)義,即’’’’),也可以用井號(hào)加0~255以內(nèi)的整數(shù)表示第幾個(gè)ASCII字符,如#65即為‘A’;雙字節(jié)的Unicode字符可以用widechar類(lèi)型來(lái)支持;多個(gè)字符組成的字符串則可以用string類(lèi)型;

布爾類(lèi)型:最基礎(chǔ)的是boolean類(lèi)型,只有TRUE(真,值為1)和FALSE(假,值為0)兩個(gè)值;

常量的賦值直接在聲明部分中聲明常量的同時(shí)完成,而且不必特別指定其數(shù)據(jù)類(lèi)型,編譯器會(huì)根據(jù)所賦的值自動(dòng)選用合適的數(shù)據(jù)類(lèi)型;賦值時(shí),直接用等號(hào)(=)賦值;賦值后,在程序中可以用常量的標(biāo)識(shí)符來(lái)使用其值,但無(wú)法修改其值。對(duì)于一個(gè)在程序中到處會(huì)用到,而且程序運(yùn)行中保持不變的值,建議用常量來(lái)存儲(chǔ),然后在執(zhí)行代碼中使用這個(gè)常量的標(biāo)識(shí)符,這樣當(dāng)要改這個(gè)值時(shí),就不用到執(zhí)行代碼中到處查找這個(gè)值然后修改,而是可以輕松地直接在常量聲明中修改一次就成。


圖5 常量的聲明與賦值

變量的值在程序運(yùn)行的過(guò)程中可以更改,但使用前必須先聲明好。在程序的聲明部分中聲明的變量稱為全程變量,可以在整個(gè)程序(包括子過(guò)程、子函數(shù)中)中使用;在子過(guò)程、子函數(shù)中聲明的變量,稱為局部變量,只能在聲明它的子過(guò)程或子函數(shù)中使用。變量一般在執(zhí)行語(yǔ)句中用賦值符(帶半角冒號(hào)的等號(hào),即:=)賦值;全程變量也可以在聲明的同時(shí)用等號(hào)(=)賦初值,但不建議這么做。在聲明變量時(shí),必須用半角冒號(hào)(:)指定變量的數(shù)據(jù)類(lèi)型;不賦初值的情況下,一個(gè)語(yǔ)句可以聲明同一類(lèi)型的多個(gè)變量,這些變量的標(biāo)識(shí)符須用半角逗號(hào)(,)分隔開(kāi)。


圖6 變量的聲明與賦值

一般的工作可能前面所講的那些數(shù)據(jù)類(lèi)型已經(jīng)足夠使用了,但涉及到相對(duì)復(fù)雜的、要處理大量數(shù)據(jù)的工作時(shí),通過(guò)定義很多個(gè)變量去實(shí)現(xiàn)很顯然不太現(xiàn)實(shí),此時(shí)對(duì)于同一類(lèi)型的大量數(shù)據(jù),就可以用數(shù)組來(lái)處理。

數(shù)組可以通過(guò)“array[下標(biāo)范圍] of 數(shù)據(jù)類(lèi)型”來(lái)定義,其中下標(biāo)值一般是整數(shù)類(lèi)型。[下標(biāo)范圍]可以省略:定義時(shí)省略了[下標(biāo)范圍]的數(shù)組稱為動(dòng)態(tài)數(shù)組,使用前必須先用函數(shù)setlength設(shè)置其大小,設(shè)置后,動(dòng)態(tài)數(shù)組的下標(biāo)總是從零開(kāi)始;定義時(shí)指定了下標(biāo)范圍的數(shù)組稱為靜態(tài)數(shù)組,下標(biāo)范圍可以按需要設(shè)置,以[下標(biāo)下屆..下標(biāo)上屆](用兩個(gè)半角點(diǎn)符隔開(kāi),相當(dāng)于從幾到幾的連續(xù)整數(shù))的格式定義,下標(biāo)值甚至可以是負(fù)數(shù);如果要定義多維數(shù)組,可以通過(guò)套娃的方式定義,也可以在[ ]里定義多組下標(biāo)范圍。當(dāng)聲明了一個(gè)數(shù)組變量,則該數(shù)組變量中的各個(gè)元素就共用一個(gè)數(shù)組名(即該數(shù)組變量標(biāo)識(shí)符),通過(guò)下標(biāo)的不同以區(qū)別不同的元素,可以通過(guò)“數(shù)組名[下標(biāo)]”來(lái)引用數(shù)組元素;對(duì)數(shù)組的操作歸根到底就是對(duì)數(shù)組元素的操作,數(shù)組元素可以像同類(lèi)型的普通變量那樣操作。


圖7 數(shù)組的聲明與賦值

上圖中第30行中的“[true, true, true, true, true, false, false]”是一個(gè)直接常量(直接以字面形式,而非標(biāo)識(shí)符表示的常量,如前面附圖中賦值語(yǔ)句等號(hào)右側(cè)的那些數(shù)值或字符,2.7182818、10086、true、’A’ 等)數(shù)組,用一對(duì)半角方括號(hào)([ ])將各元素括在其中,元素之間用半角逗號(hào)(,)分隔。

變量在賦值時(shí),賦值號(hào)的右側(cè)除了用直接常量外,也可以是一個(gè)運(yùn)算表達(dá)式,運(yùn)算表達(dá)式中可以帶有變量或常量。

數(shù)字的計(jì)算使用算術(shù)運(yùn)算符,除了常規(guī)的四則運(yùn)算:加(+)、減(-)、乘(*)、除(/)外,還有整除(div)和取模(除法取余數(shù),mod);運(yùn)算時(shí),先乘除(整除和取模和乘除同一優(yōu)先級(jí))后加減,當(dāng)然括號(hào)優(yōu)先級(jí)最高(由內(nèi)向外逐層降低),相同優(yōu)先級(jí)則從左往右順序計(jì)算;


圖8 數(shù)字的算數(shù)運(yùn)算

關(guān)系運(yùn)算符(=、<>、>、<、>=、<=)則可以用來(lái)判斷兩個(gè)數(shù)之間的大小關(guān)系,其結(jié)果是布爾類(lèi)型;關(guān)系運(yùn)算符的優(yōu)先級(jí)是最低的;


圖9 數(shù)字的大小比較

邏輯運(yùn)算符則用來(lái)處理布爾類(lèi)型的量,包含:not(非,只有一個(gè)運(yùn)算對(duì)象,結(jié)果取運(yùn)算對(duì)象的相反值)、and(且,只有兩邊都為真,結(jié)果才為真)、or(或,兩邊有一個(gè)真,則結(jié)果就為真)、xor(異或,兩邊不一樣,則結(jié)果為真);not優(yōu)先級(jí)最高,其次是and,與乘除同一級(jí)別, or和xor則與加減并列;


圖10 布爾值的邏輯運(yùn)算

對(duì)于字符(串),有連接運(yùn)算符(加號(hào),+)用來(lái)將兩邊的字符(串)連成一個(gè)字符串;關(guān)系運(yùn)算符也可以用于字符串的比較,比較時(shí),兩個(gè)字符串從左往右按ASCII碼值逐個(gè)比較,遇到不相等時(shí),碼值大的字符所在的字符串為大,因此小寫(xiě)字母>大寫(xiě)字母>數(shù)字。


圖11 字符(串)的運(yùn)算

除上述數(shù)據(jù)類(lèi)型外,還有枚舉、集合(圖5中聲明的常量Letters就是一個(gè)點(diǎn)亮大小寫(xiě)字母的52個(gè)字符的集合)、記錄、指針、文件、類(lèi)等等類(lèi)型,本文中不再贅述,感興趣的可以參考Essential Pascal、Delphi Basics、Learn Pascal tutorial等網(wǎng)絡(luò)資源中的說(shuō)明。

相關(guān)產(chǎn)品

更多

馬爾文帕納科激光粒度儀Mastersizer 3000+

型號(hào):Mastersizer 3000+

面議
馬爾文帕納科納米粒度及電位分析儀Zetasizer Lab

型號(hào):提供Blue Label 和 Red Label 型號(hào)

面議
馬爾文帕納科納米粒度及電位分析儀Zetasizer Pro

型號(hào):提供 Blue Label 和 Red Label 型號(hào)

面議
馬爾文帕納科納米粒度及電位分析儀Zetasizer Ultra

型號(hào):提供Blue Label 和 Red Label 型號(hào)

面議

虛擬號(hào)將在 秒后失效

使用微信掃碼撥號(hào)

為了保證隱私安全,平臺(tái)已啟用虛擬電話,請(qǐng)放心撥打(暫不支持短信)
留言咨詢
(我們會(huì)第一時(shí)間聯(lián)系您)
關(guān)閉
留言類(lèi)型:
     
*姓名:
*電話:
*單位:
Email:
*留言內(nèi)容:
(請(qǐng)留下您的聯(lián)系方式,以便工作人員及時(shí)與您聯(lián)系!)
主站蜘蛛池模板: 四川丰满少妇被弄到高潮| 亚洲三区在线观看无套内射| 欧美日韩一区二区综合| 成人片在线看无码不卡| 国产成人一区二区三区别| 国产精品久久久久久久专区| 亚洲国产日韩在线精品频道| 国产精品99久久不卡| 国产一级无码不卡视频| 97人人添人澡人人爽超碰| 狠狠色婷婷久久一区二区三区| 亚洲精品久综合蜜| 国产无码高清视频不卡| 成人福利在线免费观看| 成人国产三级在线播放| 亚洲有无码中文网| 成人动漫久久| 熟妇的奶头又大又长奶水视频| 亚洲阿v天堂在线| 99久久精品无码一区二区毛片 | 久久厕所精品国产精品亚洲| 国产精品专区一区二区av免费看| 日产a一a区二区www| 久久久久亚洲av成人网址| 日韩最新av一区二区| 大陆熟妇丰满多毛xxxⅹ| 免费无码av一区二区三区| 欧美国产亚洲精品成人a v| 亚洲第一黄片大全| 日韩一本之道一区中文字幕| 内射欧美老妇wbb| 日韩av一区二区三区在线播放 | 欧美丰满熟妇xxxx性大屁股| 最新国产网站| 日韩精品无码一区二区三区| 国产亚洲色婷婷久久99精品| 不卡视频国产| 一区二区三区国产| 久久久成人精品av四区| 日产精品一区二区免费| 伊人久久大香线蕉综合75|