assembly language program to separate even and odd numbers in 8086

.model small

.data 
     arr1    db 1,2,3,1,3,5,6,3,4,5
     OddArr  db 10 dup(?)
     EvenArr db 10 dup(?)
     OddAdd  db 0
     EvenAdd db 0

.code
     mov ax,@data
     mov ds,ax

     LEA BX,arr1
     LEA SI,OddArr
     LEA DI,EvenArr
     mov cx,10
     mov dh,02

     L1:
          mov ah,00
          mov al,[BX]
          mov dl,al
          div dh
          cmp ah,00
          je EVEN1
          mov [DI],dl
          add OddAdd,dl
          INC DI
          INC BX
          Loop L1
          jmp CAL


     EVEN1:
          mov [SI],dl
          add EvenAdd,dl
          INC SI 
          INC BX
          Loop L1

     CAL:     
          mov ax,0000
          mov bx,0000
          mov al,OddAdd
          mov bl,EvenAdd

          mov ax,4C00h
          int 21h

end

4
2
Kyung Yoo 105 points

                                    .model small

.data 
     arr1    db 1,2,3,1,3,5,6,3,4,5
     OddArr  db 10 dup(?)
     EvenArr db 10 dup(?)
     OddAdd  db 0
     EvenAdd db 0

.code
     mov ax,@data
     mov ds,ax

     LEA BX,arr1
     LEA SI,OddArr
     LEA DI,EvenArr
     mov cx,10
     mov dh,02

     L1:
          mov ah,00
          mov al,[BX]
          mov dl,al
          div dh
          cmp ah,00
          je EVEN1
          mov [DI],dl
          add OddAdd,dl
          INC DI
          INC BX
          Loop L1
          jmp CAL


     EVEN1:
          mov [SI],dl
          add EvenAdd,dl
          INC SI 
          INC BX
          Loop L1

     CAL:     
          mov ax,0000
          mov bx,0000
          mov al,OddAdd
          mov bl,EvenAdd

          mov ax,4C00h
          int 21h

end

4 (2 Votes)
0
Are there any code examples left?
Made with love
This website uses cookies to make IQCode work for you. By using this site, you agree to our cookie policy

Welcome Back!

Sign up to unlock all of IQCode features:
  • Test your skills and track progress
  • Engage in comprehensive interactive courses
  • Commit to daily skill-enhancing challenges
  • Solve practical, real-world issues
  • Share your insights and learnings
Create an account
Sign in
Recover lost password
Or log in with

Create a Free Account

Sign up to unlock all of IQCode features:
  • Test your skills and track progress
  • Engage in comprehensive interactive courses
  • Commit to daily skill-enhancing challenges
  • Solve practical, real-world issues
  • Share your insights and learnings
Create an account
Sign up
Or sign up with
By signing up, you agree to the Terms and Conditions and Privacy Policy. You also agree to receive product-related marketing emails from IQCode, which you can unsubscribe from at any time.
Creating a new code example
Code snippet title
Source