一個遞歸下降語法分析器。 測試數據為 i a + nul ( nul i b * nul i c ) nul # nul
上傳時間: 2015-11-02
上傳用戶:qweqweqwe
詞法分析器制作與應用 設計思想 (1)程序主體結構部分: 說明部分 %% 規則部分 %% 輔助程序部分 (2)主體結構的說明 在這里說明部分告訴我們使用的LETTER,DIGIT, IDENT(標識符,通常定義為字母開頭的字母數字串)和STR(字符串常量,通常定義為雙引號括起來的一串字符)是什么意思.這部分也可以包含一些初始化代碼.例如用#include來使用標準的頭文件和前向說明(forward ,references).這些代碼應該再標記"%{"和"%}"之間 規則部分> 可以包括任何你想用來分析的代碼 我們這里包括了忽略所有注釋中字符的功能,傳送ID名稱和字符串常量內容到主調函數和main函數的功能. (3)實現原理 程序中先判斷這個句語句中每個單元為關鍵字、常數、運算符、界符,對與不同的單詞符號給出不同編碼形式的編碼,用以區分之。 PL/0語言的EBNF表示 <常量定義>::=<標識符>=<無符號整數> <標識符>::=<字母>={<字母>|<數字>} <加法運算符>::=+|- <乘法運算符>::=*|/ <關系運算符>::==|#|<|<=|>|>= <字母>::=a|b|…|X|Y|Z <數字>::=0|1|2|…|8|9
上傳時間: 2015-11-04
上傳用戶:zhengzg
網絡上最牛B的關于C編程的雜志,由于種種原因該雜志已經停刊了,所以這是絕版。
上傳時間: 2013-12-14
上傳用戶:redmoons
交通信號燈的控制: 1. 通過8255A并口來控制LED發光二極管的亮滅。 2. A口控制紅燈,B口控制黃燈,C口控制綠燈。 3. 輸出為0則亮,輸出為1則滅。 4. 用8253定時來控制變換時間 。 要求:設有一個十字路口,1、3為南,北方向,2、4為東西方向,初始態為4個路口的紅燈全亮。之后,1、3路口的綠燈亮,2、4路口的紅燈亮,1、3路口方向通車。延遲30秒后,1、3路口的綠燈熄滅,而1,3路口的黃燈開始閃爍(1HZ)。閃爍5次后,1、3路口的紅燈亮,同時2、4路口的綠燈亮,2、4路口方向開始通車。延遲30秒時間后,2、4路口的綠燈熄滅,而黃燈開始閃爍。閃爍5次后,再切換到1、3路口方向。之后,重復上述過程。
上傳時間: 2014-01-03
上傳用戶:zhouli
中序轉后序, 適用于公式運算及相關轉換 如A=B+C
上傳時間: 2013-11-27
上傳用戶:皇族傳媒
畢業設計關系b/s系統 畢業設計管理工作 畢業設計管理數據
上傳時間: 2013-12-06
上傳用戶:1101055045
1、 :編寫并調試一個模擬的進程調度程序,采用“最高優先數優先”調度算法對進程進行調度。 “最高優先數優先調度算法的基本思想是把CPU分配給就緒隊列中優先數最高的進程。嘗試靜態優先數與動態優先數兩種方法: a) 靜態優先數是指優先數在整個進程運行期間不再改變。優先數可以在數據輸入時指定,也可以根據到達順序、運行時間確定。 b) 動態優先數是指進程的優先數在創建進程時可以給定一個初始值,并且可以按一定原則修改優先數。例如進程獲得一次CPU后就將其優先數減少1。或者進程等待的時間超過某一時限時增加其優先數的值。 2、 編寫并調試一個模擬的進程調度程序,模擬實現多級反饋隊列調度算法。 3、 編寫并調試一個模擬的進程調度程序,模擬實現最低松弛度優先算法。 4、 程序與報告要求: a) 對上述要求1、2、3,至少要完成一項,鼓勵嘗試多種算法。 b) 輸出結果要盡量詳細清晰,能夠反映調度后隊列變化,PCB內部變化。 c) 可以選擇在Windows或Linux環境下編寫、運行程序 d) 鼓勵使用不同的開發工具在不同平臺環境上進行開發比較。 e) 在實驗報告中,一方面可以對實驗結果進行分析,一方面可以對各種算法進行比較,分析它們的優劣,說明各種算法適用于哪些情況下的調度。
上傳時間: 2015-11-13
上傳用戶:zq70996813
JSP中文網新聞發布系統是由jsp中文網為了方便管理自己的相關技術文章而編寫的b/s模式的集新聞發布、管理與一體的新聞發布系統。
上傳時間: 2014-01-22
上傳用戶:13215175592
一 . 需求分析: 1) 輸入形式和輸入值范圍: 輸入形式是要壓縮(或者要解壓)的文件路徑,輸入范圍是字符串,而且要是文件的路徑。 2) 輸出形式: 輸出相應的編碼壓縮文件和解碼原文件 3) 程序所能達到的功能: 利用哈夫曼對ASCII文件做不等長編碼,達到壓縮文件。利用哈夫曼樹的遍歷,達到解壓文件的目的。程序的功能也就是實現壓縮和解壓ASCII類型文件的目的。 4)測試數據:(包括正確的輸入數據及其輸出結果和含有錯誤輸入及其輸出結果) 測試輸入或者輸出文本框是不是有空的,是不是不是有效路徑。進行條件判斷,實現錯誤處理。 比如要壓縮:c:\a.txt 文件路徑就是:c:\a.txt。如果輸入框是空的,就判斷,然后用MessageBox處理信息。 如果文件路徑和文件的輸出路徑都寫正確的話,就會輸出相應的壓縮或者解壓文件,否則用函數MessageBox提示錯誤。然后進行更正。 二 . 概要設計: 1) 哈夫曼樹的特點 a) 是二叉樹的一種,而且是一種沒有度數是1的二叉樹 b) 一棵樹有n個葉子,就會用2n-1個節點 c) 一種“最優”二叉樹,由于樹的帶權路徑(WPL)最小 d) 由于它是由下到上順序構造的,使得分支節點和葉子節點從下到上,權值都是從小到大的順序排列的
上傳時間: 2013-12-03
上傳用戶:zsjzc
一 . 需求分析: 1) 輸入形式和輸入值范圍: 輸入形式是某集體的“人名”,輸入的是人名的拼音,而且字符長度不超過19。 2) 輸出形式: 輸出相應的“人名”哈希表,并實現查找的功能,且平均查找長度不超R. 3) 程序所能達到的功能: 利用哈希函數對“人名”拼音做編碼,建立哈希表。并實現查找的功能,且平均查找長度不超R。 4)測試數據:(包括正確的輸入數據及其輸出結果和含有錯誤輸入及其輸出結果) 測試輸入是不是有效的。進行條件判斷,實現錯誤處理。 如果輸入是正確的話,就會按程序的5個功能一步步建立起哈希表、查看哈希表、哈希表的查找。否則用函數MessageBox提示錯誤。然后進行更正。 二 . 概要設計: 1) 哈希表的特點 a) 據哈希函數和處理沖突的方法將一組關鍵字映像到一個有限的區間上 b) 以關鍵字在地址集中的“像”作為記錄在表中的存儲位置 c) 不經過任何比較,一次存取便能得到所查記錄
上傳時間: 2014-01-08
上傳用戶:498732662