詞法分析器制作與應(yīng)用 設(shè)計(jì)思想 (1)程序主體結(jié)構(gòu)部分: 說(shuō)明部分 %% 規(guī)則部分 %% 輔助程序部分 (2)主體結(jié)構(gòu)的說(shuō)明 在這里說(shuō)明部分告訴我們使用的LETTER,DIGIT, IDENT(標(biāo)識(shí)符,通常定義為字母開頭的字母數(shù)字串)和STR(字符串常量,通常定義為雙引號(hào)括起來(lái)的一串字符)是什么意思.這部分也可以包含一些初始化代碼.例如用#include來(lái)使用標(biāo)準(zhǔn)的頭文件和前向說(shuō)明(forward ,references).這些代碼應(yīng)該再標(biāo)記"%{"和"%}"之間 規(guī)則部分> 可以包括任何你想用來(lái)分析的代碼 我們這里包括了忽略所有注釋中字符的功能,傳送ID名稱和字符串常量?jī)?nèi)容到主調(diào)函數(shù)和main函數(shù)的功能. (3)實(shí)現(xiàn)原理 程序中先判斷這個(gè)句語(yǔ)句中每個(gè)單元為關(guān)鍵字、常數(shù)、運(yùn)算符、界符,對(duì)與不同的單詞符號(hào)給出不同編碼形式的編碼,用以區(qū)分之。 PL/0語(yǔ)言的EBNF表示 <常量定義>::=<標(biāo)識(shí)符>=<無(wú)符號(hào)整數(shù)> <標(biāo)識(shí)符>::=<字母>={<字母>|<數(shù)字>} <加法運(yùn)算符>::=+|- <乘法運(yùn)算符>::=*|/ <關(guān)系運(yùn)算符>::==|#|<|<=|>|>= <字母>::=a|b|…|X|Y|Z <數(shù)字>::=0|1|2|…|8|9
上傳時(shí)間: 2015-11-04
上傳用戶:zhengzg
以字符形式從終端輸入語(yǔ)法正確的,不含變量的整數(shù)表達(dá)式。利用算符優(yōu)先關(guān)系,實(shí)現(xiàn)對(duì)算術(shù)四則混合運(yùn)算表達(dá)式求值。
上傳時(shí)間: 2015-11-08
上傳用戶:四只眼
編譯原理 詞法分析器 識(shí)別標(biāo)識(shí)符,關(guān)鍵字,運(yùn)算符,常量,界符包括出錯(cuò)處理
標(biāo)簽: 編譯原理 分析器 標(biāo)識(shí)符 識(shí)別
上傳時(shí)間: 2015-11-12
上傳用戶:a673761058
用AVR實(shí)現(xiàn)軟USB轉(zhuǎn)RS232的全部資料,包含源碼與電路解
上傳時(shí)間: 2014-11-23
上傳用戶:tonyshao
利用離散點(diǎn)數(shù)據(jù),畫點(diǎn)符,并進(jìn)行不規(guī)則三角網(wǎng)的構(gòu)建,耗時(shí)短,速度快,
標(biāo)簽: 離散 數(shù)據(jù)
上傳時(shí)間: 2015-11-13
上傳用戶:yulg
本文所選的符號(hào)信源是從鍵盤上的94個(gè)字符中隨機(jī)抽取,產(chǎn)生50000個(gè)隨機(jī)符號(hào)數(shù),包括了大小寫字母和一些基本的字符。這些隨機(jī)數(shù)為了方便起見我在網(wǎng)上隨機(jī)摘抄了幾篇英語(yǔ)文摘作為50000個(gè)隨機(jī)產(chǎn)生的符號(hào)數(shù)以此來(lái)統(tǒng)計(jì)這些字符出現(xiàn)的概率,統(tǒng)計(jì)出概率,信源熵也自然求出,但本文只統(tǒng)計(jì)出符號(hào)信源出現(xiàn)的概率。
上傳時(shí)間: 2014-10-14
上傳用戶:cuiyashuo
項(xiàng)目名稱:科學(xué)計(jì)算器 姓名:劉博 學(xué)號(hào):03031147 班級(jí):能動(dòng)35 完成時(shí)間:2004-11-29 指導(dǎo)教師:羅建軍 一.項(xiàng)目背景: 1.背景簡(jiǎn)介 我們?cè)趯W(xué)習(xí)生活中,常會(huì)遇到一些繁雜的數(shù)值運(yùn)算,尤其是遇到正弦、余弦、對(duì)數(shù)等手算困難的運(yùn)算時(shí),這時(shí)候我們就必須用到科學(xué)計(jì)算器,所以我便著手開發(fā)了這個(gè)計(jì)算器程序,以便用于自己的學(xué)習(xí)工作。 2.項(xiàng)目目標(biāo) 編寫一個(gè)能進(jìn)行科學(xué)計(jì)算的計(jì)算器程序。 要求: 輸入:被計(jì)算的數(shù)據(jù) 輸出:計(jì)算結(jié)果 3.運(yùn)行環(huán)境 1 硬件: PIII 計(jì)算機(jī)(CPU 主頻 550MHz以上、128MB內(nèi)存) 2 軟件 Windows XP 操作系統(tǒng) Visual C++ 6.0 二.算法描述 1 選用對(duì)話框,并加入控件,做好計(jì)算器可視的外表。 2 給控件添加屬性中的ID和名稱。 3 在CCaculateDilg類中添加主要程序代碼。 4 數(shù)字的輸入 這個(gè)計(jì)算器應(yīng)用程序?qū)崿F(xiàn)的是順序連接計(jì)算,即按照計(jì)算數(shù)和計(jì)算符的輸入次序進(jìn)行計(jì)算,知道按下"="按鈕為止完成一次計(jì)算過程.過程可分為三個(gè)步驟:一是對(duì)計(jì)算數(shù)和計(jì)算符的輸入處理 二是對(duì)計(jì)算的處理 三是對(duì)顯示的處理. 1.處理輸入 在程序中使用m_operand來(lái)儲(chǔ)存當(dāng)前的輸入.每次輸入時(shí)都必須將輸入的數(shù)字累
上傳時(shí)間: 2014-07-07
上傳用戶:qw12
(1) 給定一段符合Pascal子集語(yǔ)法的語(yǔ)言,能成功轉(zhuǎn)換成C語(yǔ)言; (2) 一個(gè)簡(jiǎn)單的說(shuō)明文檔; (3) 2007.7.14之前上傳到ftp:// C07:C07@10.11.3.71/upload,用學(xué)號(hào)建立自己的目錄; (4) (可額外加分5分)若有出錯(cuò)處理功能,請(qǐng)?jiān)谡f(shuō)明文檔中寫明可以處理哪幾項(xiàng)錯(cuò)誤。 注意事項(xiàng): (1) 兩人一組 (2) 可以使用詞法、語(yǔ)法自動(dòng)生成工具,windows下有Flex,Bison,Linux下有Lex,Yacc,Java的有Jlex,JavaCC,ANTLR等 (3) 不用考慮Pascal和C的關(guān)鍵詞不同問題,即Pascal子集語(yǔ)言中假設(shè)不出現(xiàn)int,for等作為變量標(biāo)志符 (4) read()和write()可用由scanf(),printf()等組成的語(yǔ)句轉(zhuǎn)換。 (5) 如果有疑問可以發(fā)信給我 xpqiu@fudan.edu.cn.
上傳時(shí)間: 2015-11-20
上傳用戶:talenthn
在USB中,USB HOST是通過各種描述符來(lái)識(shí)別設(shè)備的,有設(shè)備描述符, 配置描述符,接口描述符,端點(diǎn)描述符,字符串描述符,報(bào)告描述符等等。 USB報(bào)告描述符(Report Descriptor)是HID設(shè)備中的一個(gè)描述符,它是比較 復(fù)雜的一個(gè)描述符
標(biāo)簽: USB
上傳時(shí)間: 2014-01-09
上傳用戶:330402686
長(zhǎng)高44b0xi BIOS源碼 FS44B0II BIOS具有啟動(dòng)、引導(dǎo),下載、燒寫,設(shè)置日期、時(shí)間,設(shè)置工作頻率等多種功能,並且支持各種參數(shù)的存儲(chǔ)和自動(dòng)調(diào)用。 可以用flashpgm等軟件將BIOS燒寫到Flash中去,BIOS的自身駐留地址位于NOR FLASH的0x1f0000處,系統(tǒng)參數(shù)保存在0x1ff000以上區(qū)域中。所以在燒寫完BIOS,上電復(fù)位后先要執(zhí)一定要執(zhí)行backup命令把BIOS本身拷貝到NOR FLASH的高端1f0000去。
上傳時(shí)間: 2013-12-25
上傳用戶:ainimao
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1