upsidedown

mi 4 r.p (Working)

Mar 2nd, 2012
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. INCLUDE IO.H
  2.  
  3. CR EQU 0DH
  4. LF EQU 0AH
  5.  
  6. DATA SEGMENT
  7. N       DW (?)
  8. X       DW 40 DUP (?)
  9. I       DW 0001H
  10. TEMP    DW (?)
  11. STRING  DB 40 DUP (?)
  12. PROMPT1 DB 'ENTER THE NUMBER OF ELEMENTS IN THE ARRAY:'
  13.         DB CR,LF,0
  14. PROMPT2 DB 'ENTER THE ELEMENTS:'
  15.         DB CR,LF,0
  16. RES     DB 'THE SORTED ARRAY IS :'
  17.         DB CR,LF,0
  18. ARR     DB ' '
  19. SARR    DB 40 DUP (?)
  20.         DB CR,LF,0
  21. DATA ENDS
  22.  
  23. CODE SEGMENT
  24. ASSUME  CS:CODE,DS:DATA
  25.  
  26. START:  MOV AX,SEG DATA
  27.         MOV DS,AX
  28.        
  29. PROMPT: OUTPUT PROMPT1
  30.         INPUTS STRING,40
  31.         ATOI STRING
  32.         MOV N,AX
  33.        
  34.         MOV SI,OFFSET X
  35.         MOV BX,N
  36.         OUTPUT PROMPT2
  37. AGAIN:  INPUTS STRING,40
  38.         ATOI STRING
  39.         MOV [SI],AX
  40.         INC SI
  41.         INC SI
  42.         DEC BX
  43.         JNZ AGAIN
  44.        
  45.         MOV BX,N
  46.         MOV CX,N
  47.         SUB CX,0001H
  48.        
  49. OUTER: 
  50.         SUB BX,I
  51.         MOV SI,OFFSET X
  52.         MOV DI,SI
  53.         INC DI
  54.         INC DI
  55.        
  56. INNER:
  57.         MOV AX,[SI]
  58.         MOV DX,[DI]
  59.         CMP AX,DX
  60.        
  61.         JS SWAP
  62.         JG INCRE
  63.        
  64. SWAP:   MOV AX,[SI]
  65.         MOV DX,[DI]
  66.         MOV [SI],DX
  67.         MOV [DI],AX
  68.        
  69.        
  70. INCRE: 
  71.         INC SI
  72.         INC SI
  73.         INC DI
  74.         INC DI
  75.         DEC BX
  76.         JNZ INNER
  77.        
  78.         MOV BX,N
  79.         INC I  
  80.         DEC CX     
  81.         JNZ OUTER
  82.        
  83.         MOV SI,OFFSET X
  84.         MOV CX,N
  85.         OUTPUT RES
  86. AGAIN1: ITOA SARR,[SI]
  87.         OUTPUT ARR
  88.         INC SI
  89.         INC SI
  90.         DEC CX
  91.         JNZ AGAIN1
  92.        
  93. QUIT:   MOV AL,0
  94.         MOV AH,4CH
  95.         INT 21H
  96. CODE ENDS
  97. END START
  98.  
  99. output:
  100. ENTER THE NUMBER OF ELEMENTS IN THE ARRAY:
  101. 5
  102. ENTER THE ELEMENTS:
  103. 13
  104. 42
  105. 98
  106. 2
  107. 15
  108. THE SORTED ARRAY IS :
  109.      98     42     15     13      2
Advertisement
Add Comment
Please, Sign In to add comment