|
|
#3
守鹤2008-06-22 14:14
data segment
buf db 2,3,5,-1,-6
count dw 5
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov si,offset buf
mov cx,count
xor ax,ax
l1: cmp al,[si]
jle next
mov al,[si]
next: inc si
loop l1
cmp al,0
jge outp
neg al
mov bl,al
mov dl,'-'
mov ah,02
int 21h
outp: mov dl,bl
add dl,30h
mov ah,02
int 21h
mov ah,4ch
int 21h
code ends
end start
这是单个数字的计算,对于多个数字的计算
只需显示时做一些处理:你应该会的
多位数显示为十进制还是十六进制,根据用户的需要
|