[發(fā)明專利]一種對控制程序進行編譯的方法和裝置有效
| 申請?zhí)枺?/td> | 201410504292.2 | 申請日: | 2014-09-26 |
| 公開(公告)號: | CN104267999B | 公開(公告)日: | 2018-09-18 |
| 發(fā)明(設(shè)計)人: | 裘坤;劉志勇;周曼;平志明 | 申請(專利權(quán))人: | 浙江中控技術(shù)股份有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京集佳知識產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 李靚;王寶筠 |
| 地址: | 310053 浙江省杭州市*** | 國省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 控制程序 進行 編譯 方法 裝置 | ||
1.一種對控制程序進行編譯的方法,其特征在于,包括:
將源程序進行編譯和鏈接,生成具有有限可變特性的中間語言程序;
根據(jù)預(yù)先建立的中間語言字典中具有有限可變特性的中間語言程序與可被目標(biāo)處理器直接執(zhí)行的目標(biāo)指令之間的映射關(guān)系,將所述具有有限可變特定的中間語言程序映射為目標(biāo)指令。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
在將源程序進行編譯和鏈接之前,為在所述源程序外部定義的外部變量和/或在所述源程序內(nèi)部定義的內(nèi)部變量按預(yù)設(shè)的固定規(guī)則分配內(nèi)存空間。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述在將源程序進行編譯和鏈接之前,為所述源程序的內(nèi)部變量按預(yù)設(shè)的固定規(guī)則分配內(nèi)存空間為:
以程序組織單元POU為單位,為POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述以程序組織單元POU為單位,為POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間為:
以程序組織單元POU為單位,按照各個POU在所述源程序中定義的前后順序,為POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間,以使得分配給各個POU的內(nèi)存空間在地址上是前后連續(xù)的。
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,
當(dāng)將源程序進行增量編譯時,所述將源程序進行編譯和鏈接,生成具有有限可變特性的中間語言程序為:
將源程序進行增量編譯和鏈接,生成具有有限可變特性的中間語言程序;
所述在將源程序進行增量編譯和鏈接之前,為在所述源程序外部定義的外部變量和/或在所述源程序內(nèi)部定義的內(nèi)部變量按預(yù)設(shè)的固定規(guī)則分配內(nèi)存空間,包括:
以被修改的POU為單位,為被修改的POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
在將源程序進行編譯和鏈接之前,為各個POU互相交換的所有參數(shù)分配一個固定的內(nèi)存空間。
7.根據(jù)權(quán)利要求3或4所述的方法,其特征在于,當(dāng)所述POU中定義的內(nèi)部變量包括對象實例和/或類時,所述為POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間,包括:
在所述內(nèi)存空間中,為不同的對象實例分配不同的內(nèi)存子空間;
和/或,
在所述內(nèi)存空間中,為不同的類分配不同的內(nèi)存子空間。
8.一種對控制程序進行編譯的裝置,其特征在于,包括:
編譯單元,用于將源程序進行編譯和鏈接,生成具有有限可變特性的中間語言程序;
映射單元,用于根據(jù)預(yù)先建立的中間語言字典中具有有限可變特性的中間語言程序與可被目標(biāo)處理器直接執(zhí)行的目標(biāo)指令之間的映射關(guān)系,將所述具有有限可變特性的中間語言程序映射為目標(biāo)指令。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括:
第一內(nèi)存分配單元,用于在將源程序進行編譯和鏈接之前,為在所述源程序外部定義的外部變量和/或在所述源程序內(nèi)部定義的內(nèi)部變量按預(yù)設(shè)的固定規(guī)則分配內(nèi)存空間。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述第一內(nèi)存分配單元具體用于,以程序組織單元POU為單位,為POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間。
11.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述第一內(nèi)存分配單元具體用于,以POU為單位,按照各個POU在所述源程序中定義的前后順序,為POU中定義的內(nèi)部變量分配一個固定的內(nèi)存空間,以使得分配給各個POU的內(nèi)存空間在地址上是前后連續(xù)的。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于浙江中控技術(shù)股份有限公司,未經(jīng)浙江中控技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410504292.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





