freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

符號(hào)表的組織與管理-全文預(yù)覽

  

【正文】 } } } 41 通常對(duì)于具有分程序結(jié)構(gòu)的語(yǔ)言可用兩種方式組織它們的符號(hào)表: 分程序結(jié)構(gòu)語(yǔ)言符號(hào)表的兩種組織方式 ?一是對(duì)每個(gè)分程序建立一個(gè) 獨(dú)立 的分表結(jié)構(gòu)的符號(hào)表; ?一是把各分程序符號(hào)組織在 一張 單表結(jié)構(gòu)的符號(hào)表中。 { //第三層分程序 int d。 40 源程序的形式 { //第一層分程序 int a。使得符號(hào)表的管理顯得臃腫。 37 記錄數(shù)組內(nèi)情向量的符號(hào)表 N ame…aInformation數(shù)組…… …符號(hào)表維數(shù) 首地址下界 i1上界 u1…內(nèi)情向量表38 這樣組織的 最大優(yōu)點(diǎn) 是每個(gè)符號(hào)表的屬性個(gè)數(shù)和結(jié)構(gòu)完全相同。 這時(shí),可 在符號(hào)表外另設(shè)一組存儲(chǔ)空間 ,并在符號(hào)表信息欄中放一指針來(lái)指向這個(gè)存儲(chǔ)空間始址。 類型:整、實(shí)、布爾、字符、指針等。 } N ameabcInformation整型,變量,形參整型,變量,形參整型,變量( a )value10( b )N amefInformation二目子程序,入口地址( c )按標(biāo)識(shí)符種屬組織的各種符號(hào)表 (a) 簡(jiǎn)單變量名表; (b) 常數(shù)表; (c) 函數(shù)入口名表 33 根據(jù)符號(hào)表名字欄的組織特點(diǎn),符號(hào)表信息欄的組織方式也可以分為兩類: 固定信息內(nèi)容和僅記錄信息存放地址。 32 int f(int a,int b) { int c。 28 直接方式 直接方式是指在符號(hào)表中直接填入源程序中定義的標(biāo)識(shí)符及相關(guān)信息。 ② 訪問(wèn)它的有關(guān)信息; ③ 往表中填入或更新它在表中的某些信息; 。 ③ 函數(shù)及過(guò)程的形參 函數(shù)和過(guò)程的形參作為該函數(shù)或過(guò)程的局部變量,但它又是該函數(shù)或過(guò)程對(duì)外的接口。 25 符號(hào)的其它屬性 ① 數(shù)組內(nèi)情向量 編譯程序處理數(shù)組說(shuō)明的主要工作是,把描述數(shù)組屬性信息的內(nèi)情向量登錄到符號(hào)表中。 通常有兩類存儲(chǔ)區(qū),即 靜態(tài)存儲(chǔ)區(qū)和動(dòng)態(tài)存儲(chǔ)區(qū) ; ① 靜態(tài)存儲(chǔ)區(qū) 該存儲(chǔ)區(qū)單元經(jīng)定義分配后成為靜態(tài)單元,即在整個(gè)語(yǔ)言程序運(yùn)行過(guò)程中是不可改變的。 無(wú)論是作為函數(shù)形參的定義也好或作為分程序中的局部定義也好,都可統(tǒng)一地用定義層次來(lái)區(qū)分。 21 其它兩種情況影響到一個(gè)變量的可視性 ⑴ 函數(shù)的形式參數(shù): int a; // 外部定義的整型變量 a int func(float a, int b) // 函數(shù)內(nèi)部定義的局部整型變量 a, // 屏蔽了外部定義的整型變量 a { … … a … // 引用的是函數(shù)內(nèi)部定義 (此處是形參 )的局部整型變量 a … ::a … //引用 int a … } 22 ⑵ 分程序(或復(fù)合語(yǔ)句)結(jié)構(gòu): … { int a; // 第一層頭 ,定義的局部整型變量 a … { char a; // 第二層頭 ,定義的局部字符型變量 a … { // 第三層頭 … { float a; // 第四層頭 ,定義的局部實(shí)型變量 a … } // 第四層尾 … a … // 引用第二層定義的局部字符型變量 a } // 第三層尾 } // 第二層尾 } // 第一層尾 第三層所引用的 a, 不是第四層的 float a; 不是第一層 int a; 而是第二層 char a; 也就可以說(shuō)從第三層向外,看到的第一個(gè)定義 a 的變量定義即 char a。 C 語(yǔ)言中一個(gè)外部變量的作用域是整個(gè)程序,因此一個(gè)外部變量符號(hào)的定義在整個(gè)程序中只能出現(xiàn)一次,同名變量的說(shuō)明可以出現(xiàn)多次那是為了使用和編譯的方便。 區(qū)別符號(hào)存儲(chǔ)類型的屬性是編譯過(guò)程語(yǔ)義處理、檢查和存儲(chǔ)分配的重要依據(jù)。 例如在 C 語(yǔ)言中用 static 定義是屬于文件的靜態(tài)存儲(chǔ)變量或?qū)儆诤瘮?shù)內(nèi)部的靜態(tài)存儲(chǔ)變量,用 register 定義使用寄存器存儲(chǔ)的變量。 符號(hào)表中設(shè)置一個(gè)符號(hào)類型域,存放該符號(hào)的類型。 復(fù)合數(shù)據(jù)類型有數(shù)組類型、記錄結(jié)構(gòu)類型等,它們都是由基本數(shù)據(jù)類型組合而成的。 對(duì)于函數(shù)的數(shù)據(jù)類型指的是該函數(shù)值的數(shù)據(jù)類型。 15 根據(jù)語(yǔ)言的定義,程序中出現(xiàn)的 重名標(biāo)識(shí)符 定義將按照該標(biāo)識(shí)符在程序中的作用域和可視性規(guī)則進(jìn)行相應(yīng)的處理。 14 通常在語(yǔ)言程序中標(biāo)識(shí)符字符串是一個(gè)變量、函數(shù)或過(guò)程的 唯一標(biāo)志 ,因此在符號(hào)表中符號(hào)名作為表項(xiàng)之間的唯一區(qū)別一般不允許重名。而有關(guān)區(qū)域的標(biāo)志及相對(duì)位置都是作為該變量的語(yǔ)義信息被收集在該變量的符號(hào)表屬性中。語(yǔ)言程序中的符號(hào)變量由它被定義的存儲(chǔ)類別(如在 C、 FORTRAN語(yǔ)言中)或被定義的位置(如分程序結(jié)構(gòu)的位置)來(lái)確定。 //定義實(shí)型數(shù)組 A,重定義沖突 int A[2][3]。 特別是在 多趟編譯 及程序分段編譯(在 PASCAL 及 C 中以文件為單位)的情況下,更需檢查標(biāo)識(shí)符屬性在上下文中的一致性和合法性。 例如,編譯程序分析到下述兩個(gè)說(shuō)明語(yǔ)句 int x, y[5]。 ?在語(yǔ)義分析時(shí) ,符號(hào)表中的信息可以用于語(yǔ)義檢查; ?在代碼優(yōu)化時(shí) ,編譯程序則利用符號(hào)表提供的信息選出恰當(dāng)?shù)拇a進(jìn)行優(yōu)化; ?而目標(biāo)代碼生成時(shí) ,編譯程序?qū)⒁罁?jù)符號(hào)表中的符號(hào)名來(lái)分配目標(biāo)地址。 息; ,按各自的需要從表中獲取不同的屬性信息。 ?采用單表結(jié)構(gòu)時(shí) ,如何解決分程序構(gòu)造中同名名字聲明的可視性規(guī)則。 符號(hào)表在編譯全過(guò)程的地位和作用非常重要,是進(jìn)行上下文合法性檢查和語(yǔ)義處理及代碼生成的依據(jù)。 符號(hào)表的組織 167。 符號(hào)表的作用 167。 2 【學(xué)習(xí)指南】 在編譯程序中符號(hào)表用來(lái)存放源程序中出現(xiàn)的有關(guān)名字的屬性信息,這些信息集中反映了名字的語(yǔ)義特征屬性。 ?變量的類型和存儲(chǔ)類別等屬性的重要性。 符號(hào)表的作用 在編譯程序中符號(hào)表用來(lái)存放語(yǔ)言程序中出現(xiàn)的有關(guān)標(biāo)識(shí)符的屬性信息,這些信息
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1