读书人

小弟我要疯掉了。这程序老是莫名其妙跳

发布时间: 2012-04-22 18:34:46 作者: rapoo

我要疯掉了。。。。。。这程序老是莫名其妙跳转!!!!!!!!!!!!!!!!!!!!!
实现学生成绩排序


data segment
M1 db "num:$"
M2 db "name:$"
M3 db "score:$"
EM db 13,10,'$'
student struct
sname db 10,?,10 dup(?)
score db 4,?,4 dup(?)
student ends
m dw 500 dup(?)
num dw 0
i dw ?
j dw ?
stus student 500 dup({})
data ends

stack segment para stack
db 40 dup(0)
stack ends

code segment
assume cs:code,ss:stack,ds:data
start:mov ax,data
mov ds,ax
lea dx,M1
mov ah,09h
int 21h
call inone
mov num,dx
lea dx,EM
mov ah,09h
int 21h
;call inone
;mov num,dx
;call init
call input
call sort
mov ah,4ch
int 21h

inone proc
push ax
push bx
push cx
xor dx,dx
lop: mov ah,01h
int 21h
cmp al,0dh
jz extp1
and al,0fh
mov cl,al
mov ax,dx
mov bx,10
mul bx
mov dx,ax
mov ch,0
add dx,cx
jmp lop
extp1:pop cx
pop bx
pop ax
ret
inone endp


input proc
push bx
push cx
push si
;push bx
xor bx,bx
mov si,0
mov cx,16
lop:cmp bx,num
jz extp2
lea dx,M2
mov ah,09h
int 21h
lea dx,stus[si]
mov ah,0ah
int 21h
lea dx,EM
mov ah,09h
int 21h
lea dx,M3
mov ah,09h
int 21h
lea dx,stus[si+12]
mov ah,0ah
int 21h
lea dx,EM
mov ah,09h
int 21h
mov m[bx],bx
add si,cx
inc bx
jmp lop

extp2:;pop bx
pop si
pop cx
pop bx
ret
input endp

sort proc
push ax
push bx
push cx
push dx
pop si
pop di
xor cx,cx
xor dx,dx
xor ax,ax
xor bx,bx
mov bx,16
lea si,stus[12]
lea di,stus[12]
lop2:mov dx,cx
cmp cx,num
jz extp3
lop3:cmp dx,num
jz next2
mov i,cx
mov j,dx
call comp
add di,bx
inc dx
jmp lop3
next2:add si,bx
inc cx
jmp lop2
extp3:pop di
pop si
pop dx
pop cx
pop bx
pop ax
ret
sort endp


comp proc
;push ax
;push bx
push dx
push cx
mov ax,0
mov bx,0
mov dx,0
inc si
inc di
mov ax,[si]
mov bx,[di]
dec si
dec di
cmp ax,bx
ja a
jb b
a:mov cx,bx
jmp res
b:mov cx,ax
jmp res
res:repz cmpsb


jl less
less:;mov ax,i
mov bx,j
mov cx,a[bx]
mov bx,i
mov ax,a[bx]
mov a[bx],cx
mov bx,j
mov a[bx],ax
pop cx
pop dx
;push bx
;push ax
ret
comp endp



code ends
end start



[解决办法]
没注释啊! 这也太让人头疼了看着
[解决办法]
你这个中间一个符号定义重复了……也不知道你说的莫名调转是个什么情况,可以加我QQ 772744061 探讨下,这个学生管理程序我也写过,比你这个功能扩展了!

读书人网 >汇编语言

热点推荐