57.asm

来自「本书为清华大学第二版汇编语言的课后题详解」· 汇编 代码 · 共 34 行

ASM
34
字号
;57.asm  此题改成了10个数

datasg  segment
  data  dw 122,11,22,10,6,4,2,-6,-88,13
datasg  ends

codesg  segment
main    proc   far
        assume cs:codesg,ds:datasg
start:
        push ds
        sub  ax,ax
        push ax

        mov  ax,datasg
        mov  ds,ax

        mov  ax,07ffeh  ;ax 中先赋值为最大的偶数
        mov  si,0
        mov  cx,10   ;循环次数

loop1:  mov  bx,data[si]
        shr  bx,1
        jc   next    ;判断最后一位是否为1,若为1,则是奇数,继续判断下一个数
        cmp  ax,data[si]  ;比较ax中的数和目前找到的偶数
        jle  next         ;若ax中的数小,继续判断下一个数
        mov  ax,data[si]
next:   add  si,2
        loop loop1
        ret
main    endp
codesg  ends
        end  start

⌨️ 快捷键说明

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