-
簡介:JAVA語言程序設計程序流程,教師段鵬飛,萬物皆對象,現(xiàn)實世界是由什么組成的,世界由對象組成,顧客類轎車類,,類是模子,確定對象將會擁有的狀態(tài)(屬性)和行為(方法),類具有相同屬性和方法的一組對象的集合,類,定義一個類的步驟1、定義類名2、編寫類的屬性3、編寫類的方法,如何定義類,PUBLICCLASSSTUDENT{STRINGNAME//姓名INTAGE//年齡STRINGCLASSNO//班級STRINGHOBBY//愛好//輸出信息方法PUBLICVOIDSTUDY{SYSTEMOUTPRINTLNNAME“ISSTUDYING“}},,成員變量,,成員方法,定義類,定義對象STUDENTSNEWSTUDENT,11標識符與關鍵字12注釋,1、JAVA標識符、關鍵字、注釋,程序員對程序中的各個元素加以命名時使用的命名記號稱為標識符(IDENTIFIER)包括類名、變量名、常量名、方法名、組成規(guī)則字母AZ、AZ、中文、特殊符號、_和數(shù)字09第1個符號不能為數(shù)字不能為關鍵詞、TRUE、FALSE、NULL區(qū)分大小寫,11標識符與關鍵字,例POINT4、5W、A、THISPICTURE、CURRENTVALUE、OK、_23B、Y_123、#LENGTH、A+B、IF、變量3、TRUE、M1703錯誤5W、A、#LENGTH、A+B、IF、M1703,11標識符與關鍵字,11標識符與關鍵字,11標識符與關鍵字,在JAVA中,TRUE、FALSE和NULL都是小寫的。區(qū)別于C中大寫的TRUE、FALSE和NULL。所有的數(shù)據(jù)類型所占用的字節(jié)數(shù)都是固定的,并且和實現(xiàn)無關的,因此在JAVA中沒有SIZEOF操作符。不必死記這些關鍵詞,當理解每個關鍵詞的含義后,自然就記住了所有的關鍵詞。,11標識符與關鍵字,1下列標識符中,哪些是合法的變量名,哪些是不合法的變量名(1)CHAR(2)2ABC(3)_ISTRUE(4)IJ(5)_ISTRUE(6)變量6(7)STRING(8)3141592判斷下面的程序段是否正確,若有錯誤,錯在哪里,應該如何改正,并且測試改正后的輸出結(jié)果。PUBLICSTATICVOIDMAINSTRINGARGS{CH‘A’CHARCHSYSTEMOUTPRINTLN“CH”CH},練習,21JAVA基本數(shù)據(jù)類型(PRIMARYDATATYPES)22常量(CONSTANT)和變量(VARIABLE)常量(CONSTANT)變量(VARIABLE)23數(shù)據(jù)類型的轉(zhuǎn)換,2、JAVA的數(shù)據(jù)類型,21數(shù)據(jù)類型,程序數(shù)據(jù)結(jié)構(gòu)算法程序設計方法語言工具和環(huán)境。之所以有數(shù)據(jù)類型,就是因為計算機存儲不同數(shù)據(jù)類型的方式和空間不同。,21JAVA基本數(shù)據(jù)類型,所有基本類型所占的位數(shù)都是確定的,并不因操作系統(tǒng)的不同而不同。所有基本類型的關鍵詞都是小寫的。,21JAVA基本數(shù)據(jù)類型,字符型數(shù)據(jù)代表16位的UNICODE字符字符常量是用單引號括起來的一個字符‘A’‘B’‘\N’‘\U0030’字符型數(shù)據(jù)的取值范圍為065535或者說\U0000\UFFFF\U0000為缺省值示例CHARC1\\缺省值為0CHARC2‘0’\\賦初值為字符‘0’CHARC332\\用整數(shù)賦初值為空格,21字符類型CHAR,21UNICODE,WHATISUNICODEUNICODE???????INTHAI?????????????INPERSIAN什么是UNICODE統(tǒng)一碼什麼是UNICODE統(tǒng)一碼/標準萬國碼INARABIC?????????????????“???????“?WASISTUNICODEINGERMANЧТОТАКОЕUNICODEINRUSSIANユニコードとは何かINJAPANESE,18,21字符發(fā)展,ASCIILATIN1/ISO885910255GB2312/GBK,GBK兼容繁體字(GB23121981年實施,收錄6763個漢字,GBK收錄21886個字)BIG5,臺灣標準,收錄13461個字UNICODE,支持七千多個漢字UTF8,21為什么需要UNICODE,不同字符集編碼的內(nèi)碼定義不一樣漢字GBKBIG5一D2BBA440丁B6A1A442七C6DFA443,20,21UNICODE,JAVA中的字符、字符串、標識符變量名、方法名和類名稱CHARC‘\U5E74’//CHARC‘年’STRINGS1“JAVA\U8BED\U8A00”//STRINGS1“JAVA語言”STRINGS2“\U0030\U0031“//STRINGS2“01”SYSTEMOUTPRINTLNCSYSTEMOUTPRINTLNS1SYSTEMOUTPRINTLNS2,21,布爾型數(shù)據(jù)只有兩個值TRUE和FALSE,且它們不對應于任何整數(shù)值布爾型變量的定義如BOOLEANBTRUE布爾型數(shù)據(jù)只能參與邏輯關系運算BOOLEANB2TRUEBB2BOOLEANBB1,21布爾類型BOOLEAN,與C、C不同,JAVA中不能通過DEFINE命令把一個標識符定義為常量,而是用關鍵字FINAL來定義,定義常量的一般格式為FINAL類型常量標識符常數(shù)值;FINALINTMAX_NUM100FINALDOUBLEPI31415926,22常量和變量,程序中的基本存儲單元,其定義包括變量名、變量類型和作用域幾個部分,定義格式為類型變量名值INTN13,N24JAVA中變量的缺省初值都是確定的布爾變量的初值為FALSE整數(shù)變量的初值為0浮點數(shù)變量的初值為00引用(復合)變量的初值為NULL在方法實現(xiàn)中定義的變量必須顯式的初始化。變量的作用域指可訪問變量的一段代碼,在程序中不同的地方聲明的變量具有不同的作用域局部變量、類變量、方法參數(shù)、例外處理參數(shù)。在一定的作用域內(nèi),變量名必須唯一。,22常量和變量,自動類型轉(zhuǎn)換整型、實型、字符型數(shù)據(jù)可以混合運算。運算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型,然后進行運算,轉(zhuǎn)換從低級到高級低高BYTE,SHORT,CHARINTLONGFLOATDOUBLE,操作數(shù)1類型操作數(shù)2類型轉(zhuǎn)換后的類型BYTE、SHORT、CHARINTINTBYTE、SHORT、CHAR、INTLONGLONGBYTE、SHORT、CHAR、INT、LONGFLOATFLOATBYTE、SHORT、CHAR、INT、LONG、FLOATDOUBLEDOUBLE,23數(shù)據(jù)類型的轉(zhuǎn)換,SYSTEMOUTPRINTLN‘A’與SYSTEMOUTPRINTLN’A’1的區(qū)別。,,自動類型轉(zhuǎn)換(也叫隱式類型轉(zhuǎn)換)強制類型轉(zhuǎn)換(也叫顯式類型轉(zhuǎn)換)類型轉(zhuǎn)換的原理什么時候要用強制類型轉(zhuǎn)換表達式的數(shù)據(jù)類型自動提升所有的BYTE型、SHORT型和CHAR的值將被提升到INT型。如果一個操作數(shù)是LONG型,計算結(jié)果就是LONG型;如果一個操作數(shù)是FLOAT型,計算結(jié)果就是FLOAT型;如果一個操作數(shù)是DOUBLE型,計算結(jié)果就是DOUBLE型。分析,SYSTEMOUTPRINTLN‘A’與SYSTEMOUTPRINTLN’A’1的區(qū)別。,23常量與變量,???,自動類型提升BYTEB3INTX4XXB//B會自動提升為INT類型進行運算。強制類型轉(zhuǎn)換BYTEB3BB4//報錯BBYTEB4//強制類型轉(zhuǎn)換,強制將B4的結(jié)果轉(zhuǎn)換為BYTE類型,再賦值給B。思考BYTEB13,B24,BBB1B2B34哪句是編譯失敗的呢為什么呢,23數(shù)據(jù)類型的轉(zhuǎn)換,練習,寫出下面程序的運行結(jié)果。//EXAMPLEX2_3JAVAPUBLICCLASSEXAMPLE2_3{PUBLICSTATICVOIDMAINSTRINGARGS{INTX1,A0,B0SWITCHX{CASE0BCASE1ACASE2A,B}SYSTEMOUTPRINLN“A”ASYSTEMOUTPRINLN“B”B}},31優(yōu)先級、結(jié)合性以及單/雙目運算32JAVA運算符和表達式,3、JAVA運算符和表達式,優(yōu)先級、結(jié)合性以及單/雙目運算1),,9)(2)DAB/BCAC,練習,(2)表達式表達式是由操作數(shù)和運算符按一定的語法形式組成的符號序列。一個常量或一個變量名字是最簡單的表達式,其值即該常量或變量的值;表達式的值還可以用作其他運算的操作數(shù),形成更復雜的表達式。例XNUM1NUM2ABCD314XI2{SYSTEMOUTPRINTLN“THEBIGGERONEIS”I1}ELSE{SYSTEMOUTPRINTLN“THEBIGGERONEIS”I2},41選擇語句IFELSE,SWITCHEXPRESSION{CASEVALUE1{STATEMENTS1BREAK}CASEVALUEN{STATEMENTSNBREAK}DEFAULT{DEFAULTSTATEMENTS}},41選擇語句SWITCH,表達式EXPRESSION的返回值類型必須是這幾種類型之一INT、BYTE、CHAR、SHORTCHAR(STRING在JAVA7中被支持)。CASE子句中的值VALUEI必須是常量,而且所有CASE子句中的值應是不同的。DEFAULT子句是任選的。BREAK語句用來在執(zhí)行完一個CASE分支后,使程序跳出SWITCH語句,即終止SWITCH語句的執(zhí)行。(如果某個CASE分支后沒有BREAK語句,程序?qū)⒉辉僮霰容^而執(zhí)行下一個分支。)SWITCH語句的功能可以用IFELSE語句來實現(xiàn),但某些情況下,使用SWITCH語句更簡煉。,41選擇語句SWITCH,INTN1,SUM0WHILEN0,INTSUM0FORINTI1I10I{SUMI},WHILE循環(huán),DOWHILE循環(huán),FOR循環(huán),42循環(huán)語句,OUTERFORINTI0I10I//外層循環(huán){INNERFORINTJ0J10J//內(nèi)層循環(huán){IFIJ{CONTINUEOUTER}}//內(nèi)層循環(huán)結(jié)束}//外層循環(huán)結(jié)束,FORINTI0I10I{IFI5{CONTINUE}},43跳轉(zhuǎn)語句CONTINUE,A{//標記代碼塊AB{//標記代碼塊BC{//標記代碼塊CBREAKB//這段語句將不執(zhí)行}//代碼塊C結(jié)束//這段語句也不執(zhí)行}//代碼塊B結(jié)束//從這段語句開始執(zhí)行}//代碼塊A結(jié)束,,43跳轉(zhuǎn)語句BREAK,練習,編寫JAVA程序,輸出從公元1990年到2007年所有閏年的年號,每輸出兩個年號換一行。判斷年號是否為閏年的條件是(1)若年號能被4整除,而不能被100整除,則是閏年;(2)若年號能被400整除也是閏年。,謝謝,,
下載積分: 6 賞幣
上傳時間:2024-01-06
頁數(shù): 52
大?。?2.13(MB)
子文件數(shù):
-
簡介:C程序語言設計,C語言核心子集,一、面向?qū)ο蟮某绦蛟O計,對象構(gòu)成了程序?qū)ο蟊磉_真實生活中的某個概念每一個對象都有一套定義明確的能力關鍵特性抽象性(ABSTRACTION)封裝性(ENCAPSULATION)層次性(HIERARCHY)多態(tài)性(POLYMORPHISM),抽象性,為對象創(chuàng)建一個定義明確的接口將實現(xiàn)與接口分開一個優(yōu)點是對操作數(shù)據(jù)的代碼局部化,如果需要改變處理數(shù)據(jù)的方法,只需要在一個地方進行修改。,封裝性,保持抽象機制實現(xiàn)細節(jié)的專有性鼓勵且強迫隱藏實現(xiàn)細節(jié)使代碼更可靠,而且更容易維護,層次性,創(chuàng)建強大的抽象機制的層次一種層次化方法是組合,可以將較小的對象組合成較大的對象另一種層次化方法是繼承,不僅允許一個抽象重用已實現(xiàn)的代碼,還可以多次重用與另一個抽象的接口,多態(tài)性,如果代碼在被不同類型的實例使用時是透明的,那么就說它具有多態(tài)性,類,C在C中添加了類來支持面向?qū)ο蟪绦蛟O計方法類就像C的結(jié)構(gòu)體描述了對象的形式和行為稱類為用戶定義類型,二、不含類的C,新型的注釋“//”新的I/O庫“IOSTREAM”函數(shù)聲明說明函數(shù)接口而不是函數(shù)主體,在C中,一個函數(shù)被調(diào)用前一定要被聲明(或被真正定義)對空參數(shù)和沒有限制的參數(shù)聲明,二、不含類的C,C允許多個函數(shù)使用相同的名字,只要它們的特征不同即可,函數(shù)的特征是函數(shù)名加參數(shù)的數(shù)量和類型。(重載)VOID通用指針,C允許隱式的將一個指針轉(zhuǎn)換為VOID型指針,要求顯示的將VOID型指針轉(zhuǎn)換為其他類型的指針有關指針的上下文中出現(xiàn)的0代表空指針,三、成員函數(shù)產(chǎn)生的抽象性,抽象性指的是為對象創(chuàng)建定義明確的接口數(shù)據(jù)成員、成員函數(shù),統(tǒng)稱為類成員成員函數(shù)的聲明、定義和調(diào)用作用域運算符THIS指針指向調(diào)用成員函數(shù)的對象重載成員函數(shù),四、存取說明符產(chǎn)生的封裝性,確保實現(xiàn)細節(jié)的秘密性類通過存取控制被封裝起來存取說明符類成員可以具有任何存取級別存取說明符的順序和數(shù)量沒有限制私有并非意味著不可見友元函數(shù)與友元類友誼并不具有傳遞性,五、組合與繼承產(chǎn)生的層次性,將其他對象作為類成員來創(chuàng)建對象成為組合繼承不僅允許一個類使用另一個類的實現(xiàn),還可以共享那個類的接口一個類可以是任意多個類的基類派生類也可以作為再繼承的類的基類一個類可以具有多個基類派生類不能訪問基類的私有成員友元關系經(jīng)過派生之后就不存在了,五、組合與繼承產(chǎn)生的層次性,成員函數(shù)的重載成員函數(shù)的覆蓋,六、構(gòu)造函數(shù)和析構(gòu)函數(shù)產(chǎn)生的更好的抽象性,構(gòu)造函數(shù)析構(gòu)函數(shù)缺省的構(gòu)造函數(shù)和析構(gòu)函數(shù),六、構(gòu)造函數(shù)和析構(gòu)函數(shù)產(chǎn)生的更好的抽象性,一個對象的生存期分配內(nèi)存-調(diào)用類成員對象的構(gòu)造函數(shù)-執(zhí)行自身的構(gòu)造函數(shù),初始化內(nèi)建類型的實例成員-使用對象-執(zhí)行自身的析構(gòu)函數(shù),釋放指針成員所指向的內(nèi)存-調(diào)用類成員對象的析構(gòu)函數(shù)-釋放內(nèi)存,六、構(gòu)造函數(shù)和析構(gòu)函數(shù)產(chǎn)生的更好的抽象性,不同類型對象構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用時機自動局部型作用域內(nèi),進入構(gòu)造,退出析構(gòu)靜態(tài)局部型聲明處構(gòu)造一次,程序結(jié)束析構(gòu)全局型MAIN之前創(chuàng)建,程序結(jié)束析構(gòu),七、NEW和DELETE產(chǎn)生的更好的抽象性,NEW和DELETE創(chuàng)建和銷毀動態(tài)對象NEW和DELETE創(chuàng)建和銷毀動態(tài)對象數(shù)組內(nèi)存溢出時的處理異常,八、引用,形式參數(shù)與實際參數(shù)引用和指針特殊的指針聲明引用的和聲明指針的具有相同的語法和優(yōu)先級向上類型轉(zhuǎn)換在C中傳遞引用在C中返回引用,九、由其他函數(shù)產(chǎn)生的更好的抽象性,賦值運算符(運算符重載)缺省的賦值運算符重載拷貝構(gòu)造函數(shù)成員初始化列表缺省的拷貝構(gòu)造函數(shù)禁止賦值和拷貝構(gòu)造,十、模版產(chǎn)生更好的層次性,類模版是一個部分被限定了的類的定義使用模版來定義一個對象從另外一個角度來產(chǎn)生層次性算法的抽象VS數(shù)據(jù)的抽象,十一、虛函數(shù)參數(shù)的多態(tài)性,基于對象(抽象、封裝、層次)面向?qū)ο螅ǔ橄蟆⒎庋b、層次、多態(tài))多態(tài)性允許用相同的代碼來使用不同的對象虛函數(shù)使對象的行為基于它運行時刻的類型,也被稱為多態(tài)函數(shù)通過在成員函數(shù)名前加上VIRTUAL關鍵字來聲明虛函數(shù)使用基類的指針和引用來支持多態(tài)性,十一、虛函數(shù)參數(shù)的多態(tài)性,純虛函數(shù)抽象基類多態(tài)類需要虛的析構(gòu)函數(shù)純虛析構(gòu)函數(shù),后記,參考書目C語言核心O’REILLY中國電力出版社,GREGORYSATRIDOUGBROWN著,張銘澤譯,200101通過本次課程學習,如果能激發(fā)同學們的學習興趣,啟發(fā)同學們找到適合自己的學習方法,就算成功,感謝大家本學期的付出與支持,“路曼曼其修遠兮,吾將上下而求索;”屈原離騷,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 24
大小: 0.21(MB)
子文件數(shù):
-
簡介:運用課堂評價語言,調(diào)動數(shù)學課堂學生積極性的探究,羅湖區(qū)第二屆“智慧課堂”小課題結(jié)題報告,深圳市碧波小學,課題名稱運用課堂評價語言,調(diào)動數(shù)學課堂學生積極性的探究,承擔組別碧波小學數(shù)學科組,課題主持人林麗真,課題組成員,主要研究問題,在數(shù)學課堂上,教師往往在意學生回答的答案是否是自己期待的,卻忽略了學生的想法和感受,課堂教學更偏重于知識與技能、過程與方法這兩個目標維度。隨著課程改革的深入,教師課堂評價成為一項重要議題,希望能通過教師課堂評價,激發(fā)學生的學習積極性。我們在小學數(shù)學課堂的即時評價中,我們遇到這些問題評價缺乏、評價語言單調(diào)。比如總是機械重復“你真棒”、“真好”等。評價的形式單一。一般由老師評價,學生單調(diào)地給掌聲。對學生一味表揚,不能準確、及時地糾正學生的錯誤。良好的、恰當?shù)摹⒓钚缘目陬^評價、行為評價、獎勵評價等,都會對學生主體作用的發(fā)揮、學習積極性的調(diào)動有重要作用,從而達到調(diào)動學生學習積極性的效果。,預期目標,1總結(jié)評價語言的運用技巧,有準確、豐富、因人而異的效果。2調(diào)動學生的學習積極性,學生體驗學習數(shù)學的樂趣,提高課堂實效性。,研究過程,1查閱資料,收集課堂激勵性評價語言,制作數(shù)學課堂評價實用性語言分類和收集表格。2在科組內(nèi)開展課題研討,組織開展研討課觀課、評課。3課題組成員開展研討會。數(shù)學科組開會時候,加入小課題研討環(huán)節(jié)。5不斷總結(jié)經(jīng)驗,分析課堂評價語言的普遍問題,并討論課堂評價語言的建構(gòu)策略。6整理資料,寫總結(jié)報告。,分析結(jié)果,課堂評價語言在的普遍問題評價語言過于貧乏,評價形式單一課堂評價語言含糊,沒有針對性課堂評價語言沒有程度和輕重區(qū)別,有時夸大其詞,有時過于苛刻。,分析結(jié)果,評價語言建構(gòu)的策略因人而異建構(gòu)課堂評價語言重視教學預設,關注教學過程多元方式豐富課堂評價語言。,研究成果,小課題組通過課例多次試講進行對比,發(fā)現(xiàn)課堂評價語言能調(diào)動數(shù)學課堂學生的積極性。我們組員研究了五個課例,分別是二年級上冊第五單元數(shù)松果三年級下冊第二單元平移與旋轉(zhuǎn)五年級上冊第五單元分數(shù)的意義六年級上冊第四單元百分數(shù)的認識一年級下冊第五單元小兔請客我們把教學過程記錄下來,作為小課題結(jié)題資料。(見附錄)課題組成員總結(jié)了課堂評價語言的常見問題,研究了課堂評價語言的構(gòu)建方法和運用技巧,寫了這篇論文報告。(見小課題總結(jié)報告)課題組收集了豐富的,因人而異的可用課堂評價語言,方便我們組員的學習,也可以方便讀者選擇和積累。(見附錄),
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 9
大小: 0.59(MB)
子文件數(shù):
-
簡介:第七章高級匯編語言技術,子程序結(jié)構(gòu)有很多優(yōu)點提供模塊化程序設計的條件,便于程序調(diào)試及維護等。編程效率高,可以節(jié)省存儲空間及程序設計所花的時間。但使用子程序也有一些不足增加了一些額外開銷,包括轉(zhuǎn)子及返回、保存及恢復寄存器現(xiàn)場以及參數(shù)的傳送等。,§71宏匯編§72重復匯編§73條件匯編,宏(MACRO)是匯編語言的一個特點,它是與子程序類似又獨具特色的另一種簡化源程序的方法,統(tǒng)稱宏結(jié)構(gòu),,§71宏匯編,宏定義源程序中一段有獨立功能的程序代碼組成宏。它只需定義一次,就可以用一條宏指令多次調(diào)用它。宏定義用一組偽操作來實現(xiàn)。格式宏定義名MACRO啞元表宏定義體ENDM,§71宏匯編,例71用宏指令定義兩個字操作數(shù)相乘,得到一個16位的第三個操作數(shù)作為結(jié)果。宏定義MULTIPLYMACROOPR1,OPR2,RESULTPUSHDXPUSHAXMOVAX,OPR1IMULOPR2MOVRESULT,AXPOPAXPOPDXENDM,§71宏匯編,宏調(diào)用MULTIPLYCX,VAR,XYZBX;第一次宏調(diào)用MULTIPLY240,BX,SAVE;第二次宏調(diào)用,§71宏匯編,PUSHDX1PUSHAXMOVAX,CX;第一個操作數(shù)在CX中1IMULVAR;第二個操作數(shù)是變量VARMOVXYZBX,AX;結(jié)果存入實參XYZBX1POPAX1POPDX,2PUSHDXPUSHAX2MOVAX,240;第一個操作數(shù)是立即數(shù)240IMULBX;第二個操作數(shù)在BX中2MOVSAVE,AX;結(jié)果存入變量SAVE2POPAX2POPDX,§71宏匯編,一般說來,實元的個數(shù)和啞元的個數(shù)相等,但匯編程序并不要求它們必須相等。若實元個數(shù)大于啞元個數(shù),則多余的實元不予考慮;若實元個數(shù)小于啞元個數(shù),則多余的啞元作“空“處理。另外需要注意的是,宏展開后,即用實元取代啞元后,所得到的語句應該是有效的,即匯編語法應是正確的,否則匯編程序?qū)甘境鲥e。,§71宏匯編,TESTMACROVAR1,VAR2MOVAH,VAR1MOVBH,VAR2CMPAH,BHJNEEXITMOVAH,01HEXITMOVAH,02HENDM,§71宏匯編,,,,僅是源程序級的簡化宏調(diào)用在匯編時進行程序語句的展開,不需要返回;不減小目標程序,執(zhí)行速度沒有改變通過形參、實參結(jié)合實現(xiàn)參數(shù)傳遞,簡捷直觀、靈活多變,還是目標程序級的簡化子程序調(diào)用在執(zhí)行時由CALL指令轉(zhuǎn)向、RET指令返回;形成的目標代碼較短,執(zhí)行速度減慢需要利用寄存器、存儲單元或堆棧等傳遞參數(shù),,,宏與子程序具有各自的特點,程序員應該根據(jù)具體問題選擇使用那種方法通常,當程序段較短或要求較快執(zhí)行時,應選用宏;當程序段較長或為減小目標代碼時,要選用子程序,§71宏匯編,宏定義中的參數(shù)宏定義可以無變元SAVEREGMACRO;啞元表為空PUSHAXPUSHBXPUSHCXPUSHDXPUSHSIPUSHDIENDM宏調(diào)用SAVEREG,§71宏匯編,宏定義中的參數(shù)變元可以是操作碼TESTMACROP1,P2,P3MOVAX,P1P2P3;變元P2為操作碼ENDM宏調(diào)用TESTWORD_VAR,INC,AX宏展開1MOVAX,WORD_VAR1INCAX;用實元INC取代啞元P2,形成INC指令,§71宏匯編,宏定義中的參數(shù)LPMACROCOND,LABJCONDLAB;J與啞元COND由相連,形成該指令操作碼ENDM宏調(diào)用LPZ,THERELPNZ,HERE宏展開1JZTHERE;J與實元Z形成JZ條件指令1JNZHERE;J與實元NZ形成JNZ條件指令,§71宏匯編,例75宏定義FOMACROP1JMPTAP1;TA與啞元P1形成無條件跳轉(zhuǎn)指令中的標號ENDM宏調(diào)用FOWORD_VAR宏展開1JMPTAWORD_VAR;TA與實元WORD_VAR形成標號TAWORD_VAR在這里,如果宏定義寫為FOMACROP1JMPTAP1ENDM則在展開時,匯編程序把TAP1看作是一個獨立的標號,并不把TAP1中的P1作為啞元看待,這樣就不能得到預期的結(jié)果。,§71宏匯編,ABSOLMACROOPERCMPOPER,0JGENEXTNEGOPERNEXTADDAX,OPERENDMABSOLBXABSOLCX,§71宏匯編,LOCAL偽操作ABSOLMACROOPER;求某操作數(shù)的絕對值LOCALNEXTCMPOPER,0JGENEXTNEGOPER;如果是負數(shù),則求補NEXTADDAX,OPERENDMABSOLBXABSOLCX,§71宏匯編,在宏定義內(nèi)使用宏DIFMACROX,Y;求二數(shù)之差MOVAX,XSUBAX,YENDMDIFSQRMACROOPR1,OPR2,RESULT;求二數(shù)之差的平方PUSHDXPUSHAXDIFOPR1,OPR2IMULAXMOVRESULT,AXPOPAXPOPDXENDM宏調(diào)用DIFSQRVAR1,VAR2,VAR3,宏展開1PUSHDX1PUSHAX2MOVAX,VAR12SUBAX,VAR21IMULAX1MOVVAR3,AX1POPAX1POPDX,§71宏匯編,宏庫的建立與調(diào)用有時,程序里定義了較多宏,或者可以把自己編程中常用的宏定義建立成一個獨立的文件,這個只包含若干宏定義的文件稱為宏庫,通常用擴展名MAC或INC來表示。當應用程序中需要用到宏庫中的某些宏定義時,只需要在該程序的開始用INCLUDE語句說明如下INCLUDEC\MACROMAC,§71宏匯編,PURGE偽操作PURGE偽操作用來刪除不用的宏定義。例如,用INCLUDE語句調(diào)用宏庫時可以用PURGE偽操作刪除在調(diào)用程序中不用的宏定義。當然它只在調(diào)用程序中起作用而不會影響宏庫的內(nèi)容。它的格式是PURGE宏定義名,宏定義名,,§72重復匯編,有時匯編語言程序需要連續(xù)地重復完成相同的或者幾乎完全相同的一組代碼,這時可使用重復匯編。REPT表達式重復塊ENDM其中表達式的值用來確定重復塊的重復次數(shù),表達式中如包含外部或未定義的項則匯編指示出錯。,§72重復匯編,例715X0REPT10XX1DBXENDM則匯編后產(chǎn)生1DB11DB21DB31DB10,§72重復匯編,例716把字符A到Z的ASCII碼填入數(shù)組TABLE。CHAR‘A’TABLELABLEBYTEREPT26DBCHARCHARCHAR1ENDM經(jīng)匯編產(chǎn)生1DB41H1DB42H1DB5AH,§72重復匯編,例718要求建立一個100字的數(shù)組,其中每個字的內(nèi)容是下一個字的地址,而最后一個字的內(nèi)容是第一個字的地址。ARRAYLABLEWORDREPT99DW2ENDMDWARRAY經(jīng)匯編后得1DW21DW21DW2DWARRAY,§72重復匯編,不定重復偽操作IRP偽操作不定重復是指匯編程序把重復塊的代碼重復幾次,每次重復把重復塊中的啞元用自變量表中的一項來取代,下一次取代下一項,重復次數(shù)由自變量表中的自變量個數(shù)來確定。自變量表必須用尖括號括起來,它可以是常數(shù)、符號和字符串等。,§72重復匯編,IRPPARAMETER,(重復塊)ENDM例719IRPX,DBXENDM匯編后得1DB01DB11DB9,§72重復匯編,不定重復偽操作IRPC偽操作IRPC和IRP類似,但自變量表必須是字符串。重復次數(shù)由字符串中的字符個數(shù)確定,每次重復用字符串中的下一個字符取代重復塊中的啞元。,§72重復匯編,例722IRPCK,ABCDPUSHKXENDM匯編后展開成1PUSHAX1PUSHBX1PUSHCX1PUSHDX,§72重復匯編,例723宏定義XSUBMACROVAR1REQ,VARSVARARGSUBAX,VAR1IRPSUBS,SUBAX,SUBSENDMENDM其中VAR1加上REQ后表示在調(diào)用時必須指定實元,VARS在加上VARARG后表示該啞元在調(diào)用時可以使用不同數(shù)目的實元。IRP與頭一個ENDM組成循環(huán),SUBS不斷地用VARS中的一項替代。,§72重復匯編,宏調(diào)用XSUB5,10,15XSUBAX,BX,CX,DX,ELEMENT宏展開1SUBAX,52SUBAX,102SUBAX,151SUBAX,AX2SUBAX,BX2SUBAX,CX2SUBAX,DX2SUBAX,ELEMENT,§73條件匯編,匯編程序能根據(jù)條件把一段源程序包括在匯編語言程序內(nèi)或者把它排除在外,這里就用到條件偽操作。,§73條件匯編,IF自變量}自變量滿足給定條件匯編此塊ELSE}自變量不滿足給定條件匯編此塊ENDIF,§73條件匯編,條件偽操作中的表示條件如下IF表達式匯編程序求出表達式的值,如此值不為0則滿足條件。IFE表達式如求出表達式的值為0則滿足條件。IFDEF符號如符號已在程序中定義,或者已用EXTRN偽操作說明該符號是在外部定義的,則滿足條件。IFNDEF符號如符號未定義或未通過EXTRN說明為外部符號則滿足條件。IFB如自變量為空則滿足條件。IFNB如自變量不為空則滿足條件。IFIDN,如果字符串和字符串相同,則滿足條件。IFDIF,如果字符串和字符串不相同,則滿足條件。,§73條件匯編,條件偽操作IF的使用舉例例724宏指令MAX把三個變元中的最大值放在AX中,而且使變元數(shù)不同時產(chǎn)生不同的程序段。宏定義MAXMACRON,A,B,CLOCALNEXT,OUTMOVAX,AIFN1IFN2CMPC,AXJLENEXTMOVAX,CENDIFNEXTCMPB,AXJLEOUTMOVAX,BENDIFOUTENDM,宏調(diào)用MAX1,PMAX2,P,QMAX3,P,Q,R,§73條件匯編,宏展開MAX1,P;N10,第一層IF不滿足條件1MOVAX,P1OUTMAX2,P,Q;N20,第二層IF不滿足條件1MOVAX,P1NEXT1CMPQ,AX1JLEOUT1MOVAX,Q1OUT,§73條件匯編,MAX3,P,Q,R;第一、第二層均滿足條件1MOVAX,P1CMPR,AX1JLENEXT1MOVAX,R1NEXT1CMPQ,AX1JLEOUT1MOVAX,Q1OUT,§73條件匯編,例725宏指令BRANCH產(chǎn)生一條轉(zhuǎn)向X的轉(zhuǎn)移指令。當它相對于X的距離小于128字節(jié)時產(chǎn)生JMPSHORTX;否則產(chǎn)生JMPNEARPTRX。宏定義BRANCHMACROXIFXLT128JMPSHORTXELSEJMPNEARPTRXENDIFENDM宏調(diào)用BRANCHAA宏展開1JMPSHORTAA否則產(chǎn)生1JMPNEARPTRAA,§73條件匯編,例726宏指令POWER可以用來實現(xiàn)X和2N相乘。這只需對X左移N次即可實現(xiàn),可以設COUNT為遞歸次數(shù)的計數(shù)值,當該數(shù)與N相乘時就可結(jié)束遞歸調(diào)用。宏定義POWERMACROX,NSALX,1COUNTCOUNT1IFCOUNTNPOWERX,NENDIFENDM宏調(diào)用COUNT0POWERAX,3宏展開1SALAX,12SALAX,13SALAX,1,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 38
大?。?0.22(MB)
子文件數(shù):
-
簡介:,,讓你的語言散發(fā)古典之美,例文2004高考四川滿分作文話題“遭遇挫折與放大痛苦”遭遇挫折,笑對痛苦人之一世,殊為不易。在看似平坦的人生旅途中充滿了種種荊棘,往往使人痛不欲生。痛苦之于人,猶狂風之于陋屋,巨浪之于孤舟,水舌之于心臟。百世滄桑,不知有多少心胸狹隘之人因受挫折放大痛苦而一蹶不振;人世千年,更不知有多少意志薄弱之人因受挫放大痛苦而志氣消沉;萬古曠世,,又不知有多少內(nèi)心懦弱的人因受挫放大痛苦而葬身于萬劫不復的深淵面對挫折,我們不應放大痛苦,而應直面人生,縮小痛苦,直至成功的一天。“老當益壯,寧移白首之心窮且益堅,不墜青云之志?!背跆扑慕苤坏耐醪芍^“時運不濟,命途多舛,”然而直面挫折,他卻能達人知命,笑看人生。試想,如果沒有王勃開朗闊達的胸襟,哪能有他吟放出“海內(nèi)存知己,天涯若比鄰”的千古絕唱,“安能摧眉折腰事權(quán)貴,使我不得開心顏”的浪漫詩仙李白,在遭遇仕途不順的挫折后,他沉寂了嗎消沉了嗎沒有。“長安市上酒家眠”,笑對痛苦,面對挫折他拂袖而去,遍訪名山,終于成就了他千古飄逸的浪漫情懷由此看來,面對挫折,我們不應過分地沉迷于痛苦失意的陰影中不能自拔;面對挫折,我們不應整日浸泡在悲傷痛苦的淤泥中越陷越深;面對挫折,我們不應長期頹廢不振而迷失眼前的方向。遭遇挫折,縮小痛苦,才是明智的選擇。相反,若一味沉迷于挫折的痛苦中,后果將不堪設想。,劉備面對失去二弟的挫折,因兄弟之情無法釋懷,放大痛苦,結(jié)果在痛苦中做出錯誤決定,貿(mào)然出兵伐吳,落得“白帝托孤”的千古悲劇??杀杀?前事不忘,后事之師。古人已經(jīng)為我們做出了太多的榜樣,也留下了太多的遺恨。在現(xiàn)在競爭日益加劇的社會里,挫折無處不在。若因一時受挫而放大痛苦,將會終身遺憾。遭遇挫折,就當它是一陣清風,讓它從你耳邊輕輕吹過;遭遇挫折,就當它為一陣微不足道的小浪,不要讓它在你心中擊起驚濤駭浪;遭遇挫折,就當痛苦是你眼中的一顆塵粒,眨一眨眼,流一滴淚,就足以將它淹沒。,,遭遇挫折,不應放大痛苦。擦一擦額上的汗,拭一拭眼中欲滴的淚,繼續(xù)前進吧相信總有一天你會看見藍藍的天,白白的云,青青的草,還有你嘴角邊的甜甜的笑,談意氣,意氣,是李白“仰天長嘯出門去,我輩豈是蓬蒿人”的高歌;意氣,是杜甫“致君堯舜上,當使民風淳”的肺腑之言;意氣,是毛澤東“數(shù)風流人物,還看今朝”的壯懷。人要有意氣,有自己的意志和氣概,要意氣風發(fā)。人不能沒有意氣,就像傲視蒼穹的紅杉不能沒有堅固的根基,芳香四溢的鮮花不能沒有給予它自信的陽光。,例文賞析,,人有意氣,才能有豁達的胸襟?!拔┙现屣L,與山間之明月,耳得之而為聲,目遇之而成色”,蘇子有意氣,雖遭官場與文場一齊潑來的污水,但他仍意氣風發(fā),“侶魚蝦而友麋鹿”,心胸豁達可見一斑?!鞍材艽菝颊垩聶?quán)貴,使我不得開心顏”,遭人誹謗的李白,被玄宗賜金放還,雖有昭昭若明星之德,日月齊輝之才,終化為泡影,但他仍意氣風發(fā),“舉杯邀明月,對影成三人”,酒入愁腸三分釀成月亮,七分化為劍氣,秀口一吐便是半個盛唐。若無意氣,他怎會有如此豁達的胸襟,,人有意氣,才能有千古留名,流芳百世,才能在國家危難之時挺身而出。幾百年的風風雨雨,早已滌蕩了風波亭的點點殘血;幾百年的潮起潮落,早已淹沒了零丁洋里的聲聲嘆息;幾百年的獵獵西風,早已拂走了牧羊的老者;幾百年的漫漫黃沙,早已淹沒了西域路上的聲聲駝鈴然而,岳武穆的滿腔熱血,文天祥的一顆丹心,蘇武的一根竹杖,張騫的十幾年牢獄之苦,早已映入史冊,成為民族的精神瑰寶。若無意氣,他們怎會有如此壯行,,人有意氣,才能摧不垮,壓不倒,追求不泯,意志不衰。還記得舞臺上那尊慈祥博愛的千手觀音嗎邰麗華,雖是聾啞人,但她有意氣,手臂練得青腫了,腳底磨出血泡了,她始終堅持練習。最終,她用手指勾勒了人性的美好,用舞姿詮釋內(nèi)心的感覺,感動中國,感動你我。若無意氣,她怎會從不幸的底谷達到藝術的巔峰意氣,是成就人生所必需的。然而,現(xiàn)實生活中缺乏意氣之人委實不少,他們在溫柔富貴鄉(xiāng)中疲軟筋骨麻木神經(jīng),在歌舞升平中平息了壯志,在燈紅酒綠中喪失人性凡此種種,我們要堅決反對,打擊,為構(gòu)建社會主義和諧社會掃清道路。人,要有意氣,要意氣風發(fā)。,,,讓你的語言散發(fā)古典之美,借得佳句成華章引用句,燦若星漢的古詩詞,是我們傳統(tǒng)文化中的瑰寶。我們在課內(nèi)外積累了許多古詩詞(或名句),考試作文中我們應該大力弘揚,善于引用或化用古代詩詞,讓詩詞之花在作文中大放異彩,一直接引用,“等閑識得東風面,萬紫千紅總是春”,走進春天,你會發(fā)現(xiàn)春天的色彩,瑰麗、燦爛;“千里鶯啼綠映紅,水村山郭酒旗風”,走進春天,你會發(fā)現(xiàn)春天的形象,清新、明麗;“滿園春色關不住,一枝紅杏出墻來”。走進春天,你會發(fā)現(xiàn)春天還是自由、靈動的。春天喲,春天,紫燕翻飛,柳絲吐芽的春天;萬物興盛,如花美眷的春天。走進春天,融進春天,你就會成為春天的一朵芽苞,一泓碧潭,一枝花葉,一個翩然歡翔的飛燕走進春天,,你說“力拔山兮氣蓋世,時不利兮騅不逝。”是的,你是個勇士,你可以扛鼎,你可以拔山,可以在巨鹿之戰(zhàn)將三千敵軍一口吞下,連李清照都贊揚你“生當做人杰,死亦為鬼雄?!笨墒牵銢]有成為君主,時代對你不利嗎不,新豐鴻門的四十萬大軍足以平治天下。你敗了,只因為你沽名釣譽,不懂民心難抗。燒殺搶掠帶來的是什么民怨沸騰知道秦朝“仁義不施而攻守之勢異也”的下場么你知道“得民心者得天下”的真理么“力拔山兮”就可以統(tǒng)一天下么面對你,太多的無可奈何。我無語。我無語,歌,亦無聲面對項羽,二間接引用,詩是色彩斑斕的夢。這夢里有楊柳岸邊的曉風殘月,有鯤鵬水擊三千里的羽翼,有小軒窗里默默的相對,有大漠長河的遙遙思念詩,是一支神來之筆,勾勒鸚鵡洲上的芳草,點化二十四橋的明月,渲染香爐峰的紫煙,十年生死兩茫茫,不思量,自難忘,千里孤墳,無處話凄涼。縱使相逢應不識,塵滿面,鬢如霜。昨夜幽夢忽還鄉(xiāng),小軒窗,正梳妝,相顧無言,惟有淚千行。料得年年斷腸處,明月夜,短松崗。,二十四橋明月夜,玉人何處教吹簫,,在那個崇尚享樂的年代,人們對你的期望本是吟花弄月,賣弄詩文罷了,而你偏要獨上高樓,“把吳鉤看了,欄桿拍遍”。一邊是“斜陽正在,煙雨斷腸處”,另一邊卻是“寶馬雕車香滿路”,而你執(zhí)意要做燈火闌珊處的伊人。你痛斥,“君莫舞,君不見,玉環(huán)飛燕皆黃土”;你彷徨,“倩何人換取,紅巾翠袖,揾英雄淚”;你期待,“醉里挑燈看劍,夢回吹角連營”。,樂觀就是那直上青天的一行白鷺,樂觀就是那沉舟側(cè)畔的萬點白帆,樂觀就是那鸚鵡洲頭隨風拂動的萋萋芳草,樂觀就是化作春泥更護花的點點落紅。,這里分別化用了古人詩詞,恰到好處,增強了句子的意蘊。,仿句,月亮缺了,還有再圓的時候,不要發(fā)出李煜“無言獨上西樓,月如鉤”的惆悵;大雁去了,還有再來的時候,不要流露易安“雁過也,正傷心”的無奈;朋友散了,還有再聚的時候,不要顯出王維“西出陽關無故人”的失落;,請以“生命”或“親情”為話題引用古詩,寫一組句子,生命就是龔自珍“落紅不是無情物,化作春泥更護花”的獻身精神,生命就是文天祥“人生自古誰無死,留取丹心照汗青”的浩然正氣,生命就是蘇東坡“誰道人生無再少,門前流水尚能西”的超脫與豁達,生命就是杜甫“感時花濺淚,恨別鳥驚心”的無奈與感傷。,示例,生命有時是“驛外斷橋邊,寂寞開無主”的無奈,但更是“路漫漫其修遠兮,吾將上下而求索”的執(zhí)著;生命有時是“欲渡黃河冰塞川,將登太行雪滿山”的困窘,但更是“長風破浪會有時,直掛云帆濟滄?!钡暮肋~與樂觀,,示例親情是朱自清文中父親的背影,親情是孟郊慈母手中的針線,親情是王維“獨在異鄉(xiāng)為異客,每逢佳節(jié)倍思親”的感嘆,親情是蘇軾“但愿人長久,千里共嬋娟”的祝愿。,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 23
大小: 0.43(MB)
子文件數(shù):
-
簡介:,,,洋縣中學黃金瑞,美麗而神奇的語言,認識漢語,請將右圖拆成一首絕句,賞花歸去馬如飛去馬如飛酒力微酒力微醒時已暮醒時已暮賞花歸,美麗而奇妙的語言,認識漢語,,,,,課堂活動,(一)漢語的美麗和奇妙首先讓我們一起來領略漢語的美麗和奇妙,1、請看屏幕,這是寫在茶杯上的五個字,請問,它可以組成幾句話以可清也心,可以清心也;以清心也可;清心也可以;心也可以清;也可以清心,2、“這個人好說話”有幾種理解3、“縣里的通知說,讓趙鄉(xiāng)長本月15日前去匯報”有幾種理解,關注文本閱讀文章,思考一下問題,說說比爾為什么會鬧笑話,你能再舉幾個例子嗎,什么是現(xiàn)代漢語,“杯子”“被子”,“男狗”“女狗”,“我給了他一刀”,說明漢語有區(qū)別意義的聲調(diào),說明漢語詞語的搭配特點,說明漢語中量詞的用法動量詞一般出現(xiàn)在動詞后,表動詞的量名量詞表示名物的量,合作探究,,讀一讀你能否概括出漢語的哪個特點,【舉例施氏食獅史】石室詩士施氏,嗜獅,誓食十獅。氏時時適市視獅。十時,適十獅適市。是時,適施氏適市。氏視是十獅,恃矢勢,使是十獅逝世。氏拾是十獅尸,適石室。石室濕,氏使侍拭石室。石室拭,氏始試食是十獅尸。食時,始識是十獅尸,實十石獅尸。試釋是事。,譯文住在石頭做的屋子里的姓施的詩人,喜歡獅子,發(fā)誓要吃十頭獅子。姓施的常常到市集里看獅子。十點鐘,剛好十頭獅子來到市集。這時,剛好姓施的(也)來到市集。姓(施)的看這十頭獅子,仗著箭的力量,使這十頭獅子死了。姓(施)的收拾這十頭獅子,到石頭做的屋子。石頭做的屋子潮濕,姓(施)的命令侍者擦拭石頭做的屋子。石頭做的屋子擦(好了),姓(施)的開始嘗試吃這十頭獅子。吃的時候,才知道這十頭獅子,實際上是十座石頭做的獅子的尸體。試解釋這件事。,規(guī)律小結(jié)1、每個音節(jié)都有聲調(diào),聲調(diào)不同,意義不同。聲調(diào)陽平、陰平、上聲、去聲、輕聲。2、音節(jié)構(gòu)造簡單而有規(guī)律。每個音節(jié)都由聲母、韻母和聲調(diào)構(gòu)成。,(一)現(xiàn)代漢語語音特點,(二)現(xiàn)代漢語詞匯的特點A、雙音節(jié)詞的數(shù)量占優(yōu)勢B、詞的構(gòu)造形式多種多樣C、有獨特的量詞和語氣詞,(三)現(xiàn)代漢語語法的特點A、詞沒有形態(tài)變化B、虛詞重要而豐富C、語序的作用重要,,,鞏固練習,1.判斷下列虛詞使用的正誤,總結(jié)使用規(guī)律(1)來中國以前我不學過漢語。(2)我眼睛近視,所以昨天不看見你。(3)我一直對戰(zhàn)爭沒感興趣。(4)她的男朋友以前沒抽煙、沒喝酒,①②兩句表示已發(fā)生的情況,應該用“沒”,③④兩句表示經(jīng)常性的情況,應該用“不”,鞏固練習,,2.有人想在祈禱時抽煙,他問牧師“祈禱的時候可以抽煙嗎”“不可以?!蹦翈?。于是這個人換了一種方式(只是變換一下語序)。又問“”。結(jié)果牧師高興地說“可以?!边@個人達到了自己的目的。你知道他是怎么問的嗎答“”,那么,抽煙的時候可以祈禱嗎,3.閱讀下面文字,完成后面的問題?!氨氨墒潜氨烧叩耐ㄐ凶C/高尚是高尚者的墓志銘”這是北島的詩歌回答中的詩句,揭示了一種不合理的社會邏輯。調(diào)整該詩句的語序,使之分別符合下列要求(不得增刪或改換詞語)(1)反映一種更不合理的社會邏輯“”(2)表現(xiàn)一種比較公正的社會邏輯“”,鞏固練習,,高尚是高尚者的通行證/卑鄙是卑鄙者的墓志銘,高尚是卑鄙者的通行證/卑鄙是高尚者的墓志銘,4、(09年寧夏海南卷)下面一則文稿在表達上有四處不妥當,請指出并改正。(5分)通告為提高電話網(wǎng)的通訊能力,我公司將對轄區(qū)電話局的交換機進行升級改造,現(xiàn)依據(jù)中華人民共和國電信條例,將有關事項通告如下敝工程將與2009年6月10日20時至11日8時施工,在此期間會影響青山區(qū)電話用戶的正常通話。交換機升級后,用戶原有的一些業(yè)務功能(如鬧鐘、呼叫轉(zhuǎn)移等)需要重新設置;熱線和呼出限制的設置方法也有變化。如有疑問,歡迎提出。本公司客服電話87654321。對工程施工給貴用戶造成的不便,我們深表不安。請予理解和支持。天網(wǎng)通信有限公司青山分公司2009年6月7日,鞏固練習,本,垂詢,您,歉意,,,,,愛祖國愛漢語,再見,“君恩深似海,臣忠重如山”,這是洪承疇的自擬聯(lián),后來他降了大清。一天夜里,有人悄悄在上下聯(lián)中各加一個語氣詞,使得意思完全相反,變成了絕妙的諷刺。,君恩深似海,臣忠重如山,矣,乎,,,某公司年終總結(jié)報告,存在問題尋找原因改正措施,酒好喝,好喝酒,喝好酒,,,舍棄母語就等于亡國。,亡了國,當了奴隸的人們只要牢牢記住他們的語言,就好象拿著一把打開監(jiān)獄大門的鑰匙。法都德最后一課英語充其量只是我們了解世界的工具,漢語才是我們真正的根。余光中,我們的母語漢語,廣義不同地區(qū)的漢族人所使用的語言。,狹義普通話以北京語音為標準音,以北方話為基礎方言,以典型的現(xiàn)代白話文著作為語法規(guī)范的現(xiàn)代漢民族語言。,,,,,現(xiàn)代漢語語音的特點1、每個音節(jié)都有聲調(diào)2、音節(jié)構(gòu)造簡單而有規(guī)律,現(xiàn)代漢語的特點,,,,,現(xiàn)代漢語詞匯的特點1、雙音節(jié)詞的數(shù)量占優(yōu)勢2、詞的構(gòu)造形式多種多樣3、有獨特的量詞和語氣詞,現(xiàn)代漢語的特點,相對于單純詞來說,合成詞就是由幾個語素構(gòu)成的詞。,并列式勞動、學習、研究、思考偏正式足球、雪白、大路、動賓式打牌、做飯、吹牛、啟程主謂式日蝕、臉紅、心跳、補充式縮小、打翻、附加式小說、老師、老板、老爺名量式花朵、書本、車輛重疊式娃娃,,,,,現(xiàn)代漢語語法的特點1、詞沒有形態(tài)變化2、虛詞重要而豐富3、語序的作用重要,現(xiàn)代漢語的特點,練習1、判斷下列虛詞使用的正誤,總結(jié)使用規(guī)律(1)來中國以前我不學過漢語。(2)我眼睛近視,所以昨天不看見你。(3)我一直對戰(zhàn)爭沒感興趣。(4)她的男朋友以前沒抽煙、沒喝酒。,表示已發(fā)生的的情況用“沒”,表示經(jīng)常性的情況用“不”。,漢語缺少詞的形態(tài)變化。即動作的時態(tài)不是由動詞本身來表示,而是通過時間名詞、時間副詞、時態(tài)助詞或上下文特定的詞語來表示。,表示已發(fā)生的的情況用“又”,表示未發(fā)生的情況用“再”。,練習1、判斷下列虛詞使用的正誤,總結(jié)使用規(guī)律(5)他才丟了錢,昨天再丟了書。(6)今天我再發(fā)燒了,還不能去上課。(7)我沒聽清楚,請又說一遍吧。(8)別著急,又等一會它就回來了。,練習1、判斷下列虛詞使用的正誤,總結(jié)使用規(guī)律(9)你用漢語還是用英語講都可以。(10)他每天晚上十一點鐘還是一點才睡覺。(11)你喝點什么啤酒或者可樂(12)你們是明天回國或者后天回國呢一般陳述句中應該用“或者”,疑問句中要用“還是”,漢語有一部分虛詞的用法要受到句子類型的限制,比如“或者、還是”就是這樣。外國人在使用這些虛詞時,常常忽略句式的區(qū)別。,謝謝光臨懇請賜教,
下載積分: 6 賞幣
上傳時間:2024-01-07
頁數(shù): 28
大?。?0.73(MB)
子文件數(shù):
-
簡介:,C程序設計基礎,C程序設計基礎(第2版)電子工業(yè)出版社周靄如林偉健編著,預備知識,華南理工大學計算機學院周靄如,第1章基本數(shù)據(jù)與表達式,第2章程序控制結(jié)構(gòu),第3章函數(shù),第4章數(shù)組,第5章類與對象,第6章運算符重載,第7章繼承,第8章虛函數(shù)與多態(tài)性,第9章模板,第10章輸入/輸出流,C程序設計基礎,結(jié)束語,預備知識,第一臺電子計算機(ENIAC,ELECTRONICNUMERICALINTEGRATORANDCALCULATOR),5000次加法/秒重量28噸占地170M218800只電子管1500個繼電器功率150KW,第一代(19461956)電子管5千4萬(次/秒),第二代(19571964)晶體管幾十萬百萬(次/秒),第三代(19651970)集成電路百萬幾百萬(次/秒),第四代(197190年代)集成電路幾百萬幾億(次/秒),計算機發(fā)展的幾個階段,新一代的計算機把信息采集、存儲處理、通信和人工智能結(jié)合在一起的計算機系統(tǒng)。,計算機硬件基本組成,微機硬件的基本配置,主機箱,顯示器,軟盤驅(qū)動器,光盤驅(qū)動器,鍵盤,鼠標,打印機,計算機硬件基本組成,計算機硬件基本組成,計算機系統(tǒng)的組成,計算機硬件基本組成,十進制R10,數(shù)字集0,1,2,3,4,5,6,7,8,9二進制R2,數(shù)字集0,1八進制R8,數(shù)字集0,1,2,3,4,5,6,7十六進制R16,數(shù)字集0,,9,A,B,C,D,E,F,逢R進一,借一當R,進制的概念,二進制概念,信息復制的精確性運算規(guī)則簡單電子線路制造計算機成為可能,程序和指令,指令是對計算機進行程序控制的最小單位。所有的指令的集合稱為計算機的指令系統(tǒng)。,程序是為完成一項特定任務而用某種語言編寫的一組指令序列。,機器執(zhí)行什么操作,執(zhí)行對象(具體數(shù)、存放位置),信息的存儲單位,字節(jié)(BYTE)最常用的基本單位,K字節(jié)1K1024BYTEM(兆)字節(jié)1M1024KG(吉)字節(jié)1G1024MT(太)字節(jié)1T1024G,B7B6B5B4B3B2B1B0,10010101,27242220,149,計算機語言介紹,自然語言人與人之間用來表達意思,交流思想的工具。是由語音、詞匯和語法構(gòu)成的一定系統(tǒng)。,程序設計語言人指揮計算機工作的工具。是由字、詞和語法規(guī)則構(gòu)成的指令系統(tǒng)。,程序設計語言分類,機器語言面向機器的指令系統(tǒng)匯編語言以類英語縮寫來編程序高級語言不面向機器,用接近人類語言的描述方式構(gòu)成的指令系統(tǒng)翻譯程序匯編程序把匯編源程序轉(zhuǎn)換為機器語言的程序編譯器把高級語言程序轉(zhuǎn)換為機器語言或匯編語言的翻譯程序,計算機可以看作一個語言系統(tǒng),,人可以使用不同層次的語言與計算機交互,程序設計語言分類,,計算機可以看作一個語言系統(tǒng),人可以使用不同層次的語言與計算機交互,程序設計語言分類,,計算機可以看作一個語言系統(tǒng),人可以使用不同層次的語言與計算機交互,程序設計語言分類,,計算機可以看作一個語言系統(tǒng),人可以使用不同層次的語言與計算機交互,程序設計語言分類,指令比較,匯編語言描述MOVEAX,DWORDPTRA_EBPLEAEAX,DWORDPTRA_EAXEAX2MOVECX,DWORDPTRB_EBPADDECX,ECXSUBEAX,ECXINCEAXMOVDWORDPTRA_EBP,EAX,,以下指令實現(xiàn)把表達式3A2B1的計算結(jié)果放到變量A中,C描述A3A2B1,機器語言描述8B45FC8D04408D4DF803C92BC1408945FC,C++程序的開發(fā)過程,編寫程序的要求,正確性可讀性高效率,用簡潔明了的方式編寫程序計算機和編譯器是很好的教員閱讀所用的語言版本手冊用標準類庫,本課程根據(jù)高級語言程序設計的基本體系,學習結(jié)構(gòu)化程序設計和面向?qū)ο蟪绦蛟O計的基本概念和方法,內(nèi)容包括C語言的基本語法;程序流程控制;數(shù)據(jù)的表示和應用;兩種程序模塊函數(shù)和類;C面向?qū)ο蟮闹匾卣?,包括類、繼承、多態(tài)和虛函數(shù)等。,課程內(nèi)容提要,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 22
大?。?1.43(MB)
子文件數(shù):
-
簡介:基于SSH的WEB開發(fā)AND企業(yè)級WEB應用開發(fā)新技術,導師王千祥姓名吳凌郵箱WULING07SEIPKUEDUCN,OUTLINE,SSH整體結(jié)構(gòu)STRUTSSERVLETVSSTRUTS實例MVCSTRUTS的MVC實現(xiàn)STRUTS的核心技術顯示層WEB框架選型HIBERNATE非HIBERNATEVSHIBERNATE實例對比HIBERNATE概念及其優(yōu)勢HIBERNATE核心知識HIBERNATE注意事項SPRING不用SPRING和實用SPRING實例對比SPRINGAOP實現(xiàn)SPRING主要用途DEMO類似淘寶電子商務網(wǎng)站的后臺的一個產(chǎn)品分類功能模塊企業(yè)級WEB應用開發(fā)新技術,SSH整體結(jié)構(gòu),STRUTSOUTLINE,STRUTSVSSERVLET實例MVCSTRUTS的MVC實現(xiàn)STRUTS的核心技術顯示層WEB框架選型,STRUTSVSSERVLET實例(一),LOGINJSP,STRUTSVSSERVLET實例(二),LOGIN_SUCCESSJSPLOGIN_ERRORJSP,STRUTSVSSERVLET實例(三),SERVLET實現(xiàn),STRUTSVSSERVLET實例(四),STRUTS的實現(xiàn)ACTIONACTIONFORM,STRUTSVSSERVLET實例(五),STRUTSCONFIGXML,STRUTSOUTLINE,STRUTSVSSERVLET實例MVCSTRUTS的MVC實現(xiàn)STRUTS的核心技術顯示層WEB框架選型,MVC,STRUTSOUTLINE,STRUTSVSSERVLET實例MVCSTRUTS的MVC實現(xiàn)STRUTS的核心技術顯示層WEB框架選型,STRUTS的MVC實現(xiàn),STRUTSOUTLINE,STRUTSVSSERVLET實例MVCSTRUTS的MVC實現(xiàn)STRUTS的核心技術顯示層WEB框架選型,STRUTS的核心技術,ACTIONFORMACTIONSTRUTCONFIGXMLSTRUTSTAGLIBJSTLI18N,STRUTS1VSSTRUTS2的區(qū)別,ACTION類線程模式SERVLET依賴可測性捕獲輸入表達式語言綁定值到頁面(VIEW)類型轉(zhuǎn)換校驗ACTION執(zhí)行的控制,STRUTSOUTLINE,STRUTSVSSERVLET實例MVCSTRUTS的MVC實現(xiàn)STRUTS的核心技術顯示層WEB框架選型,顯示層WEB框架選型,JSFSPRINGMVCSTRIPESSTURTS1XSTRUTS20TAPESTRYWICKETFLEXGWTSEAMEXTJS,選擇,選擇的因素,AJAX支持維護性可測試性你項目的特性國際化支持社區(qū)和支持可用的現(xiàn)成工具就業(yè)機會,HIBERNATEOUTLINE,非HIBERNATEVSHIBERNATE實例對比HIBERNATE概念及其優(yōu)勢HIBERNATE核心知識HIBERNATE注意事項,非HIBERNATEVSHIBERNATE實例對比,非HIBERNATE,HIBERNATE實例一),LOGMESSAGEJAVA,HIBERNATE實例二,LOGMESSAGEHBMXML,HIBERNATE實例三,HIBERNATECFGXML,,HIBERNATE實例四,LOGMESSAGEDAOIMPLJAVA,HIBERNATEOUTLINE,非HIBERNATEVSHIBERNATE實例對比HIBERNATE概念及其優(yōu)勢HIBERNATE核心知識HIBERNATE注意事項,HIBERNATE概念及其優(yōu)勢,優(yōu)勢完全屏蔽SQL,你操作的都是對象,面向?qū)ο蟮乃枷氲玫搅撕芎皿w現(xiàn)對象中的繼承等各種關系都可以表示出來,生成數(shù)據(jù)庫時候自動生成,數(shù)據(jù)庫可以最后才有通過HIBERNATE層你可以進行很多優(yōu)化,比如緩存,懶加載等等結(jié)論HIBERNATE給我們提供了利用面向?qū)ο蟮乃枷雭聿僮麝P系型數(shù)據(jù)的接口,簡單說就是一個O/R映射框架,HIBERNATEOUTLINE,非HIBERNATEVSHIBERNATE實例對比HIBERNATE概念及其優(yōu)勢HIBERNATE核心知識HIBERNATE注意事項,HIBERNATE核心知識(一),HIBERNATE核心知識(二),HIBERNATE的對象生命周期HIBERNATE基本映射HIBERNATE高級映射一對多一對一多對一多對多組合主鍵集合映射HIBERNATE的LAZY和級聯(lián)HIBERNATE的繼承策略HIBERNATE悲觀鎖和樂觀鎖HQLHIBERNATE的緩存策略HIBERNATE的FETCH策略,HIBERNATEOUTLINE,非HIBERNATEVSHIBERNATE實例對比HIBERNATE概念及其優(yōu)勢HIBERNATE核心知識HIBERNATE注意事項,HIBERNATE注意事項(一),千萬注意對象化編程思想,先有對象,數(shù)據(jù)庫最后才有SESSIONFACTORY的創(chuàng)建非常消耗資源,整個應用一般只要一個SESSIONFACTORY就夠了,只有多個數(shù)據(jù)庫的時候才會使用多SESSIONFACTORY。在整個應用中,SESSION和事務應該能夠統(tǒng)一管理。(SPRING為HIBERNATE提供了非常好的支持)將所有的集合屬性配置設置為懶加載(LAZY”TRUE”)。在HIBERNATE2X版本中,LAZY默認值是“FALSE”,但HIBERNATE3X已經(jīng)將LAZY的默認改為“TRUE”了。,HIBERNATE注意事項(二),在定義關聯(lián)關系時,集合首選SET,如果集合中的實體存在重復,則選擇LIST(在定義配置文件時,可以將LIST定義為BAG),數(shù)組的性能最差。HQL子句本身大小寫無關,但是其中出現(xiàn)的類名和屬性名必須注意大小寫區(qū)分。如果要精通HIBERNATE,熟練掌握關系數(shù)據(jù)庫理論和SQL是前提條件,SPRINGOUTLINE,不用SPRING和使用SPRING實例對比SPRINGAOP和IOCDISPRING主要用途,不用SPRING(一),,加SPRING進行改進(一),在配置文件中配置一下,所有DAO的實現(xiàn)中都可以省略掉一些相同代碼,不用SPRING(二),不用SPRING(二),,,SPRING的AOP實現(xiàn)一,CROSSINGCUTTINGCONCERNASPECTADVICEJOINPOINTPOINTCUT,SPRING的AOP實現(xiàn)二,IUSERMANAGERJAVAIMYSECURITYMANAGERJAVA,SPRING的AOP實現(xiàn)三,MYSECURITYMANAGERIMPLJAVA,SPRING主要用途,利用SPRING來創(chuàng)建對象(JAVABEAN工廠)利用SPRING構(gòu)建業(yè)務邏輯層管理依賴關系適應需求變更利用SPRING進行事務處理,DEMO類似淘寶電子商務網(wǎng)站的后臺的一個產(chǎn)品分類功能模塊,幾點技巧包結(jié)構(gòu)增刪改查的改進,WEB新技術帶來另類開發(fā)體驗(一個企業(yè)級的WEB系統(tǒng)您還需要以下技術),做一個企業(yè)級開發(fā)需要用到的技術,EXTJS、JQUERY、STRUTSVELOCITYFREEMAKEROSCACHEDWRHIBERNATEIBATISSPRINGJBPMLUCENECOMPASSJUNIT第三方庫,WEB新技術之EXTJS,演示SAMPLE與實際系統(tǒng)演示優(yōu)點CSS樣式不用自己寫,其界面美觀程度,一直在榜首,UI組件非常豐富,直接使用即可跨瀏覽器支持好,基本上所有瀏覽器都支持分層分得好,后臺代碼可以是JAVA,C,PHP動畫效果非常不錯缺點速度性能調(diào)優(yōu)需要豐富經(jīng)驗適用OA,ERP,CRM,MIS(北大很多系統(tǒng)都用它)不適用于門戶,內(nèi)容頁面,WEB新技術之FREEMAKEROSCACHE,例子郵件群發(fā)及頁面緩存OSCACHE主要做緩存,常應用于一些不變的頁面,或者變化非常少的頁面FREEMAKER思想是模板數(shù)據(jù)輸出,常用于靜態(tài)化頁面或者一些郵件等群發(fā)的內(nèi)容。,WEB新技術之DWR,演示ONLINEIDE反向AJAX演示特點直接可以在JAVASCRIPT中調(diào)用后臺JAVA代碼無刷新頁面切換反向AJAX缺點配置文件增多,WEB新技術之JBPM,演示實際系統(tǒng)中的JBPM應用優(yōu)點解耦系統(tǒng)流程以往編寫WEB程序只能有一個流程,現(xiàn)在流程可以自己定義(最終是一個XML文件),具體流程處理可以寫相應模塊完成。適用范圍項目流程比較多,流程復雜的項目系統(tǒng)運行和維護、升級時,流程可能需要修改、調(diào)整和跟蹤、控制的項目,WEB新技術之JPA,代碼展示優(yōu)點JDK規(guī)范底層ORM框架自由切換缺點有些ORM框架特性不支持,WEB新技術之LUCENECOMPASS,LUCENE主要用于做搜索引擎文本解析、分詞、索引、搜索、高亮LUCENECOMPASS主要用于全文檢索演示搜索引擎ECLIPSEHELP,WEB新技術之終極CODEGEN,演示自主開發(fā)的一個輔助工具,目前還在完善功能中。優(yōu)點項目規(guī)范化加速項目開發(fā)不容易出錯減少一些黏貼復制操作缺點需要為每個項目特別定制,APPFUSE框架集大成者,集成了框架HIBERNATE、STRUTS、SPRING、DBUNIT、ANT、LOG4J、STRUTSMENU、XDOCLET、SITEMESH、VELOCITY、JUNIT、JSTL、WEBWORK優(yōu)勢無需自己去配置集成,初學者可以閱讀缺點可控性差,一般企業(yè)自己的項目不可能采用其開發(fā),總結(jié),云計算和手機3G網(wǎng)絡的提出使得越來越多程序軟件開始遷移到WEB中去,WEB中擁有無限的學術價值和商業(yè)價值,掌握好WEB技術,您的機會也無限。,
下載積分: 6 賞幣
上傳時間:2024-01-06
頁數(shù): 56
大?。?3.51(MB)
子文件數(shù):
-
簡介:基于JAVA的網(wǎng)絡聊天室,,課題目的及意義,JAVA語言有下面一些特點簡單、面向?qū)ο?、分布式、解釋?zhí)行、魯棒、安全、體系結(jié)構(gòu)中立、可移植、高性能、多線程以及動態(tài)性。,課題背景,在網(wǎng)絡飛速發(fā)展的今天,互聯(lián)網(wǎng)成為人們快速獲取、發(fā)布和傳遞信息的重要渠道。它在人們的政治、經(jīng)濟、文化等各方面發(fā)揮著重要的作用?;ヂ?lián)網(wǎng)上存在的大量的信息,所以信息交換顯得尤為重要人們一直在尋找一種方便、低廉的交流信息的工具,因此網(wǎng)上聊天便成為人們的首選。本論文通過JAVA的SOCKET實現(xiàn)了一個局域網(wǎng)的聊天室基于JAVA的聊天室的設計與實現(xiàn)。本聊天室服務器包括顯示在線用戶、日志管理、聊天信息管理、發(fā)送系統(tǒng)信息等功能??蛻舳税ǖ卿洝⒆?、公聊、私聊傳送文本文件等功能。,,,內(nèi)容一業(yè)務流程,功能流程說明如下1啟動服務器程序,服務器端創(chuàng)建一個SERVERSOCKET對象,指定端口號。2SERVERSOCKET對象等候客戶端的連接請求。3啟動客戶端程序,登錄用戶。如果未注冊,先注冊再登錄。登錄成功進入聊天室用戶界面。4客戶端創(chuàng)建一個SOCKET對象,指定主機地址和端口號,向服務器發(fā)送連接請求。5服務器端收到客戶端請求,建立一條TCP連接,再創(chuàng)建一個SOCKET對象與客戶端的SOCKET對象進行通信。6服務器端和客戶端分別建立字節(jié)輸入/輸出流,進行數(shù)據(jù)傳輸準備。7服務器端和客戶端通過各自的字節(jié)輸入流獲得對方發(fā)送過來的數(shù)據(jù),通過字節(jié)輸出向?qū)Ψ桨l(fā)送數(shù)據(jù)。8一方?jīng)Q定結(jié)束通信,向?qū)Ψ桨l(fā)送結(jié)素信息,另一方收到結(jié)束信息后,雙方分別關閉各自的TCP連接。9對象停止等候客戶端連接請求。,,本系統(tǒng)的SOCKET程序工作過程如圖11所示。,,,,內(nèi)容二本系統(tǒng)的需求分析,需求分析是一組活動的總稱,作為系統(tǒng)分析員,必須協(xié)同軟件用戶共同完成。而需求分析的任務是定義待開發(fā)的軟件的功能、性能等指標。要了解用戶的相關業(yè)務,如果是一家公司,除了參考現(xiàn)在已經(jīng)存在的類似和相關系統(tǒng)外,還需要通過用戶的演示、講解和有關文檔,與用戶進行交流協(xié)商,為此產(chǎn)生了業(yè)務流程圖。,系統(tǒng)功能流圖,,內(nèi)容四總體設計,總體設計的任務是從整體上對網(wǎng)站精心策劃并確定網(wǎng)站的設計目標,在技術上合理規(guī)劃設計指標,收集、整理、編輯網(wǎng)站內(nèi)容,同時從訪問者的角度設計劃分欄目。鑒于此系統(tǒng)的兩種任務的說明,可將系統(tǒng)分為服務器和客戶端。,服務器頁面如圖所示,實現(xiàn)用戶注冊如圖所示。,實現(xiàn)用戶登錄如圖所示,客戶端主聊天界面如圖所示,客戶端音樂播放界面如圖所示,,系統(tǒng)總體效果如圖所示,功能模塊測試對軟件的測試在軟件開發(fā)中非常重要也非常必要,軟件分析、設計過程中難免有各種各樣的錯誤,需要通過測試查找錯誤,以對軟件進行修改和進一步完善。軟件測試的目標是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程,好的測試方案是發(fā)現(xiàn)軟件盡可能多的錯誤,從而對錯誤進行修改以提高軟件質(zhì)量。測試本系統(tǒng)采用黑盒測試法主要測試軟件能否滿足功能要求,檢查輸入能否被正確地接受、能否正確地輸出結(jié)果。,畢業(yè)設計總結(jié)和展望本畢業(yè)設計實現(xiàn)了簡單的實時聊天功能,經(jīng)過細心的調(diào)試和排錯解決了絕大部分的問題。根據(jù)實現(xiàn)的情況看,具有較友好的聊天界面生成效果,以及流暢的網(wǎng)絡通信效果。基本滿足了結(jié)構(gòu)化、界面友好、速度快、安全性以及穩(wěn)定性等特點。系統(tǒng)具有目前聊天室的基本功能包括支持多種頭像,支持私聊,支持在線聊友顯示,支持用戶定制自己的私人頭像,支持上傳文件。由于時間短,任務重,加上本人能力有限,許多設想還未能體現(xiàn),如語音、視頻聊天等等,在今后工作之余,本人會盡力付之實踐,使其盡善盡美。,致謝感謝畢業(yè)設計的負責老師,為了我們的畢業(yè)設計能夠順利進行而奔波忙碌。衷心的祝愿教導我們?nèi)甑睦蠋焸兩眢w健康,工作順利感謝三年來身邊同學,能夠與你們相聚,是我的榮幸,祝各位親愛的同學天天開心,未來有一份很好的工作順祝我們開封大學的明天更加輝煌,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 17
大小: 0.63(MB)
子文件數(shù):
-
簡介:陳小燕,實例分析教材解讀與課堂改進,QQ25744567,EMAIL25744567QQCOM,一、閱讀課的現(xiàn)狀及存在的問題,走套路FASTREADING,CAREFULREADING,DISCUSSION,大雜燴MAINIDEAQNOTCHANGEHERMINDSEEMTOBEEXCITED,夢想和現(xiàn)實,,擁有夢想只是一種智力,實現(xiàn)夢想才是一種能力。,,FROMTIBETTODALI,PART1P18,PART2P22,THEDREAMANDTHEPLAN,ANIGHTINTHEMOUNTAIN,INLAOS,PART3P23,ACHATWITHAGIRL,PART4P55,JOURNEYTHROUGHLAOS,PART5P58,BYTHERIVERINLAOS,INCAMBODIAANDVIETNAM,PART6P59,THEENDOFOURJOURNEY,,三、M1U3教材解讀點滴,,M1U3STRUCTURE,M1U3JOURNEYDOWNTHEMEKONG,,,,三、M1U3教材解讀點滴,,M1U3WORDSUSEDINDESCRIBINGWATER,,,M1U3VIEWSANDFEELINGS,,,,,,,,三、M1U3教材解讀點滴,四、感想,反思和疑惑,,教材解讀的過程是體驗一種“自在的快樂”,經(jīng)教材解讀后的閱讀課堂呈現(xiàn)一種“安靜的熱鬧”學生,教師和文本之間會有思維的碰撞和共鳴。但目前的課堂中存在大量的練習課,閱讀課實際上只占單元課時中的一小部分。,如何提升閱讀課的地位如何提高閱讀課的真實性和有效性如何將練習講評課轉(zhuǎn)化為高質(zhì)量的閱讀課如何培養(yǎng)學生的閱讀策略如何提高學生的閱讀能力,NOTALLWEPLANTSPROUTSIMMEDIATELYALLGOODTHINGSNEEDTAKETIMESTOMANIFESTTHEMSELVES,BUTONCETHEWHEELHASBEENSETINMOTIONWITHINTENTION,CHANGESCANTAKEPLACETHOUGHWEMIGHTNOTNOTICETHEMONTHESURFACENOTHINGSTAYSBLOCKEDFOREVER,ANDTHEREISATREMENDOUSAMOUNTOFWORKTHATCANTAKEPLACEWHEREWECAN’TSEEIT,,共勉,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 39
大?。?1.99(MB)
子文件數(shù):
-
簡介:第2章形式語言與自動機基礎,21文法和語言22有限自動機23正規(guī)式與有限自動機,,CH2形式語言自動機理論基礎22自動機基礎,第2章形式語言與自動機基礎,22有限自動機基礎221確定的有限狀態(tài)自動機DFA222非確定的有限狀態(tài)自動機NFA223NFA確定化224DFA化簡,CH2形式語言自動機理論基礎22自動機基礎,,定義224一個確定的有限自動機MDFAM是一個五元組M(Q,?,F,Q0,Z),CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,確定的有限自動機(DFA)DFADETERMINISTICFINITEAUTOMATON,其中Q狀態(tài)的有限集合,每個元素QIQI?Q稱為一個狀態(tài)。,?輸入字符的有限集合或有窮字母表。每個元素是一個輸入字符。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,Q0M的唯一初態(tài)(也稱開始狀態(tài)),Q0?Q。,F狀態(tài)轉(zhuǎn)換函數(shù)從Q???Q的映射。例如,F(P,A)Q,Q、P?Q,A??。表示了狀態(tài)P在輸入字符A之后轉(zhuǎn)入狀態(tài)Q。Q也稱為P的后繼狀態(tài)。,ZM的終態(tài)集(或接受狀態(tài))Z?Q。,,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,二DFA的等價表示,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,狀態(tài)轉(zhuǎn)換圖表示,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,,,狀態(tài)轉(zhuǎn)換圖表示,DFAM{0,1,2,3},{A,B},F,0,{3})F(0,A)1F(0,B)2F(1,A)3F(1,B)2F(2,A)1F(2,B)3F(3,A)3F(3,B)3,,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,二DFA的等價表示,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,狀態(tài)轉(zhuǎn)換表表示,DFAM{0,1,2,3},{A,B},F,0,{3})F(0,A)1F(0,B)2F(1,A)3F(1,B)2F(2,A)1F(2,B)3F(3,A)3F(3,B)3,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,三DFA的識別機制,如果存在Q中的狀態(tài)序列P0,P1,?,PN,滿足下列條件P0=Q0F(PI,WI+1)=PI+1,I=0,1,?,N-1PN?Z則M接受(識別)?。,確定的有限自動機M(Q,?,F,Q0,Z)接受或識別字母表?上的字符串?=W1W2?WN的意義,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,從狀態(tài)圖出發(fā)可以更形象地進行描述。,若存在一條從初態(tài)結(jié)點到某一終態(tài)結(jié)點的路徑,且在這條路徑上所有弧的標記連接成的字符串等于?,則稱?為DFAM所識別接受。,確定的有限自動機M識別的字符串的全體稱為M識別的語言,記為LM。LM{?|????FQ0,??Z},特例的是,若M的初態(tài)結(jié)點同時又是終態(tài)結(jié)點,則空串Ε為M所識別。,設?=A1A2??AN1AN,F(xiàn)Q0,?FF?FFQ0,A1,,A2,?,AN1,AN,確定的有限自動機M(Q,?,F,Q0,Z)接受或識別字母表?上的字符串?=W1W2?WN的意義,根據(jù)串沿著序列(路徑)P0,P1,?,找到PN,判斷PN是否屬于終態(tài)集。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,具體識別方法,如果存在Q中的狀態(tài)序列P0,P1,?,PN,滿足下列條件P0=Q0F(PI,WI+1)=PI+1,I=0,1,?,N-1PN?Z則M接受(識別)?。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,例221分析下面描述的DFAM1。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,1110101,其M1對1的識別過程是,F(QEE,1)QEO,F(QEO,1)QEE,F(QEE,0)QOE,F(QOE,1)QOO,F(QOO,0)QEO,所以串1110101可以被M1接受。,{QEE,QOE,QEO,QOO},{0,1},F,QEE,{QEE}FQEE,0QOEFQEE,1QEOFQOE,0QEEFQOE,1QOOFQEO,0QOOFQEO,1QEEFQOO,0QEOFQOO,1QOE,F(QEE,110101)FF(QEE,11010),1??=F(QEO,1)QEE?Z,F(QEO,1)QEE?Z,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,DFAM1狀態(tài)圖,1,QEE,QEO,QOE,QOO,,,1,1,1,0,0,0,0,對1010,QEE,QEO,QOO,QOE,QEE,?Z,可以識別的語言為含偶數(shù)個0和偶數(shù)個1的二進制串集合。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,例222設計一臺DFA,接受含有子串001的所有二進制串。,問題分析,輸入字母為0或1,所以?={0,1},識別過程中有4種可能性剛才沒看見模式的任何符號;剛才看見一個0;剛才看見00;已經(jīng)看見整個模式001,所以有4個狀態(tài)Q={Q,Q0,Q00,Q001},其中Q為初態(tài),Q001為終態(tài)。,,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,,,代表兩條有向邊,一個權(quán)值為0,一個為1,接受含有子串001的所有二進制串的DFA,,,,與文法等價概念類似設有DFAM和DFAM,若LMLM,則稱M和M等價。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,?注意1)DFA是具有離散輸入、輸出系統(tǒng)的一個純數(shù)學模型;2)DFA的技巧在于狀態(tài)的設置;3)DFA映射的唯一性。(對于任意字,在DFA中有且僅有唯一路徑)。,第2章形式語言與自動機基礎,22有限自動機基礎221確定的有限狀態(tài)自動機DFA222非確定的有限狀態(tài)自動機NFA223NFA確定化224DFA化簡,CH2形式語言自動機理論基礎22自動機基礎,,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,一NFA的定義DFA的確定性表現(xiàn)在其映射函數(shù)是一個單值函數(shù)。但是實際問題中,映射函數(shù)往往是一個多值函數(shù)。,例如,源程序中掃描到一個字母時,不同的語言對應多種情況,FORTRAN中標識符/格式轉(zhuǎn)換碼E、D,C語言中標識符/IF/SWITCH,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,?NFA在實際中更具普遍性。,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,定義225一個非確定的有限自動機MNFAM是一個五元組M(Q,?,F,Q0,Z),其中Q,?,Z,Q0同DFA。,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,F狀態(tài)轉(zhuǎn)換函數(shù)。從Q??∪{?}?2Q的映射。這里的后繼狀態(tài)不是唯一的,它是狀態(tài)集Q的子集。,?注意NFA亦可用狀態(tài)圖和狀態(tài)表表示。DFA和NFA統(tǒng)稱為有限自動機FA。,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,例223設有一個非確定的有限自動機MNFAM({Q0,Q1,Q2,Q3,Q4},{0,1},F,Q0,{Q2,Q4}),CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,Q1,Q3,,Q4,,,,,,Q2,Q0,0,0,1,1,0,1,0,1,0,1,,F(Q0,0){Q0,Q3}F(Q0,1){Q0,Q1}F(Q1,0)?F(Q1,1){Q2}F(Q2,0){Q2}F(Q2,1){Q2}F(Q3,0){Q4}F(Q3,1)?F(Q4,0){Q4}F(Q4,1){Q4},CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,二NFA的識別機制,如果存在Q中的狀態(tài)序列P0,P1,?,PN,滿足下列條件P0=Q0PI+1?F(PI,WI+1),I=0,1,?,N-1PN?Z則M接受(識別)?。,非確定的有限自動機M(Q,?,F,Q0,Z)接受或識別字母表?上的字符串?=W1W2?WN,WI???∪{?}的意義,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,從狀態(tài)轉(zhuǎn)換圖進行描述,若存在一條從初態(tài)結(jié)點到某一終態(tài)結(jié)點的路徑,且在這條路徑上所有弧的標記連接成的字符串等于?,則稱?為NFAM所識別接受。,非確定的有限自動機M識別的字符串的全體稱為M識別的語言,記為LM。,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,例223的非確定的有限自動機M所識別的語言L(M),L(M)={含有兩個相鄰的0或兩個相鄰的1的由0和1組成的字符串},Q1,Q3,,Q4,,,,,,Q2,Q0,0,0,1,1,0,1,0,1,0,1,,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,例224給出一個識別語言為{A}?{B}的NFAM如下圖所示。,對字符串AAA的接受路徑為0,1,2,2,2,接受路徑中邊的標記是?,A,A,A,它們的連接為字符串AAA,?在連接中消失。,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,例222設計一臺FA,接受含有子串001的所有二進制串。,問題分析,輸入字母為0或1,所以?={0,1},識別過程中有4種可能性剛才沒看見模式的任何符號;剛才看見一個0;剛才看見00;已經(jīng)看見整個模式001,所以有4個狀態(tài)Q={Q,Q0,Q00,Q001},其中Q為初態(tài),Q001為終態(tài)。,,CH2形式語言自動機理論基礎22自動機基礎221確定的FA(DFA),,,,,接受含有子串001的所有二進制串的FA,0,1,0,1,CH2形式語言自動機理論基礎22自動機基礎222非確定的FANFA,,,NFADFAFQ??∪{?}FQ??FFQ??∪{?}2QFQ??Q,,,,,,,,三NFA和DFA的區(qū)別,?注意在NFA中對字的識別時驗證的路徑可能不唯一。,第2章形式語言與自動機基礎,22有限自動機基礎221確定的有限狀態(tài)自動機DFA222非確定的有限狀態(tài)自動機NFA223NFA確定化224DFA化簡,CH2形式語言自動機理論基礎22自動機基礎,,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,定理21對任何一個NFAM,都存在一個DFAM,使LMLM。,定理21說明對任何一個NFAM,都存在一個DFAM,使M和M所識別的字的全體相同,我們可簡記為M=M。,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,NFA確定化的算法子集法。,定義226假設I是NFAM狀態(tài)集Q的一個子集。即I?Q,則定義ΕCLOSUREI為1若QI∈I,則QI∈ΕCLOSUREI;2若QI∈I,則從QI出發(fā)經(jīng)過任意條Ε弧而能到達的任何狀態(tài)QJ,有QJ∈ΕCLOSUREI。,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,例225有NFAM如下圖所示。,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,設I{1,5}則ΕCLOSURE{1,5}=ΕCLOSURE{5}∪ΕCLOSURE{1}={1,2,5,6},設I{5},設I{1},則ΕCLOSUREIΕCLOSURE{5}{5,6,2},則ΕCLOSURE{1}{1,2},CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,,?綜述,1)狀態(tài)集I的ΕCLOSUREI仍是一狀態(tài)集;,2)狀態(tài)集(ΕCLOSUREI)即為在I中的狀態(tài)下,不輸入任何字符所能到達的狀態(tài)的全體并包含I中的狀態(tài),就是狀態(tài)集I的Ε閉包。,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,,算法21求I的ΕCLOSUREI輸入NFAM和M的子集I輸出ΕCLOSUREI算法SET_OF_STATELOOKSET_OF_STATEI{LOOKIDO{對LOOK中每一個狀態(tài)IIF?結(jié)構(gòu)LOOKLOOK{J}}WHILELOOK不再擴大},I,J,,?,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,定義227(狀態(tài)集合I的A弧轉(zhuǎn)換IA)設NFAMQ,∑,F(xiàn),Q0,Z假定I?Q,A∈∑,則定義IAΕCLOSURE{P|?Q??CLOSEI,P?FQ,A}。,注意計算IA需三步I的?閉包;閉包的映射集;映射集的?閉包。IAΕCLOSUREF?CLOSEI,A。,設I{2,5}則IAΕCLOSURE(F{2,5,6},A)ΕCLOSURE({3}){3,8},CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,例226有NFAM如例225。設I{1}求IA則ΕCLOSURE(I)={1,2}F{1,2},AF1,A∪F2,A{3,4,5}IAΕCLOSURE({3,4,5}){2,3,4,5,6,7,8},CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,NFA確定化關鍵1)消去Ε??;2)解決映射不唯一問題。,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,子集法NFA的確定化算法,對NFAM’(Q,{?1,?2,,?N},F,Q0,Z),,,STEP1初始化,設一狀態(tài)表,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,,,,,,I11,I12,I1N,STEP2求I?N,,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,STEP3重新命名,對求得的狀態(tài)表(DFAM)的第一列各狀態(tài)子集重新命名,然后代入相應的狀態(tài)表元素;第一列第一行為DFAM的惟一初態(tài);含有原M?終態(tài)的I為M終態(tài)。,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,例227有NFAM’如下圖所示。,1,2,3,8,5,4,,6,,7,,,,,,,,,A,A,A,Ε,Ε,Ε,Ε,,Ε,,,ΕCLOSUREQ0{1,2},CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,{2,3,4,5,6,7,8},{3,8},?,12,012,Ε,1,2,3,8,5,4,,,,,,,,,A,A,A,Ε,Ε,Ε,,Ε,,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,,,2,1,3,8,5,4,,,,,,,,,A,A,A,Ε,Ε,Ε,Ε,,Ε,,,,例228有NFAM’如下圖所示。,1,P,R,S,,,,,0,0,1,0|1,0|1,Q,1,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,,,{Q,S},{Q},{R},{R},{Q,R,P},{Q,R},{Q,R},{S},{P},{S},{Q,R,S},{Q,R,S},{Q,R,P},{R,S},{R,S},{R,S},{Q,R,P},{Q,R,P},{P},{P},{S},012345678,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,1,,,R,Q,S,0,1,0,1,0,1,0,1,,P,,1,?,,,CH2形式語言自動機理論基礎22自動機基礎223NFA確定化,第2章形式語言與自動機基礎,22有限自動機基礎221確定的有限狀態(tài)自動機DFA222非確定的有限狀態(tài)自動機NFA223NFA確定化224DFA化簡,CH2形式語言自動機理論基礎22自動機基礎,,所謂DFAM的化簡是指尋找一個狀態(tài)數(shù)比較少的DFAM?,即規(guī)約的DFAM?,使得LMLM?,可以證明存在一個最小DFAM?,使得LMLM?。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,定義228如果DFAM既沒有無關狀態(tài),且沒有彼此等價的狀態(tài),則稱DFAM是規(guī)約的即最小的DFAM。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,定義229無關狀態(tài)或多余狀態(tài)或無用狀態(tài)如果從DFAM的初態(tài)開始,任何輸入序列都不能到達的那些狀態(tài)稱為無關狀態(tài)。,DFA化簡實現(xiàn)思想通過刪除無關狀態(tài),合并等價狀態(tài)的歸約過程,直至得到歸約機最小的DFA。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,01,STATE,,,6,3,8,1,0,7,0,8,6,1,3,5,6,5,4,7,5,3,5,2,2,7,2,1,5,1,0,,,,,,,,,,,,,,,,,,,,,,,,,例229有FAM,0,1,5,2,7,3,15,27,3,,,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,定義230等價狀態(tài)、可區(qū)分狀態(tài)設DFAM的兩個不同狀態(tài)Q1,Q2,如果對任意輸入字符串Ω,從Q1,Q2狀態(tài)出發(fā),總是同時到達接收狀態(tài)或拒絕狀態(tài)之中,稱Q1,Q2是等價的。即對于?Ω,Ω∈∑有FQ1,ΩP1,F(xiàn)Q2,ΩP2,P1,P2∈Z或P1,P2?Z,則Q1,Q2等價,記作Q1?Q2。如果兩個狀態(tài)不等價,則稱Q1,Q2是可區(qū)別的(或者說Q1,Q2被Ω所區(qū)別)。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,DFA合并等價狀態(tài)的實現(xiàn)方法劃分法。劃分法的核心是尋找且合并等價狀態(tài)。即將給定的DFA劃分為互不相交的子集,使得任何兩個不同子集的狀態(tài)都是可區(qū)分的,而同一個子集的任何兩個狀態(tài)都是等價的。然后每個子集中的狀態(tài)合并為一個狀態(tài)。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,劃分法的算法實現(xiàn)步驟如下1把M的所有狀態(tài)Q按終態(tài)與非終態(tài)劃分成兩個狀態(tài)子集Z及QZ,構(gòu)成初始劃分或稱基本劃分,記作Π{Z,QZ};,2設當前的劃分Π中已經(jīng)含有M個子集,即Π{Q1,Q2,,QM}其中,屬于不同子集的狀態(tài)是可區(qū)分的,而屬于同一子集中的各狀態(tài)是待區(qū)分的。即需要對每一個子集QI{QI1,QI2,,QIN}中各狀態(tài)QIRQIR∈Q,1≤R≤N進行考察,確認是否還能對它們進行劃分。若能進行劃分,則形成新的劃分ΠNEW。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,3若ΠNEW≠Π,則將其作為Π再重復2中的過程,如此下去,直到最后得到一個劃分Π,使ΠNEW=Π,即Π中的各個子集不能再進行劃分為止。,4對所得的最后劃分Π,對它的每個子集QJ{QJ1,QJ2,,QJR}進行重新命名為一個狀態(tài),如PJ作為Π中子集QJ的名字,這些新命名的狀態(tài)PJ組成了M的狀態(tài)集Q。而且,若QJ中含有M的初態(tài),則PJ為M的初態(tài)若QJ中含有M的終態(tài),則PJ為M的終態(tài)。此外,對狀態(tài)轉(zhuǎn)移函數(shù)作相應的修改。,第(2)步詳解例如,QIR和QIS是QI中的兩個狀態(tài),若有某個A∈∑,使得FQIR,AQJU及FQIS,AQKV,而狀態(tài)QJU及QKV分別屬于Π中兩個不同的子集QJ和QK,由于QJU與QKV為某一符號串Ω所區(qū)分,從而QIR和QIS必為AΩ所區(qū)分,故應將子集QI進一步劃分,使QIR和QIS分別屬于QI的不同子集。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,2需要對每一個子集QI{QI1,QI2,,QIN}中各狀態(tài)QIRQIR∈Q,1≤R≤N進行考察,確認是否還能對它們進行劃分。,第(2)步需要考察對于每一個子集QI及每一個A∈∑,QIAFQI,A∪FQIR,A若QIA中的狀態(tài)分別落在Π中的P個不同的子集,則將QI分為P個更小的狀態(tài)子集QI1,QI2,,QIP,若FQI,A中的全部狀態(tài)都落在Π的同一子集之中,則不再劃分QI。特殊情況若對某狀態(tài)QIR,F(xiàn)QIR,A無意義,則QIR與任何FQ,A有定義的狀態(tài)都是可區(qū)分的。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,例230設確定有限自動機DFAM,如圖所示。,STEP1形成基本劃分。劃分為終態(tài)集和非終態(tài)集。P0({0,1},{2}),STEP2重新命名。令{0,1}為0,令{2}為1。,,B,A,B,A,A,,0,2,,1,,,,,考察F0,A1?{0,1}F0,B2?{2}F1,A1?{0,1}F1,B2?{2},CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,化簡后的DFAM,,重新命名{0,1}為0,{2}為1。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,例231對下圖的DFAM化簡。,A,A,A,A,,B,B,A,,B,A,B,B,1,A,,6,4,3,,7,,5,,,,,,,,,B,,2,,,B,,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,第一步,對M的狀態(tài)形成基本劃分?0,?0有兩個組Q1,Q2,即?0{1,2,3,4},{5,6,7}Q1,Q2,第二步,對Q1,Q2考察?0中的Q1的映射,F(xiàn)1,A6?Q2F1,B3?Q1F2,A7?Q2F2,B3?Q1F3,A1?Q1F3,B5?Q2F4,A4?Q1F4,B6?Q2,輸入A和B的情況下,Q1中的狀態(tài)1,2與狀態(tài)3,4是不等價的。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,對Q1進行劃分,形成Q1Q3,Q4{1,2},{3,4},,由此,對基本劃分?0經(jīng)考察后,形成新的劃分?1?1(Q2,Q3,Q4){5,6,7},{1,2},{3,4},CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,第三步,考察?1中的Q2F5,A7?Q2F5,B3?Q4F6,A4?Q4F6,B1?Q3F7,A4?Q4F7,B2?Q3輸入A和B的情況下,Q2中的狀態(tài)5與狀態(tài)6,7是不等價的,形成Q2的新的劃分Q2Q5,Q6({5},{6,7}),CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,由此,對劃分?1經(jīng)考察且劃分后,形成新的劃分?2?2(Q3,Q4,Q5,Q6){1,2},{3,4},{5},{6,7},第四步,對新形成的劃分?2重復上述考察步驟,對?2中Q3,Q5,Q6的狀態(tài)在輸入字符A,B的情況下考察其是等價的。,對?2中Q4的狀態(tài){3,4}在輸入字符A的情況下考察其是不等價的,再劃分為Q4(Q7,Q8)({3},{4}),CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,對劃分?2經(jīng)考察且劃分后,形成新的劃分?3?3Q3,Q5,Q6,Q7,Q8{1,2},{5},{6,7},{3},{4},CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,第六步,重新命名。,第五步,對新形成的劃分?3Q3,Q5,Q6,Q7,Q8{1,2},{5},{6,7},{3},{4}重復上述步,對?3中的Q3,Q5,Q6,Q7,Q8的狀態(tài)在輸入字符A,B的情況下考察其是等價的。,CH2形式語言自動機理論基礎22自動機基礎224DFA的化簡,,,?2Q3,Q5,Q6,Q7,Q8{1,2},{5},{6,7},{3},{4},,,,,CH2形式語言自動機理論基礎,?第二章第二節(jié)提要,,,,,CH2形式語言自動機理論基礎,END,?第二章第二節(jié),CH2形式語言自動機理論基礎,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 75
大?。?0.77(MB)
子文件數(shù):
-
簡介:UNICODE和多語言信息處理,,內(nèi)容,早期的本地化技術軟件國際化和多語言信息處理的需求常見字符集、編碼介紹UNICODETECHNOLOGY簡介開發(fā)支持UNICODE的程序INTERNET時代的多語言信息處理相關資源不涉及文字消息(界面)本地化,早期的本地化技術,問題的歷史起因電子計算機源起于英美,較少考慮國際需求早期不面向普通用戶,無交互早期的本地化努力互相獨立缺乏溝通合作逆向工程、外掛,支持不徹底應用軟件要做個例修改,缺乏復用早期漢化的重要成果GB2312標準,基于國際化的本地化,抽象出共同部分做成框架,應用程序接口,國際化核心功能,本地化數(shù)據(jù)定義接口,英文定義,俄文定義,中文定義,,文字處理,數(shù)據(jù)庫,多媒體,,基于國際化的本地化-續(xù),成果抽象框架,功能復用,簡化開發(fā)過程可加載的本地化模塊,易于擴展寬字符機制,避開多字節(jié)編碼的字節(jié)邊界缺陷編碼空間不兼容,導致“亂碼”即使使用寬字符,不同語言的文字也無法共同處理,亂碼一例,GBKBYTE10X81,0XFEBYTE20X40,0XFELATIN1SINGLEBYTE0XA0,0XFF序列0XF1,0X61如何解釋在GBK里是馻在LATIN1里是?A,馻,?A,多語言需求的解決方法,問題字符集太小解決設計大字符集并預留擴充位問題編碼空間沖突解決設計新的編碼方式有狀態(tài)編碼,使用轉(zhuǎn)義序列局部兼容性,編程復雜無狀態(tài)編碼,為每個編碼點保留唯一編碼值需要碼表轉(zhuǎn)換,編程簡單,常見字符集和編碼,ASCIIAMERICANSTANDARDCODEFORINFORMATIONINTERCHANGE起源于美國國會圖書館等同于ISO646包含英文大小寫字母、阿拉伯數(shù)字、標點符號、控制符7位編碼是后來各種字符集、編碼的兼容性參考,常見字符集和編碼-續(xù),ISO8859擴充了ASCII,加入歐洲語言的字母和符號8位編碼,擴充部分在B71的區(qū)域,避開控制符,與ASCII兼容分為多個擴展集,適應不同文字ISO88591西歐ISO88595西里爾語ISO88597希臘語ISO885915增加歐元符號,常見字符集和編碼-續(xù),亞洲語言的字符集中國大陸GB系列中國臺灣CNS、BIG5日本JISX韓國KSC大字符集CCCII、ANSIZ3964、ISO10646亞洲語言的編碼系統(tǒng)ISO2022多七位編碼EUC多八位編碼雙字節(jié)編碼SHIFTJIS、GBK、BIG5UNICODE類編碼其它HZGB2312、GB18030、TRON、ANSIZ3964等,UNICODETECHNOLOGY,UNICODE是什么UNICODEPROVIDESAUNIQUENUMBERFOREVERYCHARACTER,NOMATTERWHATTHEPLATFORM,NOMATTERWHATTHEPROGRAM,NOMATTERWHATTHELANGUAGE關于字符集、編碼的一系列相關標準和處理技術的總和,UNICODETECHNOLOGY-續(xù),UNICODE的起源與發(fā)展發(fā)起者XEROX、APPLE、IBM、MICROSOFT、SUN、DEC、NOVELL等UNICODE與ISO10646的競爭ISO106464個8位元定長,避開控制區(qū)C0和C1,不要求B7都為0或1UNICODE直接使用16位元,不避C0和C1UNICODE與ISO10646的統(tǒng)一ISO10646放棄避開控制區(qū)的方式UNICODE并入ISO10646的字面0,使用多八位元表示UNICODE版本在不斷更新增加新的字符,修正錯誤,UNICODETECHNOLOGY-續(xù),字符索引值的結(jié)構(gòu)0GGGGGGGPPPPPPPPRRRRRRRRCCCCCCCCB31固定為07位群GROUP索引,8位面PLANE索引,8位行ROW索引,8位格CELL索引每個面的0XFFFE和0XFFFF值保留總共可收錄的字數(shù)為12825625625622,147,418,112個,UNICODETECHNOLOGY-續(xù),UNICODE的字符集UCSUNIVERSALMULTIPLEOCTETCODEDCHARACTERSETBMPBASICMULTILINGUALPLANE即PLANE0UCS2BMP的字符集相當于早期的UNICODE,UNICODETECHNOLOGY-續(xù),UNICODEBMP字符子集0000007FASCII008000A0C1控制碼00A11FFF拼音文字200028FF符號2E8033FF中日韓符號(部首、注音符號、日文假名、帶括號數(shù)字等)34004DFF中日韓表意文字擴充區(qū)4E009FFF中日韓表意文字主區(qū)(20902個漢字)A000A4FF彝族文字,AC00D7FF韓文拼音組合字D800DFFF代用對,專用于UTF16E000F8FF私有區(qū),用于自造字F900FAFF中日韓兼容表意文字區(qū)FB00FFFD文字表現(xiàn)形式區(qū)(豎排標點、全角字符等)BMP外的字符子集PLANE1其它非表意文字PLANE2中日韓擴充文字和CNS11643兼容字,UNICODETECHNOLOGY-續(xù),UNICODE的編碼方式UNICODETRANSFORMATIONFORMAT目的效率、兼容性UTF32直接用一個32位元表示一個UCS字符UTF16用12個16位元表示一個UCS字符BMP字符為1個16位元,其它面字符用代用對UTF8用14個8位元表示一個UCS字符,理論上是6個ASCII為1個8位元,大部分拼音文字用2個8位元,表意文字用3個8位元,BMP之外的面用4個8位元JAVA里的UTF8可能出現(xiàn)6個8位元,是歷史原因,目前已定義的UNICODE字符至多用到4個,UNICODETECHNOLOGY-續(xù),UTF8的編碼規(guī)則,UNICODETECHNOLOGY-續(xù),字節(jié)序用多八位元表示16位或32位整數(shù)BIGENDIAN、LITTLEENDIAN字節(jié)順序標記數(shù)值FEFFUTF16BEFEFFUTF16LEFFFEUTF8EFBBBF,開發(fā)支持UNICODE的程序,操作系統(tǒng)和運行時庫的UNICODE支持WINDOWSNTFAMILY的WIN32子系統(tǒng)內(nèi)部全面支持UNICODE,內(nèi)核、設備驅(qū)動、文件系統(tǒng)接口都使用UNICODEUSERLEVELAPI全面支持UNICODE,同時提供非UNICODE的API兼容16位WINDOWS下的源代碼UNICODE文本使用UTF16編碼UNICODEIME碼表、微軟輸入法、拼音加加31WINDOWS9X的UNICODEAPI只提供了入口,內(nèi)部沒有實現(xiàn),調(diào)用則返回錯誤代碼,開發(fā)支持UNICODE的程序-續(xù),操作系統(tǒng)和運行時庫的UNICODE支持-續(xù)開放系統(tǒng)各類UNIX系統(tǒng)的SYSCALL、VFS等涉及文本的地方都是CHAR,因此最好的折中方式是UTF8GLIBC的WIDECHAR是UTF32編碼,但只適用于GNU系統(tǒng);其它系統(tǒng)的LIBC未必如此XFREE86/XORG在保留復雜的X11復合文本的同時引入XUTF8系列API支持UNICODEGNOME使用UTF8作為內(nèi)部編碼,KDE通過QSTRING支持UNICODESCIM輸入平臺全面支持UNICODE,開發(fā)支持UNICODE的程序-續(xù),WINDOWS的雙模API文檔中的原型BOOLSETWINDOWTEXTHWNDHWND,LPCTSTRLPSTRING實際原型BOOLSETWINDOWTEXTAHWNDHWND,LPCSTRLPSTRINGBOOLSETWINDOWTEXTWHWNDHWND,LPCWSTRLPSTRINGIFDEFUNICODEDEFINESETWINDOWTEXTSETWINDOWTEXTWELSEDEFINESETWINDOWTEXTSETWINDOWTEXTAENDIF,開發(fā)支持UNICODE的程序-續(xù),用MSLU開發(fā)支持UNICODE的軟件原理在NT上直接調(diào)用WAPI在9X上截取W系列API的調(diào)用轉(zhuǎn)為A系列API好處與局限性在NT上不損失任何功能和性能,在9X上正常運行支持的API不夠完整,有些需要自己重載并不能給9X帶來支持UNICODE的能力出現(xiàn)太晚,大多數(shù)第三方軟件開發(fā)商不支持其它選擇雙版本可執(zhí)行程序自己寫自適應層,開發(fā)支持UNICODE的程序-續(xù),編程語言/開發(fā)環(huán)境對UNICODE的支持C和CWIDECHAR并不保證字符集和編碼方式ISOC99提供了可選的ISO10646支持必要時可借助IBM的ICUJAVA從一開始設計就支持UNICODE早期UCS2,后來通過UTF16全面支持DELPHI以兼容性為借口不在VCL中支持UNICODETNTTWAREDELPHIUNICODECONTROLS開源社區(qū)的腳本語言積極支持UNICODE,開發(fā)支持UNICODE的程序-續(xù),INTERNET與UNICODEHTML用UNICODE作為字符集EMAIL信頭和信體的編碼設定IMAP協(xié)議用變種UTF7傳送郵件夾名稱LDAPV3使用UTF8傳送文本SFTP使用UTF8傳送文件名多語種域名解析系統(tǒng)IETF建議以后新發(fā)明的協(xié)議和URI表示法都支持UTF8,相關資源,亂碼大全BLUESEASMTHCJKINFCJKVINFORMATIONPROCESINGKENLUNDEUNICODE與ISO10646曾士熊UTF8ANDUNICODEFAQFORLINUX–MARKUSKUHNDEVELOPINGINTERNATIONALSOFTWARE中譯版國際化軟件開發(fā)–MICROSOFTCORPMSDNLIBRARY–MICROSOFTCORPRFC中的相關篇目IETF,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 25
大?。?0.47(MB)
子文件數(shù):
-
簡介:C語言入門與提高,,C語言程序開發(fā)環(huán)境介紹,1TURBOC20開發(fā)環(huán)境介紹2WINTC開發(fā)環(huán)境介紹3LCC開發(fā)環(huán)境介紹4VISUALC開發(fā)環(huán)境介紹5本章小結(jié),第2章C語言程序開發(fā)環(huán)境介紹,1TURBOC20開發(fā)環(huán)境介紹,11運行TURBOC20,1TURBOC20開發(fā)環(huán)境介紹,1TURBOC20開發(fā)環(huán)境介紹,12TURBOC20開發(fā)環(huán)境設置,1)設置TURBOC20的運行環(huán)境,1TURBOC20開發(fā)環(huán)境介紹,2)創(chuàng)建新的C程序源文件3)打開已存在的C程序文件4)退出TURBOC20的集成開發(fā)環(huán)境,1TURBOC20開發(fā)環(huán)境介紹,,13TURBOC20的使用我們通過F10鍵激活菜單,并執(zhí)行【FILE】|【NEW】命令,按下ENTER鍵,輸入以下代碼VOIDMAIN{PRINTF“HELLOWORLD\N”},1TURBOC20開發(fā)環(huán)境介紹,要想讓結(jié)果顯示出來,需要經(jīng)過編輯、編譯、鏈接和運行4個步驟。1.編輯源文件2.編譯源文件3.鏈接目標代碼文件4.運行可執(zhí)行文件,,1TURBOC20開發(fā)環(huán)境介紹,,5.運行C語言程序按下F10鍵激活菜單,執(zhí)行【COMPILE】|【COMPILETOOBJ】命令,對程序進行編譯,出現(xiàn)【COMPILING】對話框,,,1TURBOC20開發(fā)環(huán)境介紹,2WINTC開發(fā)環(huán)境介紹,21WINTC開發(fā)環(huán)境介紹WINTC開發(fā)環(huán)境主界面,2WINTC開發(fā)環(huán)境介紹,22WINTC的使用VOIDMAIN{PRINTF“HELLOWORLD\N”GETCH},,執(zhí)行【運行】|【編譯鏈接運行】命令或者按下快捷鍵CTRLF9,2WINTC開發(fā)環(huán)境介紹,,VOIDMAIN{PRINTF“歡迎來到C語言世界\N”GETCH},,2WINTC開發(fā)環(huán)境介紹,VOIDMAIN{SYSTEM“GRAFTABL936“CLRSCRPRINTF“歡迎來到C語言世界\N“GETCH},,3LCC開發(fā)環(huán)境介紹,31使用LCC開發(fā)環(huán)境創(chuàng)建項目LCCWIN32開發(fā)環(huán)境主界面,3LCC開發(fā)環(huán)境介紹,31創(chuàng)建一個LCCWIN32工程或項目過程,,3LCC開發(fā)環(huán)境介紹,,31創(chuàng)建一個LCCWIN32工程或項目過程,,3LCC開發(fā)環(huán)境介紹,31創(chuàng)建一個LCCWIN32工程或項目過程,,3LCC開發(fā)環(huán)境介紹,31創(chuàng)建一個LCCWIN32工程或項目過程,3LCC開發(fā)環(huán)境介紹,,32LCC開發(fā)環(huán)境的介紹33LCC的使用,,4VISUALC60開發(fā)環(huán)境介紹,41使用VISUALC60新建項目選擇“WIN32CONSOLEAPPLICATION”,輸入工程名稱,選擇保存的位置,,4VISUALC60開發(fā)環(huán)境介紹,選擇默認選項,單擊“完成”按鈕,,,4VISUALC60開發(fā)環(huán)境介紹,,單擊“確定”按鈕,,,4VISUALC60開發(fā)環(huán)境介紹,主界面,4VISUALC60開發(fā)環(huán)境介紹,42使用VISUALC60新建源程序文件,(1)單擊【FILEVIEW】標簽,將“TEST”前的“”將其展開,在“SOURCEFILES”上單擊右鍵,選擇【添加文件到目錄】命令準備在項目中添加一個C程序文件,4VISUALC60開發(fā)環(huán)境介紹,輸入文件名,單擊“確定”按鈕,,,,4VISUALC60開發(fā)環(huán)境介紹,43使用VISUALC60開發(fā)環(huán)境,,5本章小結(jié),本章主要介紹了C語言的4種最常用的開發(fā)工具TURBOC20、WINTC、LCC和VISUALC60。TURBOC20是初學者首選的開發(fā)環(huán)境,它也是以前計算機等級考試使用的環(huán)境。WINTC和LCC的界面簡單,是運行于WINDOWS操作系統(tǒng)下的開發(fā)工具。VISUALC60是一款商業(yè)化的軟件,具有功能強大、專業(yè)性強、兼容C語言系列的各種開發(fā)工具,支持C語言、C語言、SDK和MFC開發(fā)?,F(xiàn)在的計算機等級考試C語言上機環(huán)境都采用了VISUALC60。,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 28
大?。?0.73(MB)
子文件數(shù):
-
簡介:34匯編語言程序設計基礎,341程序設計語言概述342匯編語言程序設計的特點及偽指令343單片機匯編語言程序設計3431順序結(jié)構(gòu)程序設計3432分支程序設計3433散轉(zhuǎn)程序設計3435查表程序設計3436子程序設計344單片機匯編語言程序設計舉例,341程序設計語言概述3411匯編語言的優(yōu)點3412匯編語言程序設計的過程3413程序質(zhì)量,342匯編語言程序設計的特點及偽指令,3421匯編語言程序的特點,標號操作碼操作數(shù)1,操作數(shù)2,操作數(shù)3;注釋方括符表示可選項。標號代表指令所在地址,18個字母/數(shù)字,字母開頭,“”結(jié)尾。操作碼就是指令功能助記符,指令實體。操作數(shù)是指令操作的對象。分為目的操作數(shù)和源操作數(shù)。注釋是對該指令的解釋和說明,是指令的非執(zhí)行部分,可省略,前面必須加“”。,3422偽指令匯編語言源程序是由匯編語句組成的,一般情況下,匯編語言語句可分為指令性語句和指示性語句。指令性語句(即匯編指令)指令性語句是進行匯編語言程序設計的可執(zhí)行語句,每條指令都產(chǎn)生相應的機器語言的目標代碼。源程序的主要功能是由指令性語句去完成的。指示性語句(即偽指令),偽指令偽指令是控制匯編過程的一些命令,是程序員通知匯編程序在進行匯編時的一些指示。沒有對應的機器碼,不產(chǎn)生目標代碼程序,不影響程序的執(zhí)行。1偽指令主要用來指定程序或數(shù)據(jù)的起始位置,給出一些連續(xù)存放數(shù)據(jù)的地址或為中間運算結(jié)果保留一部分存儲空間以及表示源程序結(jié)束等等。2偽指令還可用來對符號﹑標號賦值。不同版本匯編語言,偽指令可能有所不同,但基本用法是相似的。,1設置目標程序起始地址偽指令ORG格式標號ORG地址功能規(guī)定其后面的目標程序或數(shù)據(jù)塊的起始地址。偽指令ORG放在一段源程序主程序、子程序或數(shù)據(jù)塊的前面,說明緊跟在其后的程序段或數(shù)據(jù)塊的起始地址就是ORG后面給出的地址。例如ORG1000HSTARTMOVA,34H,2結(jié)束匯編偽指令END格式標號END功能END是匯編語言源程序的結(jié)束標志,用于終止源程序的匯編工作。在END以后所寫的指令,匯編程序都不予處理。一個源程序只能有一個END命令。,3定義字節(jié)偽指令DB格式標號DB字節(jié)常數(shù)或字符功能從指定地址單元開始存放若干個字節(jié)的數(shù)據(jù)或字符。字符若用引號括起來則表示ASCII碼。例如ORG2000HTAB1DB30H,8AH,7FH,73DB5,A,‘YES,4定義字偽指令DW格式標號DW16位數(shù)據(jù)表功能DW偽指令告訴匯編程序從指定的地址單元開始定義若干個16位數(shù)據(jù)。對于MCS51單片機系統(tǒng),16位數(shù)據(jù)的高8位存入低地址單元,低8位存入高地址單元。例如ORG1500HTAB2DW1234H,80H,AB匯編以后,1500H12H,1501H34H,1502H00H,1503H80H,1504H41H,1505H42H,5賦值偽指令EQU格式字符名稱EQU賦值項功能將EQU右邊的值賦予EQU左面用戶定義的符號。賦值項可以是常數(shù)、地址、標號或表達式。例如TEMPEQUR2PA8155EQU8001H匯編后TEMP對應寄存器R2,PA8155值為8001HEQU定義的符號必須先定義后使用,且在同一個源程序中,同一個標號只能賦值一次,該語句通常放在程序開頭。,6位地址定義偽指令BIT格式字符名稱BIT位地址功能將位地址賦予字符名稱。經(jīng)賦值后可用字符名稱代替位地址。其中,位地址可以是絕對地址,也可以是符號地址(即位符號名稱)。例如PLGBITF0AIBITP10經(jīng)以上偽指令定義后,在程序中就可以把FLG和AI作為位地址來使用。,補充7定義標號值偽指令DL格式字符名稱DL表達式功能DL命令將數(shù)據(jù)地址或代碼地址賦予規(guī)定的字符名稱。例如COUNTDL1000HCOUNTDLCOUNT1DL偽指令常用來定義數(shù)據(jù)地址。,補充8定義存儲空間偽指令DS格式標號DS表達式功能從指定地址開始,保留若干個字節(jié)的內(nèi)存空間,供程序運行使用。保留的字節(jié)單元數(shù)由表達式的值決定。例如ORG2000HDS05HDB10H,20H匯編后從2000H開始,預留5個字節(jié)的內(nèi)存單元,然后從2005H開始,按照下一條DB指令賦值,即2005H10H,2006H20H。對MCS51來說,DB、DW、DS只能對程序存儲器使用。,補充9數(shù)據(jù)地址賦值偽指令DATA格式字符名稱DATA表達式功能將表達式指定的數(shù)據(jù)地址賦予規(guī)定的字符名稱。DATA與EQU偽指令的功能類似,但也有區(qū)別DATA定義的字符名稱可以先使用后定義,EQU定義的字符名稱必須先定義后使用。DATA偽指令可以放在源程序的開頭或結(jié)尾,也可以放在程序的其他位置,EQU偽指令通常放在程序開頭。,343單片機匯編語言程序設計,,3431順序結(jié)構(gòu)程序設計順序結(jié)構(gòu),是最簡單、最基本的程序結(jié)構(gòu),其特點是按指令的排列順序一條條地執(zhí)行,直到全部指令執(zhí)行完畢為止。往往用來解決一些簡單的算術及邏輯運算問題,主要用數(shù)據(jù)傳送指令和數(shù)據(jù)運算指令實現(xiàn)。,【例1】設有16位二進制數(shù)存放在R0,R1中(R0存放高位,R1存放低位),試編寫實現(xiàn)16位二進制數(shù)的“取反加1”操作的程序。程序如下ORG1000HMOVA,R1CPLAADDA,01HMOVR1,AMOVA,R0CPLAADDCA,00HMOVR0,AEND,3432分支程序設計,分支結(jié)構(gòu)程序可根據(jù)程序要求無條件或有條件地改變程序執(zhí)行的順序,選擇新的程序流向。編寫分支結(jié)構(gòu)程序主要在于正確使用轉(zhuǎn)移指令,即無條件轉(zhuǎn)移和條件轉(zhuǎn)移指令。根據(jù)分支多少,將分支程序結(jié)構(gòu)分為單分支即兩分支結(jié)構(gòu)和多分支結(jié)構(gòu)。單分支常用條件轉(zhuǎn)移指令實現(xiàn)。多分支,在MCS51中,利用“JMPADPTR”指令可以實現(xiàn)(可實現(xiàn)256分支),為菜單程序設計提供了方便。,圖341分支結(jié)構(gòu)框圖A單分支流程B多分支流程,【例2】設A存放在累加器A中,B存放在寄存器B中,要求按下式計算Y值,并將結(jié)果Y存于累加器A中,試編寫程序。AB(A≥0)YAB(A0)ORG1000HBRMPNAJBACC7,PLUSCLRCSUBBA,BSJMPBRDONEPLUSADDA,BBRDONESJMPBRDONEEND,3433散轉(zhuǎn)程序設計,散轉(zhuǎn)程序是分支程序的一種,它可根據(jù)運算結(jié)果或輸入數(shù)據(jù)將程序轉(zhuǎn)入不同的分支。MCS51指令系統(tǒng)中有一條跳轉(zhuǎn)指令JMPADPTR,用它可以很容易地實現(xiàn)散轉(zhuǎn)功能。該指令把累加器的8位無符號數(shù)與16位數(shù)據(jù)指針的內(nèi)容相加,并把相加的結(jié)果裝入程序計數(shù)器PC,控制程序轉(zhuǎn)向目標地址去執(zhí)行。此指令的特點在于,轉(zhuǎn)移的目標地址不是在編程或匯編時預先確定的,而是在程序運行過程中動態(tài)地確定的。目標地址是以數(shù)據(jù)指針DPTR的內(nèi)容為起始的256字節(jié)范圍內(nèi)的指定地址,即由DPTR的內(nèi)容決定分支轉(zhuǎn)移程序的首地址,由累加器A的內(nèi)容來動態(tài)選擇其中的某一個分支轉(zhuǎn)移程序。,在程序設計過程中,常常遇到反復執(zhí)行某一段程序的情況,這種情況下采用循環(huán)程序結(jié)構(gòu),可以縮短程序代碼的長度,提高程序的質(zhì)量和運行效率。循環(huán)程序一般由四個主要部分組成初始化部分為循環(huán)程序做準備,如規(guī)定循環(huán)次數(shù)、給各變量和地址指針預置初值。處理部分為反復執(zhí)行的程序段,是循環(huán)程序的實體,也是循環(huán)程序的主體。循環(huán)控制部分這部分的作用是修改循環(huán)變量和控制變量,并判斷循環(huán)是否結(jié)束,符合結(jié)束條件時,跳出循環(huán)。結(jié)束部分這部分主要是對循環(huán)程序的結(jié)果進行分析、處理和存放。,3434循環(huán)程序設計,循環(huán)程序的這四個部分,流程有兩種情況,如圖42所示。,圖342循環(huán)結(jié)構(gòu)程序流程圖,【例3】51單片機晶振為6MHZ,分析下列循環(huán)進行了多少次下面程序運行共需要多長時間MOVR7,00H1機器周期RYCLNOP1機器周期NOP1機器周期NOP1機器周期DJNZR7,RYCL2機器周期RET2機器周期程序運行共需要機器周期15256212831機器周期12/6M2US12832US2566US,3435查表程序設計,查表程序是一種常用程序,它廣泛使用于LED顯示控制、打印機打印控制、數(shù)據(jù)補償、數(shù)值計算、轉(zhuǎn)換等功能程序中,這類程序具有簡單、執(zhí)行速度快等特點。查表,首先要求建立一個表格。表格數(shù)據(jù)一般應存放在程序存儲器中,在編程時可以很方便地通過DB或DW偽指令實現(xiàn)。然后,根據(jù)自變量X(可以為規(guī)則變量或非規(guī)則變量),通過查表指令,在表格中查找與其相對應的值Y(可以是單字節(jié)、多字節(jié)等情況)。MCS–51具有很強的查表功能,其查表指令有如下兩條MOVCA,APCMOVCA,ADPTR,【例3】設有一個巡回檢測報警裝置,需對16路輸入進行控制,每路有一個額定的最大值,是雙字節(jié)數(shù)。當檢測量大于該路對應的最大值時,就越限報警。假設R2為保存檢測路數(shù)的寄存器,將其對應的最大額定值存放于31H和32H單元中。,查找最大額定值的程序如下FMAXMOVA,R2ADDA,R2表中一個額定值為2個字節(jié)MOV31H,AMOVDPTR,#TAB表首址MOVCA,ADPTR查表讀取第一個字節(jié),XCHA,31H第一個字節(jié)內(nèi)容存入31HINCDPTRMOVCA,ADPTR查表讀取第二個字節(jié)MOV32H,A第二字節(jié)的內(nèi)容存入32HORG2000HTABDW1230H,1450H,1020H,DW2230H,2440H,1356H,,3436子程序設計,子程序的概念在程序設計的實踐中,經(jīng)常會遇到在不同的程序中或在同一程序不同的地方,要求實現(xiàn)某些相同的操作,為了簡化程序設計、縮短程序設計的周期、節(jié)省內(nèi)存空間,通常把這些基本操作編寫為獨立的、標準化的通用程序段,以供不同程序或同一程序反復調(diào)用,這些獨立的程序段稱為子程序。子程序調(diào)用主程序?qū)ψ映绦虻恼{(diào)用是通過調(diào)用指令ACALL或LCALL實現(xiàn)的。子程序的首址必須有地址標號以供調(diào)用指令尋址。子程序執(zhí)行結(jié)束后必須返回主程序,返回指令為RET。,參數(shù)傳遞為使子程序具有通用性,子程序處理過程中用到的數(shù)據(jù)都由主程序提供,主程序在調(diào)用子程序時必須將具體的數(shù)據(jù)傳遞給子程序,這些數(shù)據(jù)稱為入口參數(shù)。另一方面,子程序的某些執(zhí)行結(jié)果也必須送回到主程序,供主程序使用,這些結(jié)果數(shù)據(jù)稱為出口參數(shù)。參數(shù)傳遞的方法通常有寄存器或累加器傳遞寄存器間址傳遞堆棧傳遞,MCS51程序總體結(jié)構(gòu)MCS51匯編語言源程序一般由主程序、完成特定操作的子程序可能不止一個及相應功能的中斷服務程序等部分組成,結(jié)構(gòu)如下;程序頭即定義變量和等值符號SCLBITP12;定義SCL位變量BYTECONDATA30H;定義字節(jié)變量BYTECON,344單片機匯編語言程序設計舉例,補充,;程序區(qū)ORG0000HLJMPMAIN;中斷矢量區(qū)ORG0003HLJMPINT0;主程序ORGYYYY其中YYYY就是主程序代碼存放區(qū)的首地址MAINMOVSP,5FH;初始化有關寄存器,如設置堆棧指針SP、選擇;工作寄存器組、初始化中斷控制寄存器等主程序?qū)嶓w,具體指令由程序功能決定LCALLSUB1調(diào)用子程序1,其中SUB1為子程序名,;子程序結(jié)構(gòu)ORGZZZZ;其中ZZZZ就是子程序代碼存放區(qū)的首地址,;可以不用ORG指令,直接將子程序存放主程序后SUB1PUSHPSWPUSHACC;通過PUSH指令保護子程序中用到的有關寄存器,;如ACC、PSW等,即保護現(xiàn)場。;子程序?qū)嶓w,具體指令由程序功能決定POPACCPOPPSW;恢復現(xiàn)場RET;子程序最后一條指令,使子程序指令運行結(jié)束;后,返回主程序斷點,;中斷服務程序結(jié)構(gòu)ORGKKKK;其中KKKK就是中斷程序代碼存放區(qū)的首地址PUSHPSWPUSHACC;保護現(xiàn)場。;中斷服務程序?qū)嶓w,具體指令由程序功能決定POPACCPOPPSW;恢復現(xiàn)場CLRTI;清除中斷標志在MCS51中,對于電平觸發(fā)的;外中斷INT0和INT1、串行接收及發(fā)送中斷RI、;TI等,不自動清除,需要通過CLR指令清除。RETI;中斷服務程序最后一條指令,返回主程序斷點;匯編結(jié)束END,例定時程序設計在單片機的控制應用中,常有定時的需要,如定時中斷、定時檢測和定時掃描等。定時功能除了可以使用定時器/計數(shù)器實現(xiàn)之外,還可以使用軟件定時程序來完成。定時程序是典型的循環(huán)程序,它可以通過執(zhí)行一個具有固定延遲時間的循環(huán)體來實現(xiàn)延時。利用單循環(huán)實現(xiàn)短定時DLMOVR5,TIMELOOPNOPNOPDJNZR5,LOOPRET設晶振頻率為6MHZ,則這個程序的最長定時時間為2568US,利用多重循環(huán)實現(xiàn)較長時間定時多重循環(huán),即在一個循環(huán)體中又包含了其它的循環(huán),是實現(xiàn)延時程序的常用方法。【例2】設晶振頻率為12MHZ,設計延遲時間為100MS的子程序。使用“DJNZ”指令實現(xiàn)延遲,晶振頻率為12MHZ,則一個機器周期為1US,執(zhí)行一條DJNZRN,REL的指令的時間為兩個機器周期即2ΜS。即使指定寄存器或存儲單元初值為FFH,減到0的延遲時間也只有2562ΜS,遠小于所需的延遲時間,因此需要雙循環(huán)結(jié)構(gòu)。對于雙循環(huán)結(jié)構(gòu),在知道系統(tǒng)的晶振頻率之后,延時時間主要與兩個因素有關1)內(nèi)循環(huán)中指令的執(zhí)行時間;2)外循環(huán)時間常數(shù)(內(nèi)循環(huán)的循環(huán)次數(shù))的設置。,延遲100MS子程序子程序名稱DELAY100DELAY100PUSHPSWCLRRS0SETBRS1MOVR7,0C7HLOOP1MOVR6,0FAHLOOP2DJNZR6,LOOP2DJNZ指令執(zhí)行時間為2個機器周期,而R6初值;為FAH即250,則R6減到0,需500US。DJNZR7,LOOP1重裝R6初值指令及“DJNZR7,LOOP1”;執(zhí)行時間為3ΜS,則需要進行199次,;因此R7初值設為C7HPOPPSWRET,THANKYOUFORYOURATTENSION,作業(yè),P87頁習題15,19,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 36
大?。?0.51(MB)
子文件數(shù):
-
簡介:第五章語言的書寫符號系統(tǒng)文字,第一節(jié)文字和語言第二節(jié)文字的起源和發(fā)展第三節(jié)文字創(chuàng)制和改革,第一節(jié)文字和語言,一、文字的性質(zhì)二、文字和語言的關系,一、文字的性質(zhì),1文字的內(nèi)涵文字是記錄語言的書寫符號系統(tǒng)2文字的工具性、體系性和保守性A文字符號是用來書寫某一種語言單位的,是一種工具。B文字是形音義結(jié)合的系統(tǒng)。文字是字符構(gòu)成的系統(tǒng)。C文字具有穩(wěn)定性、保守性。,文字是在語言的基礎上產(chǎn)生的。(1)語言對文字的影響。(2)文字對語言的影響。A文字幫助語言克服了時間和空間的局限性。B文字的類型會影響語言之間的相互影響。,二、文字和語言的關系,一、文字的起源和發(fā)展二、文字的類型,第二節(jié)文字的起源和發(fā)展,一、文字的起源和發(fā)展,1文字起源于圖畫、契刻。2文字系統(tǒng)的形成要經(jīng)歷相當長的歷史過程。3世界上最古老的文字。,二、文字的類型,(1)自源文字和他源文字(2)詞語文字、音節(jié)文字和音位文字(3)表音文字和意音文字(4)漢字的類型,,(1)自源文字和他源文字A文字在發(fā)生、發(fā)展過程中沒有受到其它文字影響而獨立發(fā)生、發(fā)展的,稱為自源文字,如埃及的圣書字、中國的漢字等。B通過借鑒或改造其它語言的文字作為自己語言的文字的,稱為他源文字,也叫借源文字。如日文和朝鮮文。,(2)詞語文字、音節(jié)文字和音位文字A選擇詞語作為制定字符的依據(jù),全部或絕大部分字符都跟語言中的詞語相聯(lián)系,這樣的文字稱為詞語文字。B表音文字可分為音節(jié)文字和音位文字。以音節(jié)為最小書寫單位,一個符號表示一個音節(jié)的稱為音節(jié)文字,如日語;以音位為書寫單位,一個符號表示一個音位的稱為音位文字,如英文、法文、德文、阿拉伯文等。,,(3)表音文字和意音文字A標記語言聲音的文字叫做表音文字,它利用一套字母來拼寫語言中的語詞,因此也叫拼音文字。B表意文字則通過象征性符號的組合來表達詞或語素的意義,其特點是字量大、筆劃復雜、字形有表示意思的結(jié)構(gòu)成分,如漢字,古埃及的圣體字等。,(4)漢字的類型文字的類型可以根據(jù)不同標準來劃分A根據(jù)字符所聯(lián)系的語言單位標準來分類,文字可以分為詞語文字、音節(jié)文字、音位文字三大類。B根據(jù)字符跟語言單位的語義還是語音相聯(lián)系的標準來分類,可以分為表意文字、表音文字和意音文字。,第三節(jié)文字創(chuàng)制和改革,一、文字的創(chuàng)制1文字創(chuàng)制的內(nèi)涵。文字的創(chuàng)制指現(xiàn)代社會里,政府或語言學家為沒有文字的民族創(chuàng)制文字。2文字創(chuàng)制中應注意的問題。A區(qū)分民族B分析語音系統(tǒng)C拼寫文字二、文字改革1文字改革的類型。A整個文字類型和字符類型不變,只是對正字法的類型進行調(diào)整,如漢字的繁體到簡體。,B整個文字類型不變,字符類型變化,如土耳其文字變阿拉伯字母拼寫為拉丁字母拼寫,但還是表音文字。C文字類型和字符類型都發(fā)生變化,如越南文字由意音文字變?yōu)楸硪粑淖?,并改用拉丁字母拼寫?正確對待文字改革問題。,本章重點,第一節(jié)文字和語言重要概念文字、字符、口語、書面語重點掌握文字的性質(zhì)、文字和語言的關系、口語和書面語,第二節(jié)文字的起源和發(fā)展重要概念自源文字、他源文字、詞語文字、音節(jié)文字、音位文字、表音文字、意音文字、六書重點掌握世界上最古老的文字、文字的類型、漢字的類型,第三節(jié)文字創(chuàng)制和改革重要概念文字創(chuàng)制、文字改革重點掌握文字創(chuàng)制的內(nèi)涵、文字改革的類型、正確對待文字改革的問題,
下載積分: 6 賞幣
上傳時間:2024-01-05
頁數(shù): 16
大小: 0.09(MB)
子文件數(shù):