當前位置:首頁 » 服務存儲 » ccs數據存儲器操作實驗心得
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

ccs數據存儲器操作實驗心得

發布時間: 2022-05-24 01:02:35

Ⅰ 一、實驗目的 1、掌握CCS集成開發環境基本操作。 2、掌握匯編語言程序開發步驟。 3、掌握各種程序調試手段

odsp.com/bbs/forum.php?mod=viewthread&tid=6922&extra=&page=1" target="_blank">
各版本都有,需要先注冊。 推薦下,這是個不錯的dsp學習網站。
我這里有CCS3.1,500多M,無法發郵箱,有旺旺的話加我發給你。lsaqy

資料庫的管理 實驗過程或源代碼 實驗結論及心得

《Visual FoxPro資料庫基礎教程實踐與題解》是《Visual FoxPro資料庫基礎教程》配套教材。全書包括4部分內容:第1部分為《Visual FoxPro資料庫基礎教程》的習題與參考答案;第2部分為VisualFoxPro8.0的安裝、配置和課程本身的上機實驗安排,介紹了指導學生上機實驗時常見調試程序的基本操作,並根據教材內容提供了10個配套實驗;第3部分為VisualFoxPro8.0資料庫實訓指導及為初學者提供的3個典型的實踐案例;第4部分為6套模擬試題和參考答案,其中包括2套上機操作試題及參考答案。《Visual FoxPro資料庫基礎教程實踐與題解》結構合理、內容新穎、深度適宜、實用性強,不僅可以作為《Visual FoxPro資料庫基礎教程》的參考書,也可以作為其他Visual FoxPro資料庫教材的參考書。
《Visual FoxPro資料庫基礎教程實踐與題解》適合作為高等院校本科、專科學生學習Visual FoxPro資料庫課程的參考書,也可作為資料庫編程人員和信息管理等相關領域的技術工作者自學與參考用書。

Ⅲ Access資料庫實訓心得

持續一個月的資料庫實訓,讓我參與了軟體工程化的開發過程。其中體會最深的便是我們這個實訓網的幾個之最:一.項目最大:項目大是因為我們這個事業起點網站涉及到用戶眾多-高校,企業,學生,老師,專家,第二個原因是網站的功能多-用戶管理,網上實習,網上競賽,畢業實習設計,項目管理,人才庫管理,人才推薦,搜索 ... 項目大很容易造成系統范圍的泛濫,在我們的開發初期,由於需求不太明確,功能實現沒有重點,造成了需求范圍的擴大,給項目開發進度造成了嚴重的滯後性。然後我們召開了會議討論了這個問題,一致認同先把項目的基本功能實現,將網站的基本架構搭建起來,最後再在這個基礎上繼續增加我們網站的其他功能。因此在這個過程中,我深刻體會到了軟體工程初期階段的需求分析以及概要設計的重要性,這兩個文檔是指導我們後期開發的最重要的依據。 二.資料庫表最多:如此龐大的系統,就需要龐大的資料庫來支持,所以項目大的直接後果就是我們的資料庫表特別多,而且表與表之間的依賴關系也復雜,實體類之間的關系眾多,設計起來有一定的難度。資料庫的另外一個問題是-數據表的屬性,數據表屬性的設計完全是依賴於我們剛開始做的需求分析文檔,如果需求分析不完整的話,就會造成資料庫表屬性的缺失,從用戶的角度看,就會覺得你的系統提供的數據不夠全面,信息量小。 三.開發團隊最大:我們團隊一共有十四個人,這個對於我們的項目經理來說,是一個相當嚴峻的問題,畢竟十四個人的團隊相當於其他幾個小組加起來的人數總和,管理起來有相當大的難度。對於我們這些小組成員來說,由於溝通渠道太多,造成了我們項目中遇到問題,不知道去跟哪個小組成員溝通。為了解決這個問題,我們在團隊中又選出了三個小組長,小組成員遇到問題,先去咨詢小組長,然後小組長提供反饋信息。 四.項目各個模塊間藕合度高:網站涉及的各個功能模塊之間的聯系緊密,模塊之間的介面設計的好壞是項目最終集成成功與否的最重要因素。用戶管理這一個部分要為每個模塊提供介面,主要是用戶的編號以及用戶的類型等。每個頁面之間的鏈接也是其中重要的模塊介面。這個問題由於我們前期做好了充分的溝通以及按照概要設計中的介面說明去設計自己的模塊,所以後期的模塊整合沒有遇到什麼太大的不兼容性等問題。 接下來就談談我這一個月中的工作: 需求分析階段:需求分析階段我完成了網上競賽模塊的需求分析,其中遇到的主要問題是閱讀材料後發現網上實習,網上競賽,畢業設計指導這幾個模塊的功能是類似的,提取需求分析後不夠明確,經過幾次跟湯老師的交流後,確定了這幾個模塊之間的具體差別,網上競賽模塊的基本需求也大致確定了,網上競賽模塊的基本功能就是學生通過網站報名參加競賽,企業審核通過後,專家對作品進行評分,排名。 概要設計階段:在需求分析的基礎上,對網上競賽模塊進行了比較具體的概要設計,流程圖(IPO圖以及用例圖);這個階段的主要難點是對網上競賽業務流程的描述,如何實現學生報名,企業發布,專家評審的步驟操作,與及跟其他模塊對該模塊的限制。 資料庫設計階段:我負責整合初步資料庫設計說明書,分配組員按照各自的功能模塊的具體需求設計自己模塊需要的數據表,然後對這些數據表進行整合。在這個過程中遇到的問題就是資料庫實在是太大了,最後下來一共有30多張表,表與表之間的關系復雜,關聯性大,需要設置的外鍵較多,很難將所有的屬性欄位給提取出來,屬性的類型設置也是一個問題,採用數值型還是採用字元串性在資料庫設計中尤為重要,因為在後台搜索方面,數值型比較快捷,而在數據顯示方面,字元串型又有直接讀出不用轉換的好處。每個表的主鍵我們採用了用實體的編號去標記它,因為這樣實體間關聯起來會更加簡單。資料庫的設計關鍵是要對整個項目的整體的把握,並且要細化對每個實體類的具體屬性要求。 詳細設計階段:我覺得是最重要的一個方面,一個完整的詳細設計說明應該可以幫助程序員完成具體的實現,程序員可以不用考慮模塊之間的耦合問題,只需要將單一的功能按照邏輯順序編寫出來就可以了。網站整體構架搭好了,我們就可以在裡面填充自己的功能了。但是因為時間太倉促了,我們這個階段也就縮水了,帶來後面的問題就是後期代碼編寫的時候比較混亂,函數介面較難統,界面風格多樣化。這個階段,我的主要工作是跟隊友一起設計出了網上競賽模塊的學生,企業,管理員,高校以及專家的界面。 編碼階段:我們是用ASP.net開發的,主要任務就是從工具中選出你想要的控制項,然後在控制項響應函數中填充代碼,完成相應的事件響應。這里遇到的最大問題是頁面的排版問題,因為自己是第一次開發網站,造成了自己設計的界面風格單調,不太美觀,現在就盡量做到頁面的整齊。這個階段主要做的就是:寫代碼→編譯→調試→寫代碼。 這一個月中我學到了很多東西,技術方面就是學會了用ASP.Net編寫網站,最重要的是讓我經歷了軟體工程化的所有階段,讓我對整個軟體工程有了感性的認識,而且將大學三年所學到的知識進行了一次系統的串聯,更重要的是學會了如何跟項目團隊中的成員溝通問題,這是一個寶貴的實踐經驗。

Ⅳ 有關dsp晶元的菜鳥問題

我也不懂,以下是我搜集的,希望對你有幫助
DSP晶元,也稱數字信號處理器,是一種特別適合於進行數字信號處理運算的微處理器具,其主機應用是實時快速地實現各種數字信號處理演算法。根據數字信號處理的要求,DSP晶元一般具有如下主要特點:

(1)在一個指令周期內可完成一次乘法和一次加法;
(2)程序和數據空間分開,可以同時訪問指令和數據;
(3)片內具有快速RAM,通常可通過獨立的數據匯流排在兩塊中同時訪問;
(4)具有低開銷或無開銷循環及跳轉的硬體支持;
(5)快速的中斷處理和硬體I/O支持;
(6)具有在單周期內操作的多個硬體地址產生器;
(7)可以並行執行多個操作;
(8)支持流水線操作,使取指、解碼和執行等操作可以重疊執行。

當然,與通用微處理器相比,DSP晶元的其他通用功能相對較弱些。

單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。
單片機的應用領域 :
1. 單片機在智能儀器儀表中的應用;
2. 單片機在工業測控中的應用;
3. 單片機在計算機網路和通訊技術中的應用;
4. 單片機在日常生活及家電中的應用;
5. 單片機在辦公自動化方面。
DSP比單片機貴

你說的是其中的一部分知識,是DSP處理的信息的原理。
要向學習DSP的硬體開發,還要學習微機原理,由單片機系統的設計經驗最好。
還有就是DSP的開發環境,也就是CCS,要掌握常用的編程語言,有匯編語言和c語言的編程經驗最好.
首先要了解DSP的特點。
數字信號處理相對於模擬信號處理有很大的優越性,表現在精度高、靈活性大、可靠性好、易於大規模集成等方面。隨著人們對實時信號處理要求的不斷提高和大規模集成電路技術的迅速發展,數字信號處理技術也發生著日新月異的變革。實時數字信號處理技術的核心和標志是數字信號處理器。自第一個微處理器問世以來,微處理器技術水平得到了十分迅速的提高,而快速傅立葉交換等實用演算法的提出促進了專門實現數字信號處理的一類微處理器的分化和發展。數字信號處理有別於普通的科學計算與分析,它強調運算處理的實時性,因此DSP除了具備普通微處理器所強調的高速運算和控制功能外,針對實時數字信號處理,在處理器結構、指令系統、指令流程上具有許多新的特徵,其特點如下:
(1) 算術單元
具有硬體乘法器和多功能運算單元,硬體乘法器可以在單個指令周期內完成乘法操作,這是DSP區別於通用的微處理器的一個重要標志。多功能運算單元可以完成加減、邏輯、移位、數據傳送等操作。新一代的DSP內部甚至還包含多個並行的運算單元。以提高其處理能力。
針對濾波、相關、矩陣運算等需要大量乘和累加運算的特點,DSP的算術單元的乘法器和加法器,可以在一個時鍾周期內完成相乘、累加兩個運算。近年出現的某些DSP如ADSP2106X、DSP96000系列DSP可以同時進行乘、加、減運算,大大加快了FFT的蝶形運算速度。
(2) 匯流排結構
傳統的通用處理器採用統一的程序和數據空間、共享的程序和數據匯流排結構,即所謂的馮•諾依曼結構。DSP普遍採用了數據匯流排和程序匯流排分離的哈佛結構或者改進的哈佛結構,極大的提高了指令執行速度。片內的多套匯流排可以同時進行取指令和多個數據存取操作,許多DSP片內嵌有DMA控制器,配合片內多匯流排結構,使數據塊傳送速度大大提高。
如TI公司的C6000系列的DSP採用改進的哈佛結構,內部有一套256位寬度的程序匯流排、兩套32位的數據匯流排和一套32位的DMA匯流排。ADI公司的SHARC系列DSP採用超級哈佛結構(Super Harvared Architecture Computer),內部集成了三套匯流排,即程序存儲器匯流排、數據存儲器匯流排和輸入輸出匯流排。
(3) 專用定址單元
DSP面向數據密集型應用,伴隨著頻繁的數據訪問,數據地址的計算也需要大量時間。DSP內部配置了專用的定址單元,用於地址的修改和更新,它們可以在定址訪問前或訪問後自動修改內容,以指向下一個要訪問的地址。地址的修改和更新與算術單元並行工作,不需要額外的時間。
DSP的地址產生器支持直接定址、間接定址操作,大部分DSP還支持位反轉定址(用於FFT演算法)和循環定址(用於數字濾波演算法)。
(4) 片內存儲器
針對數字信號處理的數據密集運算的需要,DSP對程序和數據訪問的時間要求很高,為了減小指令和數據的傳送時間,許多DSP內部集成了高速程序存儲器和數據存儲器,以提高程序和數據的訪問存儲器的速度。
如TI公司的C6000系列的DSP內部集成有1M~7M位的程序和數據RAM;ADI公司的SHARC系列DSP內部集成有0.5M~2M位的程序和數據RAM,Tiger SHARC系列DSP內部集成有6M位的程序和數據RAM。
(5) 流水處理技術
DSP大多採用流水技術,即將一條指令的執行過程分解成取指、解碼、取數、執行等若干個階段,每個階段稱為一級流水。每條指令都由片內多個功能單元分別完成取指、解碼、取數、執行等操作,從而在不提高時鍾頻率的條件下減少了每條指令的執行時間。
(6) DSP與其它處理器的差別
數字信號處理器(DSP)、通用微處理器(MPU)、微控制器(MCU)三者的區別在於:DSP面向高性能、 重復性、數值運算密集型的實時處理;MPU大量應用於計算機;MCU則適用於以控制為主的處理過程。
DSP的運算速度比其它處理器要高得多,以FFT、相關為例,高性能DSP不僅處理速度是MPU的 4~10倍,而且可以連續不斷地完成數據的實時輸入/輸出。DSP結構相對單一,普遍採用匯編語言編程,其任務完成時間的可預測性相對於結構和指令復雜(超標量指令)、嚴重依賴於編譯系統的MPU強得多。以一個FIR濾波器實現為例,每輸入一個數據,對應每階濾波器系數需要一次乘、一次加、一次取指、二次取數,還需要專門的數據移動操作,DSP可以單周期完成乘加並行操作以及3~4次數據存取操作,而普通MPU完成同樣的操作至少需要4個指令周期。因此,在相同的指令周期和片內指令緩存條件下,DSP的運算送到可以超過MPU運算速度的4倍以上。
正是基於 DSP的這些優勢,在新推出的高性能通用微處理器(如Pentium、Power PC 604e等)片內已經融入了 DSP的功能,而以這種通用微處理器構成的計算機在網路通信、語音圖像處理、實時數據分析等方面的效率大大提高。

談一點學dsp的心得

因為課題需要,所以跟dsp打上了交道。大概從今年的8月份開始了解dsp。
那個時候中文書籍好像不是很多,就從網上下載ti的一些基本手冊和幾本大
黃皮書。因為以前基本沒接觸過,所以沒搞dsp之前覺得dsp好深奧好難,看
了一段時間書以後,開始使用ccs模擬一些程序。現在回頭看看ccs的軟模擬
一般只能模擬演算法的對錯,對於演算法的效率和其他一些性能的模擬基本沒有
什麼意義。可惜剛上手的時候我對這個不太清楚,就一直在ccs的軟模擬上
浪費了太多時間,總想通過ccs下的profiler觀測值來提高程序效率,結果
和後來在實際板子上跑出來的效果大相徑庭。大概到了國慶假期結束,開始
畫電路板,11月初拿到電路板開始漫長的調試過程。早聽人說過調硬體是一
件很苦惱又很無奈的事,因為好多問題沒有道理可講。第一塊板子是一塊小
的實驗板,製版焊接到調試一次通過,我就感覺調試硬體沒什麼特別難的。
結果後來的事實讓我體驗到了調試硬體的艱苦。第二塊板子也很快做完了,
結果上電後總進不去ccs。折騰了兩天,挨個管腳測,後來又和第一次做得
板子進行比較,發現一些中斷引腳沒有拉高,估計可能是這方面的原因。把
這些中斷管腳拉高以後,ccs順利進去了。後來又遇到了很多問題,每次都要
花上兩三天時間才能把問題找出來。到現在電路基本能跑起來,但還有些不太
穩定,原因還需要慢慢琢磨。
在調試過程中,能多找一些身邊的高手問就盡量找,這樣有兩個好處,一
能節省你的時間,二可以從高手那裡得到一些經驗。其次如果電路在調試過程
中老出問題,先檢查程序,確認程序沒有問題以後,在查硬體電路,這樣一個
順序效率比較高。再就是多留意一下bbs上的信息,有的信息可能現在對你
沒多少用處,但是可能在以後會用到。
還有一些具體經驗,以後有時間在總結了 *^_^*

學習DSP可能需要時間很長,不是短期可以解決的。
我的建議:
1。看網上資料;
2。用DSK來練手;
3。如果你連硬體經驗都沒有,那就得先練焊板子,哈哈
4。找人請教

我的唯一感受,如果你想學深些的話:
1.多看TI的pdf,多多宜善,權威而且全面
2.硬體上,多做項目,包括單片機的、一般電路的都行
3.軟體上,一般的編程不說了,編譯原理之類的對混合編程很有幫助的
4.其它東西,就是那些隨著DSP的出現才流行的東西,如DSP/BIOS,CPLD技術等

其實也沒什麼訣竅,我現在還是照著上面學,離目標還差得遠

Ⅳ c語言實驗報告心得

c語言實驗心得:
1、只有頻繁用到或對運算速度要求很高的變數才放到data區內,如for循環中的計數值。
2、其他不頻繁調用到和對運算速度要求不高的變數都放到xdata區。
3、常量放到code區,如字型檔、修正系數。
4、邏輯標志變數可以定義到bdata中。
在51系列晶元中有16個位元組位定址區bdata,其中可以定義8*16=128個邏輯變數。這樣可以大大降低內存佔用空間。定義方法是: bdata bit LedState;但位類型不能用在數組和結構體中。
5、data區內最好放局部變數。
因為局部變數的空間是可以覆蓋的(某個函數的局部變數空間在退出該函數是就釋放,由別的函數的局部變數覆蓋),可以提高內存利用率。當然靜態局部變數除外,其內存使用方式與全局變數相同;
6、確保程序中沒有未調用的函數。
在Keil C里遇到未調用函數,編譯器就將其認為可能是中斷函數。函數里用的局部變數的空間是不釋放,也就是同全局變數一樣處理。這一點Keil做得很愚蠢,但也沒辦法。
7、如果想節省data空間就必須用large模式。
將未定義內存位置的變數全放到xdata區。當然最好對所有變數都要指定內存類型。
8、使用指針時,要指定指針指向的內存類型。
在C51中未定義指向內存類型的通用指針佔用3個位元組;而指定指向data區的指針只佔1個位元組;指定指向xdata區的指針佔2個位元組。如指針p是指向data區,則應定義為: char data *p;。還可指定指針本身的存放內存類型,如:char data * xdata p;。其含義是指針p指向data區變數,而其本身存放在xdata區。

以前沒搞過C51,大學時代跟單片機老師的時候也是搗鼓下匯編,現在重新搞單片機,因為手頭資料不多,找到一些C51的程序,發現裡面有這些關鍵字,不甚明了,沒辦法只好找了下,發現如下描述:

從數據存儲類型來說,8051系列有片內、片外程序存儲器,片內、片外數據存儲器,片內程序存儲器還分直接定址區和間接定址類型,分別對應code、data、xdata、idata以及根據51系列特點而設定的pdata類型,使用不同的存儲器,將使程序執行效率不同,在編寫C51程序時,最好指定變數的存儲類型,這樣將有利於提高程序執行效率(此問題將在後面專門講述)。與ANSI-C稍有不同,它只分SAMLL、COMPACT、LARGE模式,各種不同的模式對應不同的實際硬體系統,也將有不同的編譯結果。

在51系列中data,idata,xdata,pdata的區別

data:固定指前面0x00-0x7f的128個RAM,可以用acc直接讀寫的,速度最快,生成的代碼也最小。

idata:固定指前面0x00-0xff的256個RAM,其中前128和data的128完全相同,只是因為訪問的方式不同。idata是用類似C中的指針方式訪問的。匯編中的語句為:mox ACC,@Rx.(不重要的補充:c中idata做指針式的訪問效果很好)

xdata:外部擴展RAM,一般指外部0x0000-0xffff空間,用DPTR訪問。

pdata:外部擴展RAM的低256個位元組,地址出現在A0-A7的上時讀寫,用movx ACC,@Rx讀寫。這個比較特殊,而且C51好象有對此BUG,建議少用。但也有他的優點,具體用法屬於中級問題,這里不提。

三、有關單片機ALE引腳的問題

"單片機不訪問外部鎖存器時ALE端有正脈沖信號輸出,此頻率約為時鍾振盪頻率的1/6.每當訪問

外部數據存儲器是,在兩個機器周期中ALE只出現一次,即丟失一個ALE脈沖."這句話是不是有毛

病.我覺得按這種說法,應該丟失3個ALE脈沖才對,我一直想不通是怎麼回事,希望大蝦們幫幫我.

小弟感激涕零.

答:

其他所有指令每6個機器周期發出一個ALE,而MOVX指令佔用12個機器周期只發出一個ALE

四、如何將一個INT型數據轉換成2個CHAR型數據?

經keil優化後,char1=int1/256,char2=int1%256或char1=int1>>8,char2=int1&0x00ff效率是一樣的。

五、在KEIL C51上模擬完了,怎樣生成HEX文件去燒寫??

右鍵點項目中Target 1,選第二個,在OUTPUT中選中CREAT HEX

六、typedef 和 #define 有何不同??

typedef 和 #define 有何不同》》》 如

typedef unsigned char UCHAR ;

#define unsigned char UCHAR ;

typedef命名一個新的數據類型,但實際上這個新的數據類型是已經存在的,只不過是定義了

一個新的名字.

#define只是一個標號的定義.

你舉的例子兩者沒有區別,但是#define還可以這樣用

#define MAX 100

#define FUN(x) 100-(x)

#define LABEL

等等,這些情況下是不能用typedef定義的

七、請問如何設定KELC51的模擬工作頻(時鍾)

用右鍵點擊左邊的的target 1,然後在xtal一欄輸入

八、不同模塊怎樣共享sbit變數,extern不行?

把SBIT定義單獨放到一個.H中,每個模塊都包含這個.h文件

九、C51中對於Px.x的訪問必須自己定義嗎?

是的。

如sbit P17 = 0x97;即可定義對P1.7的訪問

十、SWITCH( )語句中表達式不可以是位變數對嗎?

可以用位變數:

#include

#include

void main()

{

bit flag;

flag=0;

switch(flag)

{

case '0':{printf("0\n");break;}

case '1':{printf("1\n");break;}

default:break;

}

}

bit 變數只有兩種狀態,if 語句足夠啦,!!!

十一、const常數聲明占不佔內存???

const 只是用來定義「常量」,所佔用空間與你的定義有關,如:

const code cstStr[] = {"abc"};

佔用代碼空間;而如:

const char data cstStr[] = {"abc"};

當然佔用內存空間。

另外,#define 之定義似乎不佔用空間。

十二、philips的單片機P89C51RD+的擴展RAM在C51中如何使用?

試一試將auxr.1清0,然後在c語言中直接聲明xdata類型的變數

十三、BUG of Keil C51

程序中用如下語句:

const unsigned char strArr[] = {"數學"};

結果發現strArr[] 內容為 {0xCA,0xD1,0xA7},真奇怪!

凡是有0xfd,則會通通不見了,所以只能手工輸入內碼了,例如 uchar strArr[]=

{0xCA,0xfd,0xd1,0xa7}(用Ultraedit會很方便)。

十四、Keil C51中如何實現代碼優化?

菜單Project下Option for target "Simulator"的C51.

看到Code optimization了嗎?

十五、請教c的!和 ~ 符號有甚區別??

!是邏輯取反,~是按位取反。

十六、c51編程,讀埠,還要不要先輸出1?

我怎麼看到有的要,有的不要,請高手給講講,到底咋回事?謝了

要輸出1的,除非你能保證之前已經是1,而中間沒有輸出過其他值。

十七、當定時器1(T1)用於產生波特率時,P3^5還是否可以用作正常的I/O口呢?

p3.5完全可以當普通的io使用

十八、C51中 INT 轉換為 2個CHAR?

各位高手:

C51中 INT 轉換為 CHAR 如何轉換諸如:

X = LOW(Z);

Y = HIGH(Z);

答:

x=(char)z;

y=(char)(z>>8);

十九、如果我想使2EH的第7位置1的話,用位操作可以嗎?

現在對位操作指令我一些不太明白請各位多多指教:

如 SETB 07H 表示的是20H.7置1,對嗎?(我在一本書上是這么看到的)

那麼如果我想使2EH的第7位置1的話,象我舉的這個例子怎麼表示呢?謝謝!

SETB 77H

setb (2eh-20h)*8+7

20h-2fh每位元組有8個可位操作(00h-7fh),其它RAM不可位直接操作

二十、char *addr=0xc000 和char xdata *addr=0xc000有何區別?

char *addr=0xc000;

char xdata *addr=0xc000;

除了在內存中佔用的位元組不同外,還有別的區別嗎?

char *addr=0xc000; 是通用定義,指針變數 addr 可指向任何內存空間的值;

char xdata *addr=0xc000; 指定該指針變數只能指向 xdata 中的值;

後一種定義中該指針變數(addr)將少佔用一個存儲位元組。

uchar xdata *addr=0xc000;指針指向外ram;

如果:data uchar xdata *addr=0xc000;指針指向外ram但指針本身存在於內ram(data)



以此類推可以idata uchar xdata *addr=0xc000;pdata uchar xdata *addr=0xc000;

data uchar idata *addr=0xa0;.........

二十一、while(p1_0)的執行時間?

假設,P1_0為單片機P1口的第一腳,請問,

while(P1_0)

{

P1_0=0;

}

while(!P1_0)

{

P1_0=1;

}

以上代碼,在KEIL C中,需要多長時間,執行完。能具體說明while(P1_0)的執行時間嗎?

模擬運行看看就知道了,

我模擬了試了一下,約14個周期

二十二、怎樣編寫C51的watchdog程序?

各位大蝦,我用KEIL C51 編寫了一個帶外部開門狗的程序,可程序無法運行起來,經過查

找,發現程序在經過C51編譯後,在MAIN()函數的前部增加了一端初始化程序,等到進入

主程序設置開門狗時,開門狗已經時間到,將我的程序復位了,請問我怎樣才能修改這一端

初始花程序,使他一運行,就設置開門狗?

可以在startup.a51中加入看門狗刷新指令,當然用匯編,然後重新編譯startup.a51

,將他和你的程序連接即可。新的startup.a51會自動代替系統默認的啟動模塊。

二十三、keil C51 怎樣把修改的startup.a51 加到工程文件中

直接加入即可

注意不要改動?STACK,?C_START,?C_STARTUP等符號。startup.a51直接加入項目,不用修改也可。可在內面自己修改匯編的一些限制或堆棧指針。

二十四、關於波特率的設置

我在設定串口波特率時發現一個問題:在晶體震盪器為11.0592MHz時,若設9600BPS的話,

TH1=0XFD,TL1=0XFD,而要設19200BPS的話,TH1、TL1有否變化,如果沒變,為什麼?

如果變了,又為什麼?(因為我看書上倆個是一樣的),希望大家點撥。

答:

當電源控制寄存器(PCON)第BIT7(SMOD)為1時波特率加倍。

TH1和TL1的值不變.

二十五、如何在C中聲明保留這部分RAM區不被C使用?

我不知道在C源程序中怎麼控制這個,但在匯編程序中加入下面一段就行:

DSEG AT 20H

AA: DS 10

這樣C51就不會佔用20H--29H了

或者在c51里這樣定義:

uchar data asm_buff[10] _at_ 0x20;

二十六、問浮點運算問題

我在用C51時發現它對傳遞浮點參數的個數有限制,請問:

1)參數是以全局變數的形式傳遞的,請問以全局變數的形式傳遞的參數也有限制嗎?

2)這種傳遞浮點參數的限制有多少呢?

3)float*float的結果是float類型還是double類型?能否直接賦值給float類型的變數?

答:

由於KEIL C51的參數傳遞是通過R0-R7來傳遞的,所以會有限制。

不過KEIL提供了一個編譯參數,可以支持更多參數的傳遞。具體

的內容見KEIL的PDF文檔。

我建議你把多個要傳遞的參數定義到指針或結構體中去,傳遞參

數通過指針或結構進行,這樣好一些。

第3個問題回答是YES,你自己試試不就知道了。

二十七、如何在某一個地址定義ram

用_at_ 命令,這樣可以定位靈活一點的地址

uchar xdata dis_buff[16] _at_ 0x6020 ;//定位RAM

將dis_buff[16]定位在0x6020開始的16個位元組

二十八、keil c中,用什麼函數可以得到奇偶校驗位?

例如32位數據,將四個位元組相互異或後檢查P即可,若耽心P被改變,可用內嵌匯編。

#include

unsigned char parity(unsigned char x){

x^=x;

if(P)return(1);

else return(0);

}

unsigned char parity2(unsigned int x){

#pragma asm

mov a,r7

xrl ar6,a

#pragma endasm

if(P)return(1);

else return(0);

}

Ⅵ SPSS數據分析心得小結

SPSS數據分析心得小結_數據分析心得分享

學習數據分析之spss分析工具,可真的不是一般的功夫,真的要很認真和很細心才能做得好spss。下面我來和大家分享一下關於SPSS數據分析心得小結,希望大家從這數據分析心得分享中能得到一些啟示和指導。
心得1:拿到一份數據,或者在看到國內外某個學者的文章有想法而自己手裡的數據剛好符合這個想法可以做時,在整理好數據後不要急於建模。一定要對數據做缺失值處理、異常值處理。在數據預處理的基礎上再進一步建模,否則可能得到錯誤的結果。
心得2:承接心得1,數據預處理怎麼做。一是缺失值的處理。我個人有幾個看法:一是數據樣本量足夠大,在刪除缺失值樣本的情況下不影響估計總體情況,可考慮刪除缺失值;二是數據樣本量本身不大的情況下,可從以下兩點考慮:1是採用缺失值替換,SPSS中具體操作為「轉換」菜單下的「替換缺失值」功能,裡面有5種替換的方法。若數據樣本量不大,同質性比較強,可考慮總體均值替換方法,如數據來自不同的總體(如我做農戶調研不同村的數據),可考慮以一個小總體的均值作為替換(如我以一個村的均值替換缺失值)。2是根據原始問卷結合客觀實際自行推斷估計一個缺失值的樣本值,或者以一個類似家庭的值補充缺失值。
心得3:承接心得1,數據預處理第二點異常值的處理。我大概學了兩門統計軟體SPSS和Stata,SPSS用的時間久些,熟悉一下,Stata最近才學,不是太熟。關於這點我結合著來說。關於異常值的處理可分為兩點,一是怎麼判定一個值是異常值,二是怎麼去處理。判定異常值的方法我個人認為常用的有兩點:1是描述性統計分析,看均值、標准差和最大最小值。一般情況下,若標准差遠遠大於均值,可粗略判定數據存在異常值。2是通過做指標的箱圖判定,箱圖上加「*」的個案即為異常個案。發現了異常值,接下來說怎麼處理的問題。大概有三種方法:一是正偏態分布數據取對數處理。我做農戶微觀實證研究,很多時候得到的數據(如收入)都有很大的異常值,數據呈正偏態分布,這種我一般是取對數處理數據。若原始數據中還有0,取對數ln(0)沒意義,我就取ln(x+1)處理;二是樣本量足夠大刪除異常值樣本;三是從stata里學到的,對數據做結尾或者縮尾處理。這里的結尾處理其實就是同第二個方法,在樣本量足夠大的情況下刪除首尾1%-5%的樣本。縮尾指的是人為改變異常值大小。如有一組數據,均值為50,存在幾個異常值,都是500多(我這么說有點誇張,大概是這個意思),縮尾處理就是將這幾個500多的數據人為改為均值+3標准差左右數據大小,如改為100。總結而言,我個人認為做數據變換的方式比較好,數據變換後再做圖或描述性統計看數據分布情況,再剔除個別極端異常值。
心得4:如何做好回歸分析。經過多次實戰,以及看了N多視頻,上了N多課,看了N多專業的書。我個人總結做回歸的步奏如下:1是承接心得1-3,對數據進行預處理,替換缺失值和處理異常值;2是將單個自變數分別與因變數做散點圖和做回歸,判定其趨勢,並做好記錄(尤其是系數正負號,要特別記錄);3是自變數和因變數一起做相關系數,看各個變數相關關系強弱,為下一步檢驗多重共線性做准備;4是自變數多重共線性診斷。若變數存在多重共線性,可採用主成分回歸,即先將存在多重共線性的變數做主成分分析合並為1個變數,然後再將合並成的新變數和其餘自變數一起納入模型做回歸;5是做殘差圖,看殘差圖分布是否均勻(一般在+-3個單位之間均勻分布就比較好);6是報告相應結果。
心得5:看到論壇上有網友問為什麼他(她)老師不建議採用後向步進法處理變數多重共線性。記得張文彤老師說過他有個同學做過一個研究,即採用後向步進法剔除變數的方式去做回歸,得到的結果犯錯的幾率比較大。張老師也不建議用這個方法處理多重共線性。處理多重共線性比較好的方法是做主成分回歸。
心得6:有個朋友問我在報到回歸結果時用未標准化的回歸系數好,還是用標准化後的回歸系數好。我個人覺得這個問題仁者見仁智者見智,要看想表達什麼。具體而言,如果想表達在其它條件不變的情況下,自變數X每變化1個單位,因變數變化多少個單位,這種情況用未標准化回歸系數就好;如果想比較各個自變數對因變數影響的相對大小,即判斷相對而言,哪個變數對因變數影響更大。這時需要消除量綱的影響,看標准化後的回歸系數。
心得7:這是投稿一篇SSCI外審專家提出的意見。我做的是無序多分類logistic回歸模型。因變數分了5類,有一類個數比較多,達到300多,有1-2類個案比較少,只有30左右。專家提到了要做穩健性檢驗。這個用stata軟體編程加一個robust即可解決問題。不知道在SPSS裡面怎麼做。歡迎知道的朋友一起討論下。我個人認為這是一個好問題的。不做穩健性檢驗模型可能受一些極端值的影響,結果不穩定。可能本來顯著的變數剔除1-2個樣本後就變得不顯著了。所以做回歸分析穩健性檢驗也比較重要。
PS:如果有可能,我希望在後面的心得中附上實際操作的步奏圖和解釋的。看看有沒有人需要這個。不然可能說的一些東西需要的人能看明白,但還是不清楚怎麼做。希望和大家一起交流學習。

以上是小編為大家分享的關於SPSS數據分析心得小結的相關內容,更多信息可以關注環球青藤分享更多干貨

Ⅶ 誰能幫我寫一個實驗心得啊``套話就行`謝謝了`

http://www.exgods.com/cgy/attachments/month_0606/n200668125942.jpg
提示:保證PC機和Server的IP地址都屬於83網段,使在Server上添加另一網路的IP地址也能上網.
步驟:在server機上安裝wingate軟體,並運行。例如,server的IP地址:192.168.83.9;PC機的IP地址:192.168.30.8,顯然它們不屬於同一網路,要使PC機也能上網?得做什麼配置呢?

首先,在server里捆板一個與PC機同一網路的IP:192.168.30.9;子網掩碼:255.255.255.0。
其次,在PC機上的默認網關改成192.168.30.9。
顯然,這是上不了網的,得做一個NAT轉換。
在server上啟動winroute(具有防火牆功能的一個軟體)。在configuration->traffic policy
會出現一欄:rule name source destination service action translation
rule name : NAT(自由為止,但最好以見名識意為主)
source:IP:192.168.30.0 ,子網掩碼:255.255.255.0 ,添加一條ICMP記錄(Ping)使致能連上外網。
destination:any
service:ping
action:permit
translation:IP:192.168.83.9
但其實驗注意的是:192.168.83.*是可以上網的,網關:*.*.*.*
translation包含:source translation和 destination translation。在其選擇時,應搞清其關系。

微機原理實驗報告

一.實驗名稱:

80X86指令系統及程序調試

二.實驗目的:

掌握匯編語言基本運行環境和熟悉DEBUG調試程序的命令。包括:

1.學習使用指令,掌握常用的指令功能和簡單程序設計。

2.掌握DEBUG調試程序的命令,熟悉程序輸入、存儲器和CPU寄存器及標志位的檢查方法,單步、斷點、連續等運行程序的調試方法。

三.注釋:

用8086匯編語言來編寫程序 ,匯編語言程序從建立到執行的過程。

要建立和運行匯編語言程序,應該首先有如下文件:

EDIT.COM 編輯程序

MASM.EXE 宏匯編程序

LINK.EXE 鏈接程序

DEBUG.EXE 調試程序

四.實驗步驟:

以建立和執行用戶程序ABC.EXE為例來說明上機過程。

1、用EDIT命令建立匯編語言源程序(ASM文件)

源程序就是用匯編語言的語句編寫的程序,它不能被機器識別。源程序必須以ASM為擴展文件名。

例如打入命令:

C:\ASM>EDIT ABC.ASM(每個命令後面應輸入回車,以下均如此)

此時用戶可以通過編輯程序的命令編寫用戶程序ABC.ASM。

2、用MASM命令產生目標文件[OBJ文件]

匯編,實際上就是把以ASM為擴展名的源文件轉換成用二進制代碼表示的目標文件,目標文件以OBJ為擴展名。匯編過程中,匯編程序對源文件進行二次掃描,如果源程序中有語法錯誤,則匯編過程結束後,匯編程序會指出源程序中的錯誤,這時,用戶可以再用編輯程序來修改源程序中的錯誤,最後,得到沒有語法錯誤的OBJ文件。

例如,對hpled.asm的匯編過程如下:

C:\ASM> MASM hpled.asm

3. 用LINK命令產生執行文件(EXE文件)

匯編過程根據源程序產生出二進制的目標文件(OBJ文件),但OBJ文件用的是浮動地址,它不能直接上機執行。所以還必須使用連接程序(LINK.EXE)將OBJ文件轉換成可執行的EXE文件。LINK命令還可以將某一個目標文件和其它多個模塊鏈接起來。

以對hpled.obj進行連接為例:

C:\ASM>LINK hpled.obj

4.程序的執行

有了EXE文件後,就可以執行程序了,此時,只要打入文件名即可。仍以hpled為例:
C:\ASM >hpled

對於某些程序段,單從寄存器的內容看不到程序運行的結果,而需要觀察數據段的內容,此時可用D命令,使用格式如下:

--D DS:0000 ;從數據段0單元開始顯示128各位元組。

在有些情況下,為了確定錯誤到底由哪條指令的執行引起,要用到跟蹤命令(單步執行命令),此命令是程序每執行一條指令,邊給出所有寄存器的內容。比如:

--T 3 ;從當前地址往下執行三條指令。

此指令使得從當前地址往下執行三條指令,每執行一條,便給出各寄存器內容。最後,給出下一條要執行的指令的地址、機器語言和匯編語言。

從DEBUG退出時,使用如下命令:

--Q ;退出DEBUG,卸去所裝配程序。

五:實驗心得:

1. 這次實驗我受益匪淺,不但明白了在課堂上不懂得問題,而且通過實踐的方法深刻的記到了腦海里,讓我懂了實踐出真理的道理。

2. 通過這次實驗我知道了自己的不足,知道了知識海洋的高深。我決心繼續努力學習微機原理,不斷提高自己的動手能力,使自己為社會做出更多貢獻。

Ⅷ 關於ccs的使用

1.應該都是分開的,程序編譯的時候通過鏈接器鏈接到不同的物理地址區上
2.還真不太清楚...
3.有很多匯流排啊,位寬不一樣,有16的,32的,37的我記得,學dsp一定要了解內部結構的,不清楚就找本書看看吧,一般是前幾章介紹的.不過其實編程時用到的不多,不過也可能我學的也不夠深

Ⅸ 實驗心得體會一般怎麼寫

實驗心得體會一般是反思你在實驗中的錯誤操作,並分析這些操作對實驗結果帶來的影響。

Ⅹ DSP實驗心得

通過這次實驗,我熟悉了CCS開發環境以及設計運行調試過程,認識到AIC23語音晶元和I2C協議以及MCBSP模塊的各個工作原理以及三者之間的關系,學會對模塊的初始化怎麼定義和編寫的流程。使我對DSP產生了濃厚的興趣,激發了我學習DSP的積極性,從這次實驗結果上來說,清晰的結果使我對書本上的知識應用到了實驗中,很滿足。該實驗通過FIR濾波器濾波後把雜訊濾除掉了,從時域圖來看,原來的帶有毛刺的音頻波形濾波後變得平滑,從頻域圖來看,雜訊所在的頻域段基本上被濾除掉。
最後,感謝老師、師兄、師姐的耐心指導!