lc3 彙編實現排序 student ID

2021-08-18 18:15:38 字數 2332 閱讀 1771

purpose:

there are 64 students. each has a unique id,which consists of two integer. given id1 = (a1, a2) and id2 = (b1, b2), then ifa1 > b1, then id1 > id2; if a1 = b1, then: if a2 > b2, then id1 >id2; if a2 = b2, then id1 = id2; if a2 < b2, then id1 < id2; if a1

principles:

1.      將輸入位置的的內容複製到輸出位置

2.      在輸出位址原處進行氣泡排序,具體見下面**分析中的內外兩個迴圈

3.     兩個數字比較大小的方法是對其中乙個·數字取反加一,然後將至與另外乙個數字相加,判斷結果的正負,然後據此使用br 指令進行選擇跳轉

procedure:

**分析:

.orig x3000 

ld r2,input

ld r3,output

again ldr r4,r2,#0

str r4,r3,#0

add r2,r2,#1

add r3,r3,#1

ld r4,inpute

not r4,r4

add r4,r4,#1

add r4,r4,r2

brnz again ;將輸入全部複製到輸出位置,最終 r3 儲存 outputendqi+1 位置

bagain add r3,r3,#-2 ;然後進行氣泡排序(如下),bagain 為外迴圈

ld r4,output

not r4,r4

add r4,r4,#1

add r4,r4,r3

brz over

ld r2,output ;判斷 bagain 是否結束

add r2,r2,#-2

sagain add r2,r2,#2

add r4,r3,#0

not r4,r4 ;sagain 為內迴圈

add r4,r4,#1

add r4,r4,r2

brz bagain

ldr r4,r2,#0

ldr r5,r2,#2

not r4,r4

add r4,r4,#1

add r5,r4,r5

brn sagain

brz cmp ;如果兩個元素中第乙個數相等,則進行第二數字的比較

brp swap ;如果前乙個元素小於後乙個,則交換二者位置

cmp ldr r4,r2,#1

ldr r5,r2,#3

not r4,r4

add r4,r4,#1

add r5,r4,r5

brnz sagain

brp swap

swap ldr r4,r2,#0 ;實現對相鄰元素的交換

ldr r5,r2,#2

str r4,r2,#2

str r5,r2,#0

ldr r4,r2,#1

ldr r5,r2,#3

str r4,r2,#3

str r5,r2,#1

brnzp sagain

over halt

input .fill x3200

inpute .fill x327f

output .fill x4000

.end

result:

結果測試;匯入 data.obj 檔案

資料如下(部分):內容均為符號位擴充套件後表示

結果:

驗證可知結果正確

some thoughts:

本實驗中採用的比較排序法,是一種一種效率較低的排序方法。原先擬使用快速排序,苦於不知怎樣較好地實現遞迴,而非遞迴寫法又較為複雜。考慮到本實驗資料規模較小,暫且使用氣泡排序。

音訊LC3編碼演算法資料

目前針對ble標準的lc3詳細描述尚未公布,但是lc3音訊編碼方式的演算法是現有的方法,下面是我找到的pdf 演算法描述 和 資料 lc3編碼器,c語言實現 lc3的有關描述 開發新的lc3 lc3plus音訊編解碼器是為了解決當今無線通訊平台 例如藍芽和數字增強型無繩電信 dect 中存在的重大缺...

彙編實現氣泡排序

感覺。實現一下還是有點意義的。用的是mips指令集,不造是不是過時了。然後參考資料 實現上不敢用保留暫存器,因為用完貌似需要恢復原暫存器的值,所以全部都用臨時暫存器的值 然後遇到了幾個問題 一 變數的定義 主要是在資料段裡幹,資料段用.data標識 然後定義方式是 變數名 變數型別 初始值 eg.a...

阿里雲在LC3大會上透露未來要做的兩件事

6月25日,由lfasia,llc主辦的全球開源頂級盛會linuxcon containercon cloudopen lc3 在北京國家會議中心召開。來自國內外的開發人員 架構師 系統管理員 devops專家 商業領袖等數千名專業人士匯聚一堂。img 1684 阿里雲研究員褚霸在大會當天同多位業界...