匯編程序成績(jī)排序的實(shí)現(xiàn)
匯編程序 成績(jī)排序的實(shí)現(xiàn)
【任務(wù)】
在數(shù)據(jù)區(qū),給出了學(xué)生人數(shù)及匯編語言課程的成績(jī),請(qǐng)將成績(jī)排序并保存在原數(shù)據(jù)區(qū)。
下面給出部分代碼,要求完成排序子程序。
程序中給出的數(shù)據(jù)段,包括20位同學(xué)的成績(jī),每名同學(xué)的數(shù)據(jù)占1字節(jié)。
參考程序段:
assume cs:cseg, ds:dseg, ss:sseg
sseg segment stack
dw 100H dup (?)
sseg ends
dseg segment
db 20
db 98,61,57,82,89,73,61,58,53,54
db 84,78,70,64,84,63,76,84,83,86
dseg ends
cseg segment
start: mov ax, dseg
mov ds, ax
mov cl, ds:[0]
mov ch, 0 ;cx中存儲(chǔ)要排序數(shù)的個(gè)數(shù)
mov bx, 1 ;要排序數(shù)的起始偏移地址
call sort
mov ax, 4c00h
int 21h
;子程序名:sort
;功 能:對(duì)從(DS):(bx)開始的(cx)個(gè)字節(jié)排序
;入口參數(shù):(DS):(BX)保存數(shù)據(jù)的起始地址
; (cx)中是要排序的數(shù)據(jù)個(gè)數(shù)
;出口參數(shù):無
sort proc
;這兒寫子程序
sort endp
cseg ends
end start
【參考解答】
assume cs:cseg, ds:dseg, ss:sseg
sseg segment stack
dw 100H dup (?)
sseg ends
dseg segment
db 20
db 98,61,57,82,89,73,61,58,53,54
db 84,78,70,64,84,63,76,84,83,86
dseg ends
cseg segment
start: mov ax, dseg
mov ds, ax
mov cl, ds:[0]
mov ch, 0 ;cx中存儲(chǔ)要排序數(shù)的個(gè)數(shù)
mov bx, 1 ;要排序數(shù)的起始偏移地址
call sort
mov ax, 4c00h
int 21h
sort proc
push si
push ax
dec cx ;外層循環(huán)次數(shù)為數(shù)據(jù)個(gè)數(shù)減1
c1: ;排序的外層循環(huán)
push cx
mov si, bx
c2: ;排序的內(nèi)層循環(huán)
mov al, [si]
cmp al, [si+1]
jbe noswap
mov ah, [si+1]
mov [si+1], al
mov [si], ah
noswap: inc si
loop c2
pop cx
loop c1
pop ax
pop si
ret
sort endp
cseg ends
end start
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
使用匯編語言實(shí)現(xiàn)if else 循環(huán)函數(shù)調(diào)用的具體方法
這篇文章主要介紹了使用匯編語言實(shí)現(xiàn)if else 循環(huán)函數(shù)調(diào)用的具體方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01
匯編 函數(shù)調(diào)用的實(shí)現(xiàn)
這篇文章主要介紹了匯編 函數(shù)調(diào)用的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02
匯編語言DOSBox及debug.exe在Windows64下環(huán)境搭建
這篇文章主要為大家介紹了匯編語言環(huán)境的搭建DOSBox及debug.exe在Windows64下安裝配置過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11
匯編語言系列之匯編實(shí)現(xiàn)簡(jiǎn)單數(shù)學(xué)運(yùn)算
這篇文章主要介紹了匯編語言系列之匯編實(shí)現(xiàn)簡(jiǎn)單數(shù)學(xué)運(yùn)算的思路詳解,本文給大家列出了兩種算術(shù)運(yùn)算的代碼,設(shè)計(jì)思路給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11

