分析文法是否是LR(0)文法,顯示分析表。對輸入的語句給出語法分析樹
上傳時間: 2013-12-29
上傳用戶:2404
FANUC LR MATE 200iC機器人機構(gòu)部操作說明手冊。
標簽: 機器人
上傳時間: 2022-07-08
上傳用戶:
隨著半導體工藝的飛速發(fā)展和芯片設(shè)計水平的不斷進步,ARM微處理器的性能得到大幅度地提高,同時其芯片的價格也在不斷下降,嵌入式系統(tǒng)以其獨有的優(yōu)勢,己經(jīng)廣泛地滲透到科學研究和日常生活的各個方面。 本文以ARM7 LPC2132處理器為核心,結(jié)合蓋革一彌勒計數(shù)管對Time-To-Count輻射測量方法進行研究。ARM結(jié)構(gòu)是基于精簡指令集計算機(RISC)原理而設(shè)計的,其指令集和相關(guān)的譯碼機制比復雜指令集計算機要簡單得多,使用一個小的、廉價的ARM微處理器就可實現(xiàn)很高的指令吞吐量和實時的中斷響應。基于ARM7TDMI-S核的LPC2132微處理器,其工作頻率可達到60MHz,這對于Time-To-Count技術(shù)是非常有利的,而且利用LPC2132芯片的定時/計數(shù)器引腳捕獲功能,可以直接讀取TC中的計數(shù)值,也就是說不再需要調(diào)用中斷函數(shù)讀取TC值,從而大大降低了計數(shù)前雜質(zhì)時間。本文是在我?guī)熜謪诬姷摹禩ime-To-Count測量方法初步研究》基礎(chǔ)上,使用了高速的ARM芯片,對基于MCS-51的Time-To-Count輻射測量系統(tǒng)進行了改進,進一步論證了采用高速ARM處理器芯片可以極大的提高G-M計數(shù)器的測量范圍與測量精度。 首先,討論了傳統(tǒng)的蓋革-彌勒計數(shù)管探測射線強度的方法,并指出傳統(tǒng)的脈沖測量方法的不足。然后討論了什么是Time-To-Count測量方法,對Time-To-Count測量方法的理論基礎(chǔ)進行分析。指出Time-To-Count方法與傳統(tǒng)的脈沖計數(shù)方法的區(qū)別,以及采用Time-To-Count方法進行輻射測量的可行性。 接著,詳細論述基于ARM7 LPC2132處理器的Time-To-Count輻射測量儀的原理、功能、特點以及輻射測量儀的各部分接口電路設(shè)計及相關(guān)程序的編制。 最后得出結(jié)論,通過高速32位ARM處理器的使用,Time-To-Count輻射測量儀的精度和量程均得到很大的提高,對于Y射線總量測量,使用了ARM處理器的Time-To-Count輻射測量儀的量程約為20 u R/h到1R/h,數(shù)據(jù)線性程度也比以前的Time-To-CotJnt輻射測量儀要好。所以在使用Time-To-Count方法進行的輻射測量時,如何減少雜質(zhì)時間以及如何提高計數(shù)前時間的測量精度,是決定Time-To-Count輻射測量儀性能的關(guān)鍵因素。實驗用三只相同型號的J33G-M計數(shù)管分別作為探測元件,在100U R/h到lR/h的輻射場中進行試驗.每個測量點測量5次取平均,得出隨著照射量率的增大,輻射強度R的測量值偏小且與輻射真實值之間的誤差也隨之增大。如果將測量誤差限定在10%的范圍內(nèi),則此儀器的量程范圍為20 u R/h至1R/h,量程跨度近六個數(shù)量級。而用J33型G-M計數(shù)管作常規(guī)的脈沖測量,量程范圍約為50 u R/h到5000 u R/h,充分體現(xiàn)了運用Time-To-Count方法測量輻射強度的優(yōu)越性,也從另一個角度反應了隨著計數(shù)前時間的逐漸減小,雜質(zhì)時間在其中的比重越來越大,對測量結(jié)果的影響也就越來越嚴重,盡可能的減小雜質(zhì)時間在Time-To-Count方法輻射測量特別是測量高強度輻射中是關(guān)鍵的。筆者用示波器測出此輻射儀器的雜質(zhì)時間約為6.5 u S,所以在計算定時器值的時候減去這個雜質(zhì)時間,可以增加計數(shù)前時間的精確度。通過實驗得出,在標定儀器的K值時,應該在照射量率較低的條件下行,而測得的計數(shù)前時間是否精確則需要在照射量率較高的條件下通過儀器標定來檢驗。這是因為在照射量率較低時,計數(shù)前時間較大,雜質(zhì)時間對測量結(jié)果的影響不明顯,數(shù)據(jù)線斜率較穩(wěn)定,適宜于確定標定系數(shù)K值,而在照射量率較高時,計數(shù)前時間很小,雜質(zhì)時間對測量結(jié)果的影響較大,可以明顯的在數(shù)據(jù)線上反映出來,從而可以很好的反應出儀器的性能與量程。實驗證明了Time-To-Count測量方法中最為關(guān)鍵的環(huán)節(jié)就是如何對計數(shù)前時間進行精確測量。經(jīng)過對大量實驗數(shù)據(jù)的分析,得到計數(shù)前時間中的雜質(zhì)時間可分為硬件雜質(zhì)時間和軟件雜質(zhì)時間,并以軟件雜質(zhì)時間為主,通過對程序進行合理優(yōu)化,軟件雜質(zhì)時間可以通過程序的改進而減少,甚至可以用數(shù)學補償?shù)姆椒▉淼窒瑥亩梢缘玫奖容^精確的計數(shù)前時間,以此得到較精確的輻射強度值。對于本輻射儀,用戶可以選擇不同的工作模式來進行測量,當輻射場較弱時,通常采用規(guī)定次數(shù)測量的方式,在輻射場較強時,應該選用定時測量的方式。因為,當輻射場較弱時,如果用規(guī)定次數(shù)測量的方式,會浪費很多時間來采集足夠的脈沖信號。當輻射場較強時,由于輻射粒子很多,產(chǎn)生脈沖的頻率就很高,規(guī)定次數(shù)的測量會加大測量誤差,當選用定時測量的方式時,由于時間的相對加長,所以記錄的粒子數(shù)就相對的增加,從而提高儀器的測量精度。通過調(diào)研國內(nèi)外先進核輻射測量儀器的發(fā)展現(xiàn)狀,了解到了目前最新的核輻射總量測量技術(shù)一Time-To-Count理論及其應用情況。論證了該新技術(shù)的理論原理,根據(jù)此原理,結(jié)合高速處理器ARM7 LPC2132,對以G-計數(shù)管為探測元件的Time-To-Count輻射測量儀進行設(shè)計。論文以實驗的方法論證了Time-To-Count原理測量核輻射方法的科學性,該輻射儀的量程和精度均優(yōu)于以前以脈沖計數(shù)為基礎(chǔ)理論的MCS-51核輻射測量儀。該輻射儀具有量程寬、精度高、易操作、用戶界面友好等優(yōu)點。用戶可以定期的對儀器的標定,來減小由于電子元件的老化對低儀器性能參數(shù)造成的影響,通過Time-To-Count測量方法的使用,可以極大拓寬G-M計數(shù)管的量程。就儀器中使用的J33型G-M計數(shù)管而言,G-M計數(shù)管廠家參考線性測量范圍約為50 u R/h到5000 u R/h,而用了Time-To-Count測量方法后,結(jié)合高速微處理器ARM7 LPC2132,此核輻射測量儀的量程為20 u R/h至1R/h。在允許的誤差范圍內(nèi),核輻射儀的量程比以前基于MCS-51的輻射儀提高了近200倍,而且精度也比傳統(tǒng)的脈沖計數(shù)方法要高,測量結(jié)果的線性程度也比傳統(tǒng)的方法要好。G-M計數(shù)管的使用壽命被大大延長。 綜上所述,本文取得了如下成果:對國內(nèi)外Time-To-Count方法的研究現(xiàn)狀進行分析,指出了Time-To-Count測量方法的基本原理,并對Time-T0-Count方法理論進行了分析,推導出了計數(shù)前時間和兩個相鄰輻射粒子時間間隔之間的關(guān)系,從數(shù)學的角度論證了Time-To-Count方法的科學性。詳細說明了基于ARM 7 LPC2132的Time-To-Count輻射測量儀的硬件設(shè)計、軟件編程的過程,通過高速微處理芯片LPC2132的使用,成功完成了對基于MCS-51單片機的Time-To-Count測量儀的改進。改進后的輻射儀器具有量程寬、精度高、易操作、用戶界面友好等特點。本論文根據(jù)實驗結(jié)果總結(jié)出了Time-To-Count技術(shù)中的幾點關(guān)鍵因素,如:處理器的頻率、計數(shù)前時間、雜質(zhì)時間、采樣次數(shù)和測量時間等,重點分析了雜質(zhì)時間的組成以及引入雜質(zhì)時間的主要因素等,對國內(nèi)核輻射測量儀的研究具有一定的指導意義。
標簽: TimeToCount ARM 輻射測量儀
上傳時間: 2013-06-24
上傳用戶:pinksun9
一.產(chǎn)品概述:首先感謝您選用我們的這款太陽能移動電源。該太陽能移動電源由國外名師設(shè)計,采用鋁合金外殼,外觀典雅莊重,性能穩(wěn)定可靠,跟市面上的同類產(chǎn)品相比,具有以下特點:·由國外MODELLABS擔綱外觀結(jié)構(gòu)設(shè)計,外觀典雅高貴。·真正能給蘋果設(shè)備IPOD,IPHONE充電的太陽能移動電源。·獨有的可拆卸更換電池,解決了太陽能移動電源因為電池問題導致整個產(chǎn)品提前報廢問題,真正體現(xiàn)了“以人為本”的設(shè)計思想。·采用低鐵超透光超薄鋼化玻璃封裝,透光率可達到95%以上,徹底解決了普通層壓板透光率不高及滴膠板隨著使用年限增加色澤變黃而導致光電轉(zhuǎn)換率下降的問題。·采用了當前光電轉(zhuǎn)換效率最高的優(yōu)質(zhì)單晶硅太陽能板,光電轉(zhuǎn)換效率高達17%,2W太陽能電池板,正常光照下可以產(chǎn)生超過300mA電流,4個小時左右能充滿內(nèi)置電池,使產(chǎn)品具有超強實用性。·美國進口的IC,CPU配合我們獨有的先進控制電路,使二次轉(zhuǎn)換效率(電儲存到鋰電池的效率)達到95%,遠勝市面上的同類產(chǎn)品,充電更快捷。·產(chǎn)品采用了雙重電壓保護、過流保護和溫度保護技術(shù),確保我們的產(chǎn)品不會對您的手機和數(shù)碼產(chǎn)品造成任何傷害·用途廣泛,可以為手機,MP3,MP4,PDA,PSP,DV家庭小型節(jié)能設(shè)備等產(chǎn)品提供電源。
上傳時間: 2013-10-11
上傳用戶:it男一枚
ARM指令集(2) 1.跳轉(zhuǎn)指令 在ARM中有兩種方式可以實現(xiàn)程序的跳轉(zhuǎn):一種是刀‘轉(zhuǎn)指令;另一種是直接向PC寄存器(R15)中寫入目標地址值。 通過直接向PC寄存器中寫入目標地址值可以實現(xiàn)在46B地址空間中任意跳轉(zhuǎn),這種跳轉(zhuǎn)指令又稱為長跳轉(zhuǎn)。如果在長跳轉(zhuǎn)指令之前使用MOV LR,PC等指令,則可以保存將來返回的地址值,這樣就實現(xiàn)了在46B地址空間中的子程序調(diào)用。 在ARM版本5及以上的體系中,實現(xiàn)了ARM指令集和Thumb指令集的混合使用。指令使用目標地址值的bit[0]來確定目標程序的類型。bit[0]的值為1時,目標程序為Thumb指令;bit[0]值為0時,目標程序為ARM指令。 在ARM版本5以前的體系中,傳送到PC寄存器中的目標地址值的低兩位bits[1∶0]被忽略,跳轉(zhuǎn)指令只能在ARM指令集中執(zhí)行,即程序不能從ARM狀態(tài)切換到Thumb狀態(tài)。非T系列ARM版本5體系不含Thumb指令,當程序試圖切換到Thumb狀態(tài)時,將產(chǎn)生未定義指令異常中斷。 ARM跳轉(zhuǎn)指令可以從當前指令向前或向后的32MB地址空間跳轉(zhuǎn)。這類跳轉(zhuǎn)指令有以下4種。
上傳時間: 2013-11-20
上傳用戶:妄想演繹師
arm指令集(1) ARM跳轉(zhuǎn)指令可以從當前指令向前或向后的32MB地址空間跳轉(zhuǎn)。這類跳轉(zhuǎn)指令有以下4種。 (1)B 跳4專指令 B〔條件) (地址) B指令屬于ARM指令集,是最簡單的分支指令。一旦遇到一個B指令,ARM處理器將立即跳轉(zhuǎn)到給定的地址,從那里繼續(xù)執(zhí)行。注意:存儲在分支指令中的實際值是相對當前R15的值的一個偏移量,而不是一個絕對地址。它的值由匯編器來計算,是24位有符號數(shù),左移兩位后有符號擴展為32位,表示的有效偏移位為26位(+/- 32 MB)。 (2)BL 帶返回的跳轉(zhuǎn)指令 BI,〔條件) (地址) BL指令也屬于ARM指令集,是另一個分支指令。就在分支之前,在寄存器R14中裝載上R15的內(nèi)容,因此可以重新裝載R14到R15中來返回到這個分支之后的那個指令處執(zhí)行,它是子例程的一個基本但強力的實現(xiàn)。 (3)BLX 帶返回和狀態(tài)切換的跳轉(zhuǎn)指令 BLX <地址> BLX指令有兩種格式,第1種格式的BLX指令記作BLX(1)。BLX(1)從ARM指令集跳轉(zhuǎn)到指令中指定的目標地址,并將程序狀態(tài)切換到Thumb狀態(tài),該指令同時將PC寄存器的內(nèi)容復制到LR寄存器中。 BLX(1)指令屬于無條件執(zhí)行的指令。 第2種格式的BLX指令記作BLX(2)。BLX(2)指令從ARM指令集跳轉(zhuǎn)到指令中指定的目標地址,目標地址的指令可以是ARM指令,也可以是Thumb指令。目標地址放在指令中的寄存器<dest>中,該地址的bit[0]值為0,目標地址處的指令類型由CPSR中的T位決定。該指令同時將PC寄存器的內(nèi)容復制到LR寄存器中。 (4)BX 帶狀態(tài)切換的跳轉(zhuǎn)指令 BX(條件) (dest) BX指令跳轉(zhuǎn)到指令中指定的目標地址,目標地址處的指令可以是ARM指令,也可以是Thumb指令。目標地址值為指令的值和0xFl·FFFFFF做“與”操作的結(jié)果,目標地址處的指令類型由寄存器決定。
上傳時間: 2014-12-27
上傳用戶:laomv123
ARM處理器的工作模式 ARM處理器狀態(tài) ARM微處理器的工作狀態(tài)一般有兩種,并可在兩種狀態(tài)之間切換:第一種為ARM狀態(tài),此時處理器執(zhí)行32位的字對齊的ARM指令;第二種為Thumb狀態(tài),此時處理器執(zhí)行16位的、半字對齊的Thumb指令。在程序的執(zhí)行過程中,微處理器可以隨時在兩種工作狀態(tài)之間切換,并且,處理器工作狀態(tài)的轉(zhuǎn)變并不影響處理器的工作模式和相應寄存器中的內(nèi)容。但ARM微處理器在開始執(zhí)行代碼時,應該處于ARM狀態(tài)。 ARM處理器狀態(tài) 進入Thumb狀態(tài):當操作數(shù)寄存器的狀態(tài)位(位0)為1時,可以采用執(zhí)行BX指令的方法,使微處理器從ARM狀態(tài)切換到Thumb狀態(tài)。此外,當處理器處于Thumb狀態(tài)時發(fā)生異常(如IRQ、FIQ、Undef、Abort、SWI等),則異常處理返回時,自動切換到Thumb狀態(tài)。 進入ARM狀態(tài):當操作數(shù)寄存器的狀態(tài)位為0時,執(zhí)行BX指令時可以使微處理器從Thumb狀態(tài)切換到ARM狀態(tài)。此外,在處理器進行異常處理時,把PC指針放入異常模式鏈接寄存器中,并從異常向量地址開始執(zhí)行程序,也可以使處理器切換到ARM狀態(tài)。ARM處理器模式 ARM微處理器支持7種運行模式,分別為:用戶模式(usr):ARM處理器正常的程序執(zhí)行狀態(tài)。快速中斷模式(fiq):用于高速數(shù)據(jù)傳輸或通道處理。外部中斷模式(irq):用于通用的中斷處理。管理模式(svc):操作系統(tǒng)使用的保護模式。數(shù)據(jù)訪問終止模式(abt):當數(shù)據(jù)或指令預取終止時進入該模式,可用于虛擬存儲及存儲保護。系統(tǒng)模式(sys):運行具有特權(quán)的操作系統(tǒng)任務。定義指令中止模式(und):當未定義的指令執(zhí)行時進入該模式,可用于支持硬件協(xié)處理器的軟件仿真。ARM處理器模式 ARM微處理器的運行模式可以通過軟件改變,也可以通過外部中斷或異常處理改變。大多數(shù)的應用程序運行在用戶模式下,當處理器運行在用戶模式下時,某些被保護的系統(tǒng)資源是不能被訪問的。 除用戶模式以外,其余的所有6種模式稱之為非用戶模式,或特權(quán)模式;其中除去用戶模式和系統(tǒng)模式以外的5種又稱為異常模式,常用于處理中斷或異常,以及需要訪問受保護的系統(tǒng)資源等情況。ARM寄存器 ARM處理器共有37個寄存器。其中包括:31個通用寄存器,包括程序計數(shù)器(PC)在內(nèi)。這些寄存器都是32位寄存器。以及6個32位狀態(tài)寄存器。 關(guān)于寄存器這里就不詳細介紹了,有興趣的人可以上網(wǎng)找找,很多這方面的資料。異常處理 當正常的程序執(zhí)行流程發(fā)生暫時的停止時,稱之為異常,例如處理一個外部的中斷請求。在處理異常之前,當前處理器的狀態(tài)必須保留,這樣當異常處理完成之后,當前程序可以繼續(xù)執(zhí)行。處理器允許多個異常同時發(fā)生,它們將會按固定的優(yōu)先級進行處理。當一個異常出現(xiàn)以后,ARM微處理器會執(zhí)行以下幾步操作:進入異常處理的基本步驟:將下一條指令的地址存入相應連接寄存器LR,以便程序在處理異常返回時能從正確的位置重新開始執(zhí)行。將CPSR復制到相應的SPSR中。根據(jù)異常類型,強制設(shè)置CPSR的運行模式位。強制PC從相關(guān)的異常向量地址取下一條指令執(zhí)行,從而跳轉(zhuǎn)到相應的異常處理程序處。如果異常發(fā)生時,處理器處于Thumb狀態(tài),則當異常向量地址加載入PC時,處理器自動切換到ARM狀態(tài)。 ARM微處理器對異常的響應過程用偽碼可以描述為: R14_ = Return LinkSPSR_= CPSRCPSR[4:0] = Exception Mode NumberCPSR[5] = 0 ;當運行于 ARM 工作狀態(tài)時If == Reset or FIQ then;當響應 FIQ 異常時,禁止新的 FIQ 異常CPSR[6] = 1PSR[7] = 1PC = Exception Vector Address異常處理完畢之后,ARM微處理器會執(zhí)行以下幾步操作從異常返回:將連接寄存器LR的值減去相應的偏移量后送到PC中。將SPSR復制回CPSR中。若在進入異常處理時設(shè)置了中斷禁止位,要在此清除。
上傳時間: 2013-11-15
上傳用戶:hanbeidang
第1 章 體系結(jié)構(gòu) ARM經(jīng)典300問與答第1 問:Q:請問在初始化CPU 堆棧的時候一開始在執(zhí)行mov r0, LR 這句指令時處理器是什么模式A:復位后的模式,即管理模式.第2 問:Q:請教:MOV 中的8 位圖立即數(shù),是怎么一回事 0xF0000001 是怎么來的A:是循環(huán)右移,就是一個0—255 之間的數(shù)左移或右移偶數(shù)位的來的,也就是這個數(shù)除以4一直除, 直到在0-255 的范圍內(nèi)它是整數(shù)就說明是可以的!A:8 位數(shù)(0-255)循環(huán)左移或循環(huán)右移偶數(shù)位得到的,F0000001 既是0x1F 循環(huán)右移4 位,符合規(guī)范,所以是正確的.這樣做是因為指令長度的限制,不可能把32 位立即數(shù)放在32 位的指令中.移位偶數(shù)也是這個原因.可以看一看ARM 體系結(jié)構(gòu)(ADS 自帶的英文文檔)的相關(guān)部分.第3 問:Q:請教:《ARM 微控制器基礎(chǔ)與實戰(zhàn)》2.2.1 節(jié)關(guān)于第2 個操作數(shù)的描述中有這么一段:#inmed_8r 常數(shù)表達式.該常數(shù)必須對應8 位位圖,即常熟是由一個8 位的常數(shù)循環(huán)移位偶數(shù)位得到.合法常量:0x3FC,0,0xF0000000,200,0xF0000001.非法常量:0x1FE,511,0xFFFF,0x1010,0xF0000010.常數(shù)表達式應用舉例:......LDR R0,[R1],#-4 ;讀取 R1 地址上的存儲器單元內(nèi)容,且 R1 = R1-4針對這一段,我的疑問:1. 即常數(shù)是由一個8 位的常數(shù)循環(huán)移位偶數(shù)位得到,這句話如何理解2. 該常數(shù)必須對應8 位位圖,既然是8 位位圖,那么取值為0-255,怎么0x3FC 這種超出255 的數(shù)是合法常量呢3. 所舉例子中,合法常量和非法常量是怎么區(qū)分的 如0x3FC 合法,而0x1FE 卻非法0xF0000000,0xF0000001 都合法,而0xF0000010 又變成了非法4. 對于匯編語句 LDR R0,[R1],#-4,是先將R1 的值減4 結(jié)果存入R1,然后讀取R1 所指單元的 值到R0,還是先讀取R1 到R0,然后再將R1 減4 結(jié)果存入R1A:提示,任何常數(shù)都可用底數(shù)*2 的n 次冪 來表示.1. ARM 結(jié)構(gòu)中,只有8bits 用來表示底數(shù),因此底數(shù)必須是8 位位圖.2. 8 位位圖循環(huán)之后得到常數(shù),并非只能是8 位.3. 0xF0000010 底數(shù)是9 位,不能表示.4. LDR R0, [R1], #-4 是后索引,即先讀,再減.可以看一看ARM 體系結(jié)構(gòu)對相關(guān)尋址方式的說明.
上傳時間: 2013-11-22
上傳用戶:1109003457
布爾語義分析,LR法
上傳時間: 2013-12-26
上傳用戶:hullow
Complete support for EBNF notation; Object-oriented parser design; C++ output; Deterministic bottom-up "shift-reduce" parsing; SLR(1), LALR(1) and LR(1) table construction methods; Automatic parse tree creation; Possibility to output parse tree in XML format; Verbose conflict diagnostics; Generation of tree traverse procedures
標簽: Object-oriented Deterministic Complete notation
上傳時間: 2014-11-29
上傳用戶:kr770906
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1