汇编第二发:选择出最大数和最小数
;Made by X-Ray
;选择出最大数和最小数
DATAS SEGMENT
MES1 DB 'The biggest num is: $'
MES2 DB 'The smallest num is: $'
DATA1 DB 0F9H,07H,06H,0C5H,0FFH,04H,01H,0FDH
LEN DB $-DATA1
DATAS ENDS
STACKS SEGMENT
DW 256 DUP(?)
STACKS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
LEA SI,DATA1
MOV CL,LEN
AND CX,00FFH ;用于判断LOOP次数
;存放数据
MOV BH,DS:[SI] ;BH存放最大数,先存放第一个数
MOV BL,DS:[SI] ;BL存放最小数,先存放第一个数
;循环比较开始
C1: INC SI
MOV AL,DS:[SI] ;将当前数放入AL
CMP AL,BH ;比较当前数与BH
JB SAM
MOV BH,AL
;****************************************************
SAM:CMP AL,BL ;比较当前数与BL
JA BIG
MOV BL,AL
BIG:LOOP C1
;显示BL的高四位*************************************