91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ARM匯編如何解決階乘及大小寫轉換的問題

發布時間:2021-11-15 09:14:21 來源:億速云 閱讀:153 作者:柒染 欄目:開發技術

本篇文章為大家展示了ARM匯編如何解決階乘及大小寫轉換的問題,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

環境以及硬件

一、硬件仿真基于 SAMSUNG's S3C44B0X 16/32-bit RISC microprocessor 芯片,仿真器為 J-LINK

二、編寫指令軟件為 Integrated Development Environment ,軟件仿真為 ARMulate.dll

三、需要基于ARM7硬件平臺的C語言啟動代碼,用于分配中斷向量表,初始化ISR地址,初始化堆棧空間,初始化應用程序執行環境,配置存儲器系統,設定時鐘周期,呼叫主應用程序。

四、這里僅有關鍵算法代碼

ARM匯編求一個數的階乘

題目:R1寄存器內數據的階乘運算,結果存放在R0

mov r1,#6          ;將立即數 6 送至 R1,即為‘6'的階乘,可以更改
 mov r0,r1          ;將 R1 的值給R0
loop              ;定義一個循環體標簽
 subs r1,r1,#1      ;將 R1-R1 的給R1
 mul r0,r0,r1       ;將 R0*R1 的值給R0
 cmp r1,#1          ;將 R1 與 1 做比較
 BNE loop           ;上面的值不相等則跳轉至 loop

ARM匯編大小寫轉換以及存入內存

題目:將內存地址0XC100000開始處的字符串"Welcome to CSUST!"中對應的小寫字母轉換成大寫,大寫變換成小寫。

說明:此算法存在局限性,只能轉換不包含ASSIC碼值大于‘127'和在‘91~96'之間的字符串

STRING_WELCOME
	DCB "Welcome to CSUST!\n\0"   ;聲明一個字符串
	
STRING
	LDR r0,=STRING_WELCOME        ;取得字符串的首地址
	mov r1,#0x0c100000	      ;將#0x0c100000給 R1,目的為將R1指向目標地址
STRING2
	LDRB r2,[r0]		      ;取出一個字符給 R2
	
	cmp r2,#97		      ;將 R2 與 97(即‘a') 作比較
	BGE BIGWORD		      ;大于或等于 97 則跳轉至 BIGWORD 子程序
	
	cmp r2,#65		      ;將 R2 與 65(即‘A') 作比較
	BGE SMALLWORD		      ;大于或等于 65 則跳轉至 SMALLWORD 子程序
	B MYLOOP		      ;跳轉至MYLOOP,存字符
	
BIGWORD				      ;大寫轉小寫子程序
	sub r2,r2,#32		      ;大寫字母的assci碼-32 即可轉換為小寫
	B MYLOOP		      ;跳轉至 MYLOOP,存字符
	
SMALLWORD			      ;小寫轉大寫子程序
	add r2,r2,#32		      ;小寫字母的assci碼+32 即可轉換為大寫
	
MYLOOP				      ;存字符子程序
	STRB r2,[r1]		      ;存入R1指定的內容
	add r0,r0,#1		      ;R0=R0+1
	add r1,r1,#1		      ;R1=R1+1
	CMP r2,#'\0'		      ;將R2與‘\0'作比較,目的是判斷是否已經取完了字符串
	BNE STRING2		      ;上一個比較不相等則跳轉至 STRING2 繼續取字符

ASSIC碼表

ARM匯編如何解決階乘及大小寫轉換的問題

上述內容就是ARM匯編如何解決階乘及大小寫轉換的問題,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

arm
AI

辽宁省| 宁国市| 广水市| 江达县| 电白县| 五华县| 田东县| 海盐县| 兴文县| 正镶白旗| 吴江市| 达州市| 四平市| 临沧市| 靖宇县| 永福县| 沙洋县| 泸州市| 阜新| 岢岚县| 大城县| 平顶山市| 定安县| 盐山县| 娱乐| 仪陇县| 大田县| 永安市| 区。| 安乡县| 海兴县| 南郑县| 徐闻县| 昌黎县| 郁南县| 东海县| 德阳市| 报价| 即墨市| 西吉县| 禹州市|