⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sy5.asm

📁 寻找最大值和最小值的汇编语言程序
💻 ASM
字号:
        DATA  SEGMENT
       DATA1  DB        0D9H,07H,8BH,0C5H,0EBH,04H,9DH,0F9H ;将要比较的数存入数据区DATA1
        DATA  ENDS
        CODE  SEGMENT
              ASSUME    CS:CODE,DS:DATA
      START:  MOV       AX,DATA
              MOV       DS,AX
              LEA       SI,DATA1
              MOV       BH,[SI]     ;将要比较的第一个数赋给BH
              MOV       BL,[SI]     ;将要比较的第一个数赋给BL
              MOV       CX,07H
        MAX:  CMP       BH,[SI+1]   ;用BH中的数依次比较数据区DATA1中的数
              JA        NEXT1
              XCHG      BH,[SI+1]   ;如果BH中的数小于数据区DATA1中的数则交换两者
      NEXT1:  INC       SI
              LOOP      MAX
              MOV       CX,08H
        MIN:  CMP       BL,[SI]     ;用BL中的数依次比较数据区DATA1中的数
              JB        NEXT2
              XCHG      BL,[SI]     ;如果BL中的数大于数据区DATA1中的数则交换两者
      NEXT2:  DEC       SI
              LOOP      MIN
              MOV       DH,BH       ;将最大值赋给DH
              CALL      LIST        ;显示最大值
              MOV       DH,BL       ;将最小值赋给DH
              CALL      LIST        ;显示最小值
              MOV       AH,4CH
              INT       21H
        LIST  PROC                  ;将DH中的数用十六进制显示
              MOV       CH,2
              MOV       CL,4
      NEXT3:  ROL       DH,CL
              MOV       DL,DH
              AND       DL,0FH
              ADD       DL,30H
              CMP       DL,39H
              JBE       PRINT
              ADD       DL,07H
      PRINT:  MOV       AH,2H
              INT       21H
              DEC       CH
              JNZ       NEXT3
              MOV       DL,0DH
              MOV       AH,02H
              INT       21H
              MOV       DL,0AH
              MOV       AH,02H
              INT       21H
              RET
        LIST  ENDP
        CODE  ENDS
              END       START

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -