DX,OFFSET XS1 ;显示未排序的提示符Р MOV AH,09HР INT 21HР MOV CX,5Р LEA SI,VARРLOOP1:?CALL XS ;调用子程序XS进行未排序的数据显示Р LOOP LOOP1 ;循环5次Р CLD Р MOV CX,4Р MOV DX,1РLOOP2: CALL PAIXU ;调用子程序PAIXU进行排序Р INC DXР LOOP LOOP2 Р MOV DX,OFFSET XS2Р MOV AH,09HР INT 21HР MOV CX,5 ;计数寄存器CX置5才能显示5个数Р LEA SI,VAR РLOOP3: CALL XS ;调用子程序XS进行排序后结果显示Р LOOP LOOP3Р MOV DX,OFFSET XS3 ;输出最大值Р MOV AH,09HР INT 21HР LEA SI,VARР ADD SI,8 ;SI要进行加8处理后指向排在最后的最大值Р CALL XSР MOV DX,OFFSET XS4 ;输出最小值Р MOV AH,09HР INT 21HР LEA SI,VARР CALL XSР MOV DX,OFFSET XS5 ;输出去掉最大最小值的平均值Р MOV AH,09HР INT 21HР MOV AX,[SI] Р MOV BX,[SI+2] ;取第二个数据Р ADD AX,BX Р MOV BX,[SI+4]?;取第三个数据(这样相加相当于去掉了最大最小值)Р ADD AX,BXР CWDР IDIV P ;把相加和除以三来求得平均值Р LEA SI,AVG Р MOV [SI],AX ;把求得的平均值存入AVGР CALL XSР MOV DX,OFFSET XS6 ;输出2进制的平均数Р MOV AH,09HР INT 21HР MOV CX,16Р LEA SI,AVG