data segment
BUF DW 2560,-3,4387,12,6250,-79,54,88
COUNT EQU $-BUF
OUTBUF DB 7 DUP(0),'$'
data ends
code segment
assume cs:code,ds:data
OUTPUT PROC
PUSH AX
PUSH BX
PUSH CX
PUSH DX
MOV BX,OFFSET OUTBUF+5
MOV BYTE PTR [BX],' '
MOV AX,[DI]
CMP AX,0
JGE LGE
MOV DL,'-'
PUSH AX
MOV AH,2
INT 21H
POP AX
XOR CX,CX
SUB CX,AX
MOV AX,CX
LGE:
MOV CX,10 ;做32位除以16位的除法,故将10送CX
AGAIN:
MOV DX,0 ;无符号数扩展将16位扩展为32位
DIV CX
ADD DL,30H ;将DL中的一位十进制数转换为ASCII码
DEC BX ;调整指针
MOV [BX],DL
&n