zoukankan      html  css  js  c++  java
  • 汇编 十个数求其最大值(第二步)

    上篇我们讲到如何将内存中的三个数找出来,这篇我们继续将找出来的三个数完成比较,并且把最大的那个数对应的ASCII码输出到屏幕

    DATA SEGMENT
            DATABASE DB 61H,66H,56H
            DATA_MAX DB 00H
    DATA ENDS

    CODE SEGMENT
            ASSUME CS:CODE,DS:DATA
    START:
            MOV AX,DATA
            MOV DS,AX

            MOV CX,3
            MOV BX,OFFSET DATABASE                                    ;将变量首地址放入BX寄存器
            MOV DL,BYTE PTR DS:[BX]                                        ;初始化DL寄存器为第一个数据
            MOV DATA_MAX,DL                                                     ;初始化最大值为第一个数据
    GETMAX:
            MOV DL,BYTE PTR DS:[BX]
            CMP DL,DATA_MAX                                                        ;比较最大数和当前数
            JG TEMP                                                                             ;如果当前数大于前一步的最大数则跳转
    SIGN:
            INC BX                                                                                ;地址加一,指向当前数的下一个数
            LOOP GETMAX                                                                ;循环求取最大值
            MOV DL,DATA_MAX
            MOV AH,02H
            INT 21H
            MOV AH,4CH
            INT 21H

    TEMP:
            MOV DATA_MAX,DL
            JMP SIGN
    CODE ENDS
            END START

  • 相关阅读:
    sikiA计划问题记录
    列表+泛型
    查看别人项目找代码的方法
    Unity3d 异常与解决方案集合(持续)
    实现继承+接口继承+虚方法+隐藏方法+this/base+抽象类+密封类/方法+修饰符
    定义类+类实例化+属性+构造函数+匿名类型var+堆与栈+GC回收机制+值类型与引用类型
    局部变量和成员变量的区别
    数组元素二分查找(折半查找)
    数组元素冒泡排序
    数组元素选择排序
  • 原文地址:https://www.cnblogs.com/viplanyue/p/12700586.html
Copyright © 2011-2022 走看看