編了幾天的彙編,發現很是麻煩,尤其是在編寫中斷程式時。好在功夫沒有白費,總算
是成了,總結一些問題,如下:
1、編中斷時,要設定好中斷向量後,才能開中斷;
2、在開中斷的情況下,不要通過更改sp來訪問堆疊中的資料,如下:
add sp, sp, #4
ldr r0, [sp]
上面的語句可能帶來隱患:在執行上面的語句時若中斷產生,中斷
將context儲存在堆疊中,就會沖掉原有的資料,正確的如下:
add r0, r0, #4
ldr r0, [r0]
3、stmfd sp!, ,該語句實際的入棧次序為r3,r2,r1,
不要認為是r2,r1,r3或r3,r1,r2;
4、在允許中斷巢狀的時候,要注意堆疊的設定要足夠大,此外,
巢狀的層數也不要無限大,否則,再大的堆疊都不夠
5、執行mov cpsr_cxsf, #0x13後,中斷並不是馬上就開啟了,而是要
執行完下一語句後才開啟的
網頁程式設計小經驗 2
網頁程式設計小經驗 資料繫結dictionary 一直都在想如何可以把dictionary或者dictionarylist繫結到資料來源控制項 比如 griedview datagrid detailsview repeater等等 找了好久才發現是可以的 拿repeater為例 dictionar...
ARM彙編程式設計
arm彙編分類 目前常用的arm彙編指令有兩種 1 arm標準彙編 適用於arm公司的彙編器,適合在windows平台下使用,如ads中使用。2 gnu彙編 適用於gnu交叉編譯工具鏈中的彙編器,適合於linux開發平台。匯程式設計序的框架 section data 初始化的資料 section b...
matlab的小經驗
1.m檔案如果是函式,儲存的檔名最好與函式名一致,這點都很清楚。不過容易疏忽的是,m檔名的命名盡量不要是簡單的英文單詞,最好是由大小寫英文 數字 下劃線等組成。原因是簡單的單詞命名容易與matlab內部函式名同名,結果會出現一些莫名其妙的錯誤。2.除錯程式時,經常要遮蔽掉一整段程式進行,也就是將其標...