📄 3.asm
字号:
;FILENAME:3.ASM
.486
DATA SEGMENT USE16
MESG1 DB 'THE NUMBER OF NEGATIVE IS:','?',0DH,0AH,'$'
MESG2 DB 'MAX=',?,?,'$'
BUF DB 1,2,3,4,5,96,-1,-2,-3,-5,-6,-7,-8,-5,-89
DATA ENDS
CODE SEGMENT USE16
ASSUME CS:CODE,DS:DATA
BEG: MOV AX,DATA
MOV DS,AX
MOV BX,OFFSET BUF
CALL SEARCHNEG_DISP
MOV AH,4CH
INT 21H
SEARCHNEG_DISP PROC
MOV CX,15
MOV DL,-256
MOV AH,'0'
LAST: CMP [BX],DL
JLE NEXT
MOV DL,[BX]
NEXT: MOV AL,BYTE PTR [BX]
ROL AL,1
JNC NEXT2
ADD AH,1
NEXT2: INC BX
LOOP LAST
SAL DX,8
MOV BX,OFFSET MESG2+4
MOV CX,2
AGA: ROL DX,4
AND DL,0FH
CMP DL,9
JNA NEXT3
ADD DL,7
NEXT3:
ADD DL,30H
MOV [BX],DL
INC BX
LOOP AGA
MOV BX,OFFSET MESG1+26
MOV BYTE PTR [BX],AH
MOV AH,9
MOV DX,OFFSET MESG1
INT 21H
MOV DL,AH
MOV AH,2
INT 21H
MOV AH,9
MOV DX,OFFSET MESG2
INT 21H
MOV AH,2
MOV DL,'H'
INT 21H
RET
SEARCHNEG_DISP ENDP
CODE ENDS
END BEG
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -