回复一凌 -- 键盘输入100个之内的子符按ASCII排序
时间:2010-12-29
来源:互联网
最近网络不好,回复了留言也不知道您能收到不?
这里就再贴分发下.也供有类似需求的参考下!!!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 键盘输入100个之内的子符按ASCII排序
; --最适用于键盘输入纯数字排序
;--------------------------------------------------------------
; 按任意键退出
;==============================================================
;
DATAS SEGMENT
num_0 db 101
num_1 db ?
num_2 db 101 dup (?)
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
mov ah,0ah
mov dx,offset num_0
int 21h
lea si,num_2
lea di,num_2+1
W_X:
push si
push di
N_X:
mov al,[si]
cmp al,[di]
jb OK
xchg al,[di]
mov [si],al
OK:
inc di
cmp [di],0dh
jne N_X
pop di
pop si
inc si
inc di
cmp [di],0dh
jne W_X
mov [di],"$"
mov num_0,0dh
mov num_1,0ah
mov dx,offset num_0
mov ah,9
int 21h
mov ah,7
int 21h
MOV AH,4CH
INT 21H
CODES ENDS
END START
这里就再贴分发下.也供有类似需求的参考下!!!
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 键盘输入100个之内的子符按ASCII排序
; --最适用于键盘输入纯数字排序
;--------------------------------------------------------------
; 按任意键退出
;==============================================================
;
DATAS SEGMENT
num_0 db 101
num_1 db ?
num_2 db 101 dup (?)
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
mov ah,0ah
mov dx,offset num_0
int 21h
lea si,num_2
lea di,num_2+1
W_X:
push si
push di
N_X:
mov al,[si]
cmp al,[di]
jb OK
xchg al,[di]
mov [si],al
OK:
inc di
cmp [di],0dh
jne N_X
pop di
pop si
inc si
inc di
cmp [di],0dh
jne W_X
mov [di],"$"
mov num_0,0dh
mov num_1,0ah
mov dx,offset num_0
mov ah,9
int 21h
mov ah,7
int 21h
MOV AH,4CH
INT 21H
CODES ENDS
END START
作者: nanlingcg 发布时间: 2010-12-29
我也贴一个
Assembly code
Assembly code
;this program compiled by masm 6.15 ; assume cs:code,ds:data data segment msg1 db 'Before sort:$' crlf db 0dh,0ah,'$' msg2 db 'After sort :$' buff db 100 dup (0) data ends code segment start: mov ax,data mov ds,ax mov dx,offset msg1 mov ah,9 int 21h mov cx,0 mov di,offset buff input: mov ah,1 int 21h cmp al,0dh jz ok mov [di],al inc di inc cx cmp cx,100 jz ok jmp input ok: mov dx,offset crlf mov ah,9 int 21h mov dx,offset msg2 mov ah,9 int 21h dec cx mov si,offset buff s: push cx mov di,si inc di s1: mov al,[si] cmp al,[di] jb jx xchg al,[di] mov [si],al jx: inc di loop s1 inc si pop cx loop s mov byte ptr [si+1],24h mov dx,offset buff mov ah,9 int 21h mov ah,4ch int 21h code ends end start
作者: masmaster 发布时间: 2010-12-29
40分。。。 土豪!
作者: znxllyuan 发布时间: 2010-12-29
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28