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

正文內(nèi)容

pl0-編譯程序講解(專業(yè)版)

  

【正文】 write(step=“, step)。 var k,v: integer。 4 符號(hào)表的一般形式討論 符號(hào)表的作用和內(nèi)容 ?語(yǔ)義檢查的依據(jù); ?目標(biāo)代碼生成階段地址分配的依據(jù); ?在編譯中,符號(hào)表被頻繁使用,表的組織方式對(duì)編譯的 效率起著十分重要的作用。 s[2]=0。 … } ...... if (1 == block(lev+1, tx, nxtlev)) ...... } ...... } PL/0分程序的處理子程序block 初值為 fsys [period]+declbegsys+statbegsys 下標(biāo)指針 cx, tx和 變量 dx的作用 CX:為目標(biāo)代碼 code數(shù)組的下標(biāo)指針。 GEN有 3個(gè) 參數(shù) ,分別代表目標(biāo)代碼的 功能碼 , 層差和 位移量 。 int block(int lev, int tx, bool *fsys)。 /* 不能為過(guò)程名 */ …… 編譯程序的錯(cuò)誤處理 錯(cuò)誤處理的原則:盡可能準(zhǔn)確指出出錯(cuò)位置,錯(cuò)誤性質(zhì),盡可能進(jìn)行校正。 ?語(yǔ)義分析 TABLE表 若已 有 過(guò) 正確定義 ,檢查引用與說(shuō)明的屬性是否一致, 若不一致則錯(cuò) 。} /* var后應(yīng)是標(biāo)識(shí) 符 */ return 0。 …… …… …… a a1 a2 a3 P b1 b2 co nsta nt VA RIAB LE VA RIAB LE VA RIAB LE PR OCED UR VA RIAB LE VA RIAB LE 35 0 0 0 0 1 1 3 4 5 1 3 4 5 P1 P2 d PR OCED UR PR OCED UR VA RIAB LE 1 1 2 k1 k 2 3 4 4 注意:在單趟編譯中,對(duì)于并列的函數(shù)(或分程序),其相應(yīng)的符號(hào)表不會(huì)同時(shí)存在。 } PL/0語(yǔ)義分析的設(shè)計(jì)與實(shí)現(xiàn) ?說(shuō)明部分的分析 與處理 ?表格管理 ?過(guò)程體 (語(yǔ)句)的分析 與處理 說(shuō)明部分的分析 與處理 登錄符號(hào)表 ?對(duì)每個(gè)過(guò)程(含主程序) 說(shuō)明的對(duì)象 ( 變量 , 常量 和 過(guò)程 )造符號(hào)表 ?登錄 標(biāo)識(shí)符的 屬性 。 termdo(nxtlev, ptx, lev)?!?、 ‘ (’ 、 ‘ )’等 詞法分析過(guò)程 :getsym()框圖( P19圖 ) 在編譯程序中,單詞的表示方式 :( sym, id/num) ? enum symbol {nul,ident,number,plus,… ,varsym,procsym}; ?當(dāng)識(shí)別出標(biāo)識(shí)符時(shí)先查 保留字 表 ?保留 字及內(nèi)部表示對(duì)應(yīng)表 : char word[norw][al]。 LIT 0 a 將常數(shù)值取到棧頂, a 為常數(shù)值 LOD l a 將變量值取到棧頂, a 為偏移量, l 為層差 STO l a 將棧頂內(nèi)容送入某變量單元中, a 為偏移量, l 為層差 CAL l a 調(diào)用過(guò)程, a 為過(guò)程地址, l 為層差 INT 0 a 在運(yùn)行棧中為被調(diào)用的過(guò)程開辟 a 個(gè)單元的數(shù)據(jù)區(qū) JMP 0 a 無(wú)條件跳轉(zhuǎn)至 a 地址 JPC 0 a 條件跳轉(zhuǎn),當(dāng)棧頂布爾值非真則跳轉(zhuǎn)至 a 地址,否則順序執(zhí)行 OPR 0 0 過(guò)程調(diào)用結(jié)束后 , 返回調(diào)用點(diǎn)并退棧 OPR 0 1 棧頂元素取反 OPR 0 2 次棧頂與棧 頂相加,退兩個(gè)棧元素,結(jié)果值進(jìn)棧 OPR 0 3 次棧頂減去棧頂,退兩個(gè)棧元素,結(jié)果值進(jìn)棧 OPR 0 4 次棧頂乘以棧頂,退兩個(gè)棧元素,結(jié)果值進(jìn)棧 OPR 0 5 次棧頂除以棧頂,退兩個(gè)棧元素,結(jié)果值進(jìn)棧 OPR 0 6 棧頂元素的奇偶判斷,結(jié)果值在棧頂 OPR 0 7 OPR 0 8 次棧頂與棧頂是否相等,退兩個(gè)棧元素,結(jié)果值進(jìn)棧 OPR 0 k k 分別為 9 不等, 10 小于, 11 大于等于, 12 大于, 13 小于等于 OPR 0 14 棧頂值輸出至屏幕 OPR 0 15 屏幕輸出換行 OPR 0 16 從命令行讀入一個(gè)輸入置于棧頂 指 令 功 能 表 ( 0) jmp 0 8 轉(zhuǎn)向 主程序入口 ( 1) jmp 0 2 轉(zhuǎn)向 過(guò)程 p入口 ( 2) int 0 3 為過(guò)程 p開辟空間 ( 3) lod 1 3 ( 4) lit 0 10 ( 5) opr 0 2 ( 6) sto 1 4 ( 7) opr 0 0 退棧并返回調(diào)用點(diǎn) ( 8) int 0 5 ( 9) opr 0 16 (10) sto 0 3 (11) lod 0 3 (12) lit 0 0 (13) opr 0 9 (14) jpc 0 24 條件不滿足轉(zhuǎn) 24 (15) cal 0 2 (16) lit 0 2 (17) lod 0 4 (18) opr 0 4 (19) opr 0 14 (20) opr 0 15 換行 (21) opr 0 16 (22) sto 0 3 (23) jmp 0 11 (24) opr 0 0 SL 0 DL 0 RA 0 變量 b 變量 c RA 16 SL 0 DL 0 運(yùn)行棧 const a=10。 procedure ident 。 m := m 1。 ( * 常量說(shuō)明部分 *) VAR B,C。 5 棧式存儲(chǔ)管理的再討論 167。 END. 遞歸計(jì)算 sum = 1! + 2 ! + ... + n! var n, m, fact, sum。 end. const ident number = , 。 r2: … … A過(guò)程 call B。 PL/0編譯程序 PL/0編譯程序 類 p- code解釋 程序 類 p- code代碼 PL/0源程序 輸入數(shù)據(jù) 輸出數(shù)據(jù) PL/0編譯程序的結(jié)構(gòu)框架 PL/0編譯程序的結(jié)構(gòu) 詞法分析程序 語(yǔ)法語(yǔ)義分析程序 代碼生成程序 表格管理程序 出錯(cuò)處理程序 PL/0源程序 目標(biāo)程序 編譯系統(tǒng)總體流程圖 啟 動(dòng)置 初 值調(diào) 用 g e t s y m 取 單 詞調(diào) 用 b l o c k 過(guò) 程當(dāng) 前 單 詞是 否 為 源 程 序 結(jié) 束 符39。 程序 pl/0 分程序 block 語(yǔ)句 statement 條件 condition 表達(dá)式 expression 項(xiàng) term 因子 factor 語(yǔ) 法 調(diào) 用 關(guān) 系 圖 VAR A。 if (sym == rparen) getsymdo。 var c。tx 變量說(shuō)明處理 int vardeclaration(int* ptx,int lev,int* pdx) {if (sym == ident) {enter(variable, ptx, lev, pdx)。 break。 } /* 標(biāo)識(shí)符未聲明 */ else {switch (table[i].kind) {case constant: /* 名字為常量 */ break。 statbegsys: [beginsym,callsym,ifsym,whilesym,readsym,writesym]。 所以在 write語(yǔ)句中 調(diào)用 expression時(shí) 后跟符為: expression([rparen,ma]+fsys)。 if(sym==ident) {enter(procedur, amp。 b:=1。 l=l1。 a[i]:=a[j]。 end end。 上機(jī)調(diào)試觀察調(diào)用執(zhí)行過(guò)程,畫出調(diào)用分解示意圖 move(2, a, c, b)。 begin ... a ...exchange (i, j)。 ?棧符號(hào)
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1