ARM實驗匯編代碼_第1頁
ARM實驗匯編代碼_第2頁
ARM實驗匯編代碼_第3頁
ARM實驗匯編代碼_第4頁
ARM實驗匯編代碼_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、AREA Example1,CODE,READONLY ENTRYCODE32START MOV R0,#15MOV R1,#8ADDS R0,R0,R1B STARTENDTest2.sX EQU 11Y EQU 8BIT23 EQU (1<<23AREA Example3,CODE,READONLY ENTRYCODE32STARTYMOV R0,#XMOR R1,#YADD R3,R0,R1MOV R8,R3MVN R0,#0XA0000007SUB R5,R0,R8,LSL #3MOV R0,#YADD R0,R0,R0,LSL #2MOV R0,R0,LSR #1MOV

2、R1,#XMOV R1,R1,LSL #1CMP R0,R1LDRHI R2,=0XFFFF0000ANDHI R5,R5,R2ORRLS R5,R5,#0X000000FFTST R5,#BIT32BICNE R5,R5,#0X00000040B STARTEND/*Test3.s*X EQU 11Y EQU 8BIT23 EQU (1<<23AREA Example3,CODE,READONLY ENTRYCODE32STARTMOV R0,#XMOV R1,#YADD R3,R0,R1MOV R8,R3MVN R0,#0XA0000007SUB R5,R0,R8,LSL #3

3、MOV R0,#YADD R0,R0,R0,LSL #2MOV R0,R0,LSR #1MOV R1,#XMOV R1,R1,LSL #1CMP R0,R1LDRHI R2,=0XFFFF0000ANDHI R5,R5,R2ORRLS R5,R5,#0X000000FFTST R5,#BIT23BICNE R5,R5,#0X00000040B STARTEND/*Test4.s* ;* ;Name :test4.s;Function :Caculate Xn;Entrance parametre :;Out parametre :R0 Result;Source occupation :R0,

4、R1;Explanation :;*X EQU 9n EQU 8AREA Example4,CODE,READONLYENTRYCODE32START LDR SP,=0X40D03F0DLDR R0,=XLDR R1,=nBL POWHALT B HALT;*;Name :POW;Function :zhengshu chengfang;Entrance parametre :;Out parametre :;Source occupation :R0,R1;Explanation :This code doesnt care the number overflow ;*POWSTMFD S

5、P!,R1-R12,LRMOVS R2,R1MOVEQ R0,#1BEQ POW_ENDCMP R2,#1BEQ POW_ENDMOV R1,R0SUB R2,R2,#1POW_L1 BL DO_MULSUBS R2,R2,#1BNE POW_L1POW_END LDMFD SP!,R1-R12,PC;*;Name :DO_MUL;Function :MULTIPLE OF 32BIT DATA;Entrance parametre :R0 CHENGSHU; R1 BEICHENGSU;Out parametre :R0 Result;Source occupation :R0,R1;Exp

6、lanation :;*DO_MUL MUL R0,R1,R0MOV PC,LREND/*Test5.s*;*;Name :test5.s;Function :Caculate 1+2+3+N;Entrance parametre :;Out parametre :;Source occupation :;Explanation :N>=0, if N=0 reult=0,if N=1 resualt=1;*N EQU 100AREA Example5,CODE,READONLYENTRYCODE32ARM_CODE LDR SP,=0X40003F00 ;There should be

7、 no space before ARM_CODE ADR R0,THUMB_CODE+1BX R0LTORGCODE16THUMB_CODELDR R0,=NBL SUM_NB THUMB_CODE;*;Name :SUM_N;Function :Caculate 1+2+3+N;Entrance Parametre :R0 N;Out Parametre :R0 Result;Source Occupation :R0;Explanation :N>=0, if N=0 result=0,if N=1 resualt=1; if any overflow result=0;* SUM

8、_NPUSH R1-R7,LRMOVS R2,R0BEQ SUM_ENDCMP R2,#1BEQ SUM_ENDMOV R1,#1MOV R0,#0SUM_L1 ADD R0,R1BCS SUM_ERRCMP R1,R2BHS SUM_ENDADD R1,#1B SUM_L1SUM_ERR MOV R0,#0SUM_END POP R1-R7,PCEND/*Test6.s* ;* ;Name :tes6.s;Function :show if for while switch ;Entrance Parametre :;Out Parametre :;Source Occupation :;E

9、xplanation :;* AREA Example6,CODE,READONLY ENTRYCODE32START ;if(x>yz=100;else z=50MOV R0,#76MOV R1,#243CMP R0,R1MOVHI R2,#100MOVLS R2,#50;for(i=0;i<10;i+FOR_L1 ; ; x+; ; MOV R0,#0 MOV R2,#0 CMP R2,#10 BHS FOR_END ADD R0,R0,#1 ADD R2,R2,#1 B FOR_L1 NOP ;while(x<=y ; ; x*=2; ; MOV R0,#1 MOV R

10、1,#20 B WHILE_L2 FOR_END WHILE_L1 WHILE_L2 MOV R0,R0,LSL #1 CMP R0,R1 BLS WHILE_L1 WHILE_END NOP ;do ;x-; ;while(x>0 MOV R0,#5 DOWHILE_L1 ADD R0,R0,#-1 DOWHILE_L2 MOVS R0,R0 BNE DOWHILE_L1 DOWHILE_END NOP ;switch(key&0x0f ;case 0: ; case 2: ; case 3:x=key+y; break; ; case 5:x=key-y; break; ; case 7:x=key*y; break; ;default:x=168; break; ; MOV R1,#3 MOV R2,#2 SWITCH AND R2,R2,#0X0F CASE_0 CMP R2,#0 CASE_2 CMPNE R2,#2 CASE_3 CMPNE R2,#3 BNE CASE_5 ADD R0,R2,R1 B SWI

溫馨提示

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

評論

0/150

提交評論