彙編求數組最小值

彙編求數組中的最小值,串操作指令實現

主要用到的知識

LODSW 從串中讀取指令



 DATA  SEGMENT     
TABLE     DW  12,32,43,65,76,8,7,6,4,3,56,76,45,34,5;15個數,最小值爲 3
MIN DW  0
DATA  ENDS  
STAK  SEGMENT
      DW 20H DUP(?)
STAK  ENDS
CODE  SEGMENT
      ASSUME CS:CODE,DS:DATA
START:MOV AX,DATA
      MOV DS,AX;把值賦給DS
      LEA SI,TABLE ;取da首地址給SI
      MOV AX,0
      MOV BX,[SI]  ;將DA[0]值賦給MAX 
      MOV CX,14 ;循環15次,table[0]不用修改      
LOP:  LODSW ;AL<=DS[SI]  SI=SI+2 
      CMP BX,AX ; MIN  與AL比較   
      JB L1   ;若BL大於或等於AL則跳轉到L1     
      MOV BX,AX
L1: LOOP LOP ;若CX!= 0 則繼續跳轉到LOP       
     MOV MIN,BX      
     MOV AH, 02H
     MOV DX,BX
     INT 21H      
     MOV AX,4C00H ;返回DOS 退出程序
     INT 21h 

CODE  ENDS
      END START

結果如下:

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章