Logo 
Search:

Assembly Language Articles

Submit Article
Home » Articles » Assembly Language » GeneralRSS Feeds

Program that reads a digit, computes and prints 'P' if it is positive, 'N' if it is negative and 'Z' if it is zero( Simulation of switch-case statemt)

Posted By: Easy Tutor     Category: Assembly Language     Views: 3035

An AL Program that reads a digit, computes and prints 'P' if it is positive, 'N' if it is negative and 'Z' if it is zero ( Simulation of switch-case statement ).

Code for Program that reads a digit, computes and prints 'P' if it is positive, 'N' if it is negative and 'Z' if it is zero( Simulation of switch-case statemt) in Assembly Language

 .MODEL SMALL
 .STACK 100H

 .DATA
    PROMPT  DB  'Enter the digit : $'
    MSG     DB  'The entered digit is : $'

 .CODE
   MAIN PROC
     MOV AX, @DATA                ; initialize DS
     MOV DS, AX

     LEA DX, PROMPT               ; load and print PROMPT
     MOV AH, 9
     INT 21H

     MOV AH, 1                    ; read a character
     INT 21H

     MOV BL, AL                   ; save the input character into BL

     MOV AH, 2                    ; carriage return
     MOV DL, 0DH
     INT 21H

     MOV DL, 0AH                  ; line feed
     INT 21H

     LEA DX, MSG                  ; load and print MSG
     MOV AH, 9
     INT 21H

     CMP BL, 30H                  ; compare input digit and 0

     JL @NEGATIVE                 ; jump to label @NEGATIVE if digit<0
     JZ @ZERO                     ; jump to label @ZERO if digit=0
     JG @POSITIVE                 ; jump to label @POSITIVE if digit>0

     @NEGATIVE:                   ; jump label
       MOV DL, 'N'
       JMP @DISPLAY               ; jump to label @DISPLAY

     @ZERO:                       ; jump label
       MOV DL, 'Z'
       JMP @DISPLAY               ; jump to label @DISPLAY

     @POSITIVE:                   ; jump label
       MOV DL, 'P'
       JMP @DISPLAY               ; jump to label @DISPLAY

     @DISPLAY:                    ; jump label
       MOV AH, 2                  ; print the character
       INT 21H

     MOV AH, 4CH                  ; return control to DOS
     INT 21H
   MAIN ENDP
 END MAIN

 ;**************************************************************************;
 ;**************************************************************************;
 ;------------------------------  THE END  ---------------------------------;
 ;**************************************************************************;
 ;**************************************************************************;
  
Share: 



Easy Tutor
Easy Tutor author of Program that reads a digit, computes and prints 'P' if it is positive, 'N' if it is negative and 'Z' if it is zero( Simulation of switch-case statemt) is from United States. Easy Tutor says

Hello Friends,

I am Free Lance Tutor, who helped student in completing their homework.

I have 4 Years of hands on experience on helping student in completing their homework. I also guide them in doing their final year projects.

I have share many programs on this website for everyone to use freely, if you need further assistance, than please contact me on easytutor.2ya [at the rate] gmail [dot] com

I have special discount scheme for providing tutor services. I am providing tutor service to students from various contries, currently most of my students are from United States, India, Australia, Pakistan, Germany, UK and Canada.

I am also here to expand my technical network to receive more opportunity in my career, make friends to help them in resolving their technical problem, learn and share my knowledge, If you like to be my friend, Please send me friend request.

Thanks,
Happy Programming :)

 
View All Articles

Related Articles and Code:


 

Other Interesting Articles in Assembly Language:


 
Please enter your Comment

  • Comment should be atleast 30 Characters.
  • Please put code inside [Code] your code [/Code].

 
No Comment Found, Be the First to post comment!