作业帮 > 综合 > 作业

用汇编语言写一个筛选10有符号的数的最大数和最小数

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/28 17:30:07
用汇编语言写一个筛选10有符号的数的最大数和最小数
写个那个算法就行
;----------------------------------
;排序
;负数显示补码如-1显示65535
;如想增加数据只需在a变量中添加,
;同时长度len要相应的更改
;----------------------------------
data segment
len dw 10
a dw -1,2,100,-100,99,-120,15,46,411,102
b dw 0
data ends
code segment
main proc far
assume cs:code,ds:data
start:
push ds
sub ax,ax
push ax
mov ax,data
mov ds,ax
mov cx,len
dec cx
loop1:
mov di,cx
mov bx,0
loop2:
mov ax,a[bx]
cmp a[bx+2],ax
jge cotinue
xchg ax,a[bx+2]
mov a[bx],ax
cotinue:
add bx,2
loop loop2
mov cx,di
loop loop1
mov si,0
loop3:
mov bx,a[si]
call bini
call crlf
add si,2
mov di,len
add di,len
cmp si,di
jl loop3
ret
main endp
bini proc near
mov cx,10000d
call bin
mov cx,1000d
call bin
mov cx,100d
call bin
mov cx,10d
call bin
mov cx,1d
call bin
ret
bini endp
bin proc near
mov ax,bx
mov dx,0
div cx
mov bx,dx
mov dl,al
add dl,30h
mov ah,02h
int 21h
ret
bin endp
crlf proc near
mov dl,0ah
mov ah,02h
int 21h
mov dl,0dh
mov ah,02h
int 21
ret
crlf endp
code ends
end start