東北師范2015秋期末考核《嵌入式系統(tǒng)》答案_第1頁
東北師范2015秋期末考核《嵌入式系統(tǒng)》答案_第2頁
東北師范2015秋期末考核《嵌入式系統(tǒng)》答案_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

期末作業(yè)考核《嵌入式系統(tǒng)》滿分100分一、判斷題(每題3分,共30分)1.嵌入式系統(tǒng)中的軟件系統(tǒng)主要由嵌入式操作系統(tǒng)和應用軟件組成,其中嵌入式微處理器屬于嵌入式軟件系統(tǒng)的核心。(錯)2.運行在智能手機或平板電腦中的Android系統(tǒng)是一種嵌入式操作系統(tǒng)。(對)3.WindRiver公司所提供的軟件開發(fā)包是Tornado,基所使用的操作系統(tǒng)是Windows。(錯)4.基于ARM的開發(fā)工具僅包括編輯器、編譯器、匯編器、鏈接器和調試器。(錯)5.在Linux系統(tǒng)中,目錄不能有硬連接,且硬連接不能跨越文件系統(tǒng)。(對)6.Linux系統(tǒng)中卸載某個文件系統(tǒng)需要使用的命令是unload。(錯)7.當ARM處理器執(zhí)行異常處理程序時,處理器處于ARM狀態(tài)。(對)8.ARM處理器的快速中斷模式下的影子寄存器數(shù)量最多。(對)9.EXTERN在引用某個外來的符號時,如果本源文件設有實際引用該符號,該符號也會被加入到本源文件的符號表中。(錯)10.在ARM匯編語言中,基本指令必須從一行的行頭開始。(錯)二、簡答題(每題8分,共40分)1.試比較SRAM、DRAM和SDRAM有什么區(qū)別?答:(1)、SRAM:加電情況下不需要刷新,數(shù)據(jù)不會丟失,一般不是行列地址復用。存取速度較快,且比較省電,但存1位信息需要4-6只晶體管,制造成本高。一般用做cache。

(2)、

DRAM:需要不斷刷新才能保存數(shù)據(jù),

行列地址復用。存1位信息只需要1只晶體管。一般用做主存。

(3)、

SDRAM:數(shù)據(jù)的讀寫需要時鐘來同步,多bank結構。(4)、

DRAM和SDRAM的容量較SRAM大,但讀寫速度不如SRAM。

5)

DDR

SDRAM:

SDRAM在一個時鐘周期內只傳輸一次數(shù)據(jù),它是在時鐘的上升期進行數(shù)據(jù)傳輸;而DDR內存則是一個時鐘周期內傳輸兩次數(shù)據(jù),它能夠在時鐘的上升期和下降期各傳輸一次數(shù)據(jù),因此稱為雙倍速率同步動態(tài)隨機存儲器。DDR內存可以在與SDRAM相同的總線頻率下達到更高的數(shù)據(jù)傳輸率。

2. 什么是映像文件?什么是映像文件的加載視圖和執(zhí)行視圖?答:映像文件(Image)是一個計算機上的可執(zhí)行文件,在執(zhí)行之前被加載到計算機的存儲器中。通常,一個映像文件中包含多個線程。

映像文件的加載視圖是指映像文件開始執(zhí)行前它的域和段在存儲器中的位置視圖,該視圖根據(jù)映像文件裝載到存儲器時的地址描述每一個域和段。

映像文件的執(zhí)行視圖是指映像文件在執(zhí)行時其每一個域和段在內存中的地址描述視圖。3.Linux的開發(fā)工具有哪些?答:1)程序編輯器:Vi、emacs、gedit。編譯器套裝:GCC

3)鏈接器:ld

4)匯編器:as

5)調試器:gdb

6)項目管理工具:make

4.什么是ARM處理器的影子寄存器?答:影子寄存器的引入是ARM的一個特點(X86,PowerPC都沒有)。我們知道,ARM有16個通用寄存器,這16個通用寄存器在指令中使用4個bit來標識,但是在不同的模式下,同樣的4個bit

指向不同的物理寄存器,這些不同的物理寄存器就被稱之為影子寄存器。不同的通用寄存器的影子寄存器個數(shù)也不相同,有的沒有,有的只有1個,有的多達5個。要記住一點:所有的影子寄存器都是一個實際存在的物理寄存器。

ARM核是一個非常緊湊的設計,影子寄存器的引入就是這種設計的表現(xiàn)。通過引入影子寄存器,指令可以重復使用相同的寄存器編碼,但是在不同模式下,這些編碼對應不同的物理寄存器。比如Abort模式下的R13就同用戶模式下的R13不同,雖然它們編碼一樣,但是實際上對應的是不同的物理寄存器(可以將CPSR的模式域當作片選)。5.ARM匯編的符號命名和書寫規(guī)則有哪些?答:1.符號命名可以使用大小寫字母,數(shù)字和下劃線。

2.符號是大小寫字母敏感的。

3.除本地行號外,名稱不能不能以數(shù)字開頭。

4.一個程序段中不能重名。

5.符號在其作用范圍內必須唯一。

6.符號不能夠與系統(tǒng)內部變量或者系統(tǒng)預定義的符號同名。例如:a1

or

R0、sp、cpsr、{PC}

or

.、{VAR}

or

@、{CONFIG}、{CPU}等等。

7.當程序中的符號與指令助記符或者指示符同名時,用雙豎線將符號括起來。如||buffe_a||,這時雙豎線并不是符號的組成部分。

8.在ARM匯編語言程序中,所有符號必須在一行的最左邊位置開始書寫,即所謂的頂格書寫,不允許包含空格或者制表符。

9.符號的字符序列中不能大小寫字母相混雜。

10.如果符號使用了更大范圍的字符集,則需要用單豎線將符號括起來,以便編譯器處理。例如:|.text|和|Image$$ZI$$Limit|

11.單豎線不屬于符號,在兩個單線之間不能適用單豎線、分號。

三、問答及應用題(每題15分,共30分)1.Linux的makefile有什么作用?例如,在某目錄下某工程有三個源文件,分別是xa1.c、xa2.c和xa3.c,其分別對應的頭文件是xa1.h、xa2.h和xa3.h,該工程的最終可執(zhí)行文件名是mytest,此外,xa2.c和xa3.c還依賴于xa1.h,試寫出該目錄下最通用的makefile文件。答:make工具通過一個稱為makefile的文件來完成并自動維護編譯工作。Makefile需要按照某種語法進行編寫,其中說明了如何編譯各個源文件并連接生成可執(zhí)行文件,并定義了源文件之間的依賴關系。當修改了其中某個源文件時,如果其他源文件依賴于該文件,則也要重新編譯所有依賴該文件的源文件。

具體makefile文件之一如下:

#This

is

a

makefile

for

make

tools.

Mytest:xa1.o

xa2.o

xa3.o

Gcc–o

mytest

xa1.o

xa2.o

xa3.o

Xa1.o:xa1.c

xa1.h

Gcc–c

xa1.c

Xa2.o:xa2.c

xa2.h

xa1.h

Gcc–c

xa2.c

Xa3.o:xa3.c

xa3.h

xa1.h

Gcc–c

xa3.c

2.試編寫一個ARM匯編子程序SUMMING,用于計算1000以內所有能被3整除的自然數(shù)之和。要求該子程序可被其他程序調用。答:

EXPORT

SUMMING

AREA

MYSUM,

CODE,

RE

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論