欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

編程語(yǔ)言編譯方法、裝置、可讀存儲(chǔ)介質(zhì)及終端設(shè)備與流程

文檔序號(hào):40531120發(fā)布日期:2024-12-31 13:45閱讀:30來(lái)源:國(guó)知局
編程語(yǔ)言編譯方法、裝置、可讀存儲(chǔ)介質(zhì)及終端設(shè)備與流程

本申請(qǐng)涉及計(jì)算機(jī),具體地涉及一種編程語(yǔ)言編譯方法、一種編程語(yǔ)言編譯裝置、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及一種終端設(shè)備。


背景技術(shù):

1、c++和st都是編程語(yǔ)言,其中,st語(yǔ)言對(duì)工業(yè)行為的支持靈活方便,使用st語(yǔ)言來(lái)實(shí)現(xiàn)工藝流程能夠提高開(kāi)發(fā)效率以及代碼可讀性。目前c++語(yǔ)言的編譯器很多,有g(shù)cc、tinyc等,還有集成編譯器到ide中的如visualstudio,而st語(yǔ)言的編譯器一般都集成在plc開(kāi)發(fā)軟件中。目前,工控行業(yè)的上位機(jī)基礎(chǔ)軟件和處理單元通常需要功能強(qiáng)大且性能高的c++語(yǔ)言來(lái)進(jìn)行主體框架的開(kāi)發(fā),但是現(xiàn)有的編譯器不支持c++中嵌入st語(yǔ)言,不能將c++和st語(yǔ)言放在一起編譯,因此,目前涉及內(nèi)部工藝流程處理的模塊也是用c++開(kāi)發(fā),導(dǎo)致內(nèi)部工藝流程代碼繁瑣而且可讀性不高。


技術(shù)實(shí)現(xiàn)思路

1、本申請(qǐng)實(shí)施例的目的是提供一種編程語(yǔ)言編譯方法、一種編程語(yǔ)言編譯裝置、一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)及一種終端設(shè)備,以解決上述問(wèn)題。

2、為了實(shí)現(xiàn)上述目的,本申請(qǐng)第一方面提供一種編程語(yǔ)言編譯方法,包括:

3、響應(yīng)于文件編譯指令,獲取待編譯的第一程序文件;

4、在確定所述第一程序文件的文件標(biāo)識(shí)為指定文件標(biāo)識(shí)的情況下,通過(guò)正則表達(dá)式對(duì)所述第一程序文件的程序文本進(jìn)行語(yǔ)法匹配,獲得語(yǔ)法匹配結(jié)果;

5、若根據(jù)語(yǔ)法匹配結(jié)果確定所述第一程序文件的編寫(xiě)語(yǔ)言為第一程序語(yǔ)言,將所述第一程序文件轉(zhuǎn)換為基于第二程序語(yǔ)言的第二程序文件。

6、可選地,所述第一程序語(yǔ)言為st語(yǔ)言,所述第二程序語(yǔ)言為c++語(yǔ)言。

7、可選地,所述文件標(biāo)識(shí)為所述第一程序文件的文件名后綴標(biāo)識(shí)。

8、可選地,所述指定文件標(biāo)識(shí)為st語(yǔ)言程序文件的文件名后綴標(biāo)識(shí)。

9、可選地,通過(guò)正則表達(dá)式對(duì)所述第一程序文件的程序文本進(jìn)行語(yǔ)法匹配,獲得語(yǔ)法匹配結(jié)果,包括:

10、對(duì)所述第一程序文件的程序文本進(jìn)行關(guān)鍵詞掃描,獲得所述第一程序文件的至少一個(gè)關(guān)鍵詞;

11、基于提取到的關(guān)鍵詞,通過(guò)預(yù)設(shè)的正則表達(dá)式規(guī)則對(duì)所述第一程序文件進(jìn)行語(yǔ)法識(shí)別,獲得對(duì)所述第一程序文件的多個(gè)語(yǔ)法識(shí)別結(jié)果;

12、基于對(duì)所述第一程序文件的多個(gè)語(yǔ)法識(shí)別結(jié)果確定所述語(yǔ)法匹配結(jié)果。

13、可選地,所述語(yǔ)法識(shí)別結(jié)果包括語(yǔ)法識(shí)別結(jié)果為真或語(yǔ)法識(shí)別結(jié)果為假;基于對(duì)所述第一程序文件的多個(gè)語(yǔ)法識(shí)別結(jié)果確定所述語(yǔ)法匹配結(jié)果,包括:

14、獲取對(duì)所述第一程序文件的各個(gè)語(yǔ)法識(shí)別結(jié)果;

15、確定語(yǔ)法識(shí)別結(jié)果為真的語(yǔ)法識(shí)別結(jié)果占所有語(yǔ)法識(shí)別結(jié)果的比例;

16、若得到的比例不低于預(yù)設(shè)的比例閾值,確定所述第一程序文件的編寫(xiě)語(yǔ)言為第一程序語(yǔ)言,生成表征所述第一程序文件的編寫(xiě)語(yǔ)言為第一程序語(yǔ)言的語(yǔ)法匹配結(jié)果。

17、可選地,將所述第一程序文件轉(zhuǎn)換為基于第二程序語(yǔ)言的第二程序文件,包括:

18、對(duì)所述第一程序文件的程序文本進(jìn)行關(guān)鍵詞掃描,獲得所述第一程序文件的至少一個(gè)關(guān)鍵詞;

19、基于提取到的關(guān)鍵詞,通過(guò)預(yù)設(shè)的正則表達(dá)式規(guī)則對(duì)所述第一程序文件進(jìn)行語(yǔ)法識(shí)別,以對(duì)所述第一程序文件進(jìn)行程序的語(yǔ)句提??;

20、調(diào)用預(yù)設(shè)的語(yǔ)法匹配表,將從所述第一程序文件提取到的語(yǔ)句轉(zhuǎn)換為滿足第二程序語(yǔ)言語(yǔ)法的語(yǔ)句,得到轉(zhuǎn)換后的第二程序文件,其中,所述語(yǔ)法匹配表至少包括第一程序語(yǔ)言的不同語(yǔ)法與第二程序語(yǔ)言的不同語(yǔ)法的映射關(guān)系。

21、本申請(qǐng)第二方面,提供一種編程語(yǔ)言編譯裝置,包括:

22、文件獲取模塊,被配置為響應(yīng)于文件編譯指令,獲取待編譯的第一程序文件;

23、語(yǔ)法匹配模塊,被配置為在確定所述第一程序文件的文件標(biāo)識(shí)為指定文件標(biāo)識(shí)的情況下,通過(guò)正則表達(dá)式對(duì)所述第一程序文件的程序文本進(jìn)行語(yǔ)法匹配,獲得語(yǔ)法匹配結(jié)果;

24、語(yǔ)法轉(zhuǎn)換模塊,被配置為若根據(jù)語(yǔ)法匹配結(jié)果確定所述第一程序文件的編寫(xiě)語(yǔ)言為第一程序語(yǔ)言,將所述第一程序文件轉(zhuǎn)換為基于第二程序語(yǔ)言的第二程序文件。

25、本申請(qǐng)第三方面,提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),存儲(chǔ)有當(dāng)被處理器執(zhí)行時(shí)使得處理器執(zhí)行如上述的編程語(yǔ)言編譯方法的計(jì)算機(jī)程序。

26、本申請(qǐng)第四方面,提供一種終端設(shè)備,包括存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器中并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)上述的編程語(yǔ)言編譯方法。

27、本申請(qǐng)?zhí)峁┑膶?shí)施方式具有以下有益效果:

28、本申請(qǐng)通過(guò)在編譯器中封裝st語(yǔ)言檢測(cè)模塊和st語(yǔ)言轉(zhuǎn)c++模塊,從而通過(guò)在c++代碼中遷移st語(yǔ)言,實(shí)現(xiàn)了對(duì)c++和st語(yǔ)言一同編譯的效果。

29、本申請(qǐng)實(shí)施例或?qū)嵤┓绞降钠渌卣骱蛢?yōu)點(diǎn)將在隨后的具體實(shí)施方式部分予以詳細(xì)說(shuō)明。



技術(shù)特征:

1.一種編程語(yǔ)言編譯方法,其特征在于,包括:

2.根據(jù)權(quán)利要求1所述的編程語(yǔ)言編譯方法,其特征在于,所述第一程序語(yǔ)言為st語(yǔ)言,所述第二程序語(yǔ)言為c++語(yǔ)言。

3.根據(jù)權(quán)利要求1所述的編程語(yǔ)言編譯方法,其特征在于,所述文件標(biāo)識(shí)為所述第一程序文件的文件名后綴標(biāo)識(shí)。

4.根據(jù)權(quán)利要求2所述的編程語(yǔ)言編譯方法,其特征在于,所述指定文件標(biāo)識(shí)為st語(yǔ)言程序文件的文件名后綴標(biāo)識(shí)。

5.根據(jù)權(quán)利要求1所述的編程語(yǔ)言編譯方法,其特征在于,通過(guò)正則表達(dá)式對(duì)所述第一程序文件的程序文本進(jìn)行語(yǔ)法匹配,獲得語(yǔ)法匹配結(jié)果,包括:

6.根據(jù)權(quán)利要求5所述的編程語(yǔ)言編譯方法,其特征在于,所述語(yǔ)法識(shí)別結(jié)果包括語(yǔ)法識(shí)別結(jié)果為真或語(yǔ)法識(shí)別結(jié)果為假;基于對(duì)所述第一程序文件的多個(gè)語(yǔ)法識(shí)別結(jié)果確定所述語(yǔ)法匹配結(jié)果,包括:

7.根據(jù)權(quán)利要求1所述的編程語(yǔ)言編譯方法,其特征在于,將所述第一程序文件轉(zhuǎn)換為基于第二程序語(yǔ)言的第二程序文件,包括:

8.一種編程語(yǔ)言編譯裝置,其特征在于,包括:

9.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),存儲(chǔ)有當(dāng)被處理器執(zhí)行時(shí)使得處理器執(zhí)行如權(quán)利要求1-7中任一項(xiàng)權(quán)利要求所述的編程語(yǔ)言編譯方法的計(jì)算機(jī)程序。

10.一種終端設(shè)備,包括存儲(chǔ)器、處理器以及存儲(chǔ)在所述存儲(chǔ)器中并可在所述處理器上運(yùn)行的計(jì)算機(jī)程序,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1-7中任一項(xiàng)權(quán)利要求所述的編程語(yǔ)言編譯方法。


技術(shù)總結(jié)
本申請(qǐng)?zhí)峁┝艘环N編程語(yǔ)言編譯方法、裝置、可讀存儲(chǔ)介質(zhì)及終端設(shè)備,涉及計(jì)算機(jī)技術(shù)領(lǐng)域,方法包括:響應(yīng)于文件編譯指令,獲取待編譯的第一程序文件;在確定所述第一程序文件的文件標(biāo)識(shí)為指定文件標(biāo)識(shí)的情況下,通過(guò)正則表達(dá)式對(duì)所述第一程序文件的程序文本進(jìn)行語(yǔ)法匹配,獲得語(yǔ)法匹配結(jié)果;若根據(jù)語(yǔ)法匹配結(jié)果確定所述第一程序文件的編寫(xiě)語(yǔ)言為第一程序語(yǔ)言,將所述第一程序文件轉(zhuǎn)換為基于第二程序語(yǔ)言的第二程序文件。本申請(qǐng)通過(guò)在編譯器中封裝ST語(yǔ)言檢測(cè)模塊和ST語(yǔ)言轉(zhuǎn)C++模塊,從而通過(guò)在C++代碼中遷移ST語(yǔ)言,實(shí)現(xiàn)了對(duì)C++和ST語(yǔ)言一同編譯的效果。

技術(shù)研發(fā)人員:呂大軍,于成鑫,邢聰聰,檀雪云,張濤,王琪
受保護(hù)的技術(shù)使用者:國(guó)能智深控制技術(shù)有限公司
技術(shù)研發(fā)日:
技術(shù)公布日:2024/12/30
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
庆云县| 得荣县| 万安县| 鹤壁市| 河间市| 类乌齐县| 康乐县| 云龙县| 左权县| 正安县| 彭阳县| 达日县| 措勤县| 澄迈县| 华容县| 霍城县| 安塞县| 信宜市| 平顺县| 衡东县| 徐州市| 莆田市| 牡丹江市| 乌兰察布市| 崇义县| 宁陕县| 唐河县| 隆子县| 安多县| 琼海市| 盐亭县| 永安市| 天全县| 大新县| 双城市| 华池县| 土默特左旗| 苏尼特右旗| 广德县| 嵊泗县| 正镶白旗|