upsidedown

lin ser (mi) r.p

Mar 9th, 2012
116
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. X       DW 40 DUP (?)
  8. N       DW (?)
  9. KEY     DW (?)
  10. STRING  DB 40 DUP (?)
  11. I       DW 0001H
  12. FLAG    DB 0002H
  13. PROMPT1 DB 'ENTER THE NUMBER OF ELEMENTS'
  14.         DB CR,LF,0
  15. PROMPT2 DB 'ENTER THE ELEMENTS'
  16.         DB CR,LF,0
  17. PROMPT3 DB 'ENTER THE ELEMENT TO BE SEARCHED'
  18.         DB CR,LF,0
  19. PROMPT4 DB CR,LF,'THE ELEMENT HAS BEEN FOUND IN POSITION'
  20. POS     DB 40 DUP (?)
  21.         DB CR,LF,0
  22. PROMPT5 DB 'THE ELEMENT IS NOT FOUND'
  23.         DB CR,LF,0
  24. DATA ENDS
  25.  
  26. CODE SEGMENT
  27. ASSUME CS:CODE,DS:DATA
  28.  
  29. START:  MOV AX,SEG DATA
  30.         MOV DS,AX
  31.        
  32. PROMPT: OUTPUT PROMPT1
  33.         INPUTS STRING,40
  34.         ATOI STRING
  35.         MOV N,AX
  36.        
  37.         OUTPUT PROMPT2
  38.         MOV BX,N
  39.         MOV SI,OFFSET X
  40. AGAIN:  INPUTS STRING,40
  41.         ATOI STRING
  42.         MOV [SI],AX
  43.         INC SI
  44.         INC SI
  45.         DEC BX
  46.         JNZ AGAIN
  47.        
  48.         OUTPUT PROMPT3
  49.         INPUTS STRING,40
  50.         ATOI STRING
  51.         MOV KEY,AX
  52.                
  53.         XOR CX,CX
  54.         XOR SI,SI
  55.         MOV CX,N
  56.         MOV SI,OFFSET X
  57.  
  58. CHECK:  MOV AX,[SI]
  59.         MOV DX,KEY
  60.         CMP DX,AX
  61.         JZ FND
  62.         JNZ INCRE
  63.        
  64. FND:    ITOA POS,I
  65.         OUTPUT PROMPT4
  66.         MOV FLAG,0001H
  67.         MOV AX,0001H
  68.         CMP AX,0001H
  69.         JZ INCRE
  70.        
  71. INCRE:  INC I
  72.         INC SI
  73.         INC SI
  74.         DEC CX
  75.         JNZ CHECK
  76.        
  77.         CMP FLAG,0002H
  78.         JZ NFD
  79.         JNZ NXT
  80.        
  81. NFD:    OUTPUT PROMPT5
  82. NXT:
  83.  
  84. QUIT:   MOV AL,0
  85.         MOV AH,4CH
  86.         INT 21H
  87.        
  88. CODE ENDS
  89. END START
  90.        
  91.        
  92.        
  93.                
  94. OUTPUT:
  95. ENTER THE NUMBER OF ELEMENTS
  96. 5
  97. ENTER THE ELEMENTS
  98. 4
  99. 2
  100. 1
  101. 2
  102. 2
  103. ENTER THE ELEMENT TO BE SEARCHED
  104. 2
  105.  
  106. THE ELEMENT HAS BEEN FOUND IN POSITION     2
  107. THE ELEMENT HAS BEEN FOUND IN POSITION     4
  108. THE ELEMENT HAS BEEN FOUND IN POSITION     5
Advertisement
Add Comment
Please, Sign In to add comment