汇编语言从键盘上输入1个数,不大于5位,以回车键结束。判断其奇偶性。

emu8086汇编语言

从键盘上输入1个数(不大于5位,以回车键结束),判断其奇偶性,如果是奇数,屏幕上显示"It is odd",否则显示"It is even"。

注:程序仅供大家交流参考,请勿照搬照抄哈。


data segment   
string0 db "Input a number:$"; 
string1 db "It is odd.$";   
string2 db "It is even.$";    
n db 10;
ends

stack segment
dw   128  dup(0)
ends

code segment   
assume cs:code,ds:data;
start:  
    mov ax, data; //output string0   
    mov ds, ax; 
    lea dx, string0;   
    mov ah, 9;   
    int 21h;   
    mov bx,0000h;

l0: mov ah, 1;//input number   
    int 21h;    
    cmp al,0dh;   
    jz l1;   
    sub al,30h;   
    xchg bx,ax;
    mul n;
    add bx,ax;
    jmp l0;

l1: mov ah,2;
    mov dl,0ah;
    int 21h;
    mov dl,0dh;
    int 21h;//\n \r
    
    mov dx,0000h;
    mov ax,bx;
    mov si,2;
    div si;
    cmp dx,00000000;   
    je l2;  
    jmp l3

l2: mov ax,data;//It is even  
    mov ds,ax;
    lea dx,string2;   
    mov ah,9h;
    int 21h;  
    mov ax,4c00h;
    int 21h;   
    
l3: mov ax,data;//It is odd
    mov ds,ax;   
    lea dx,string1;   
    mov ah,9h;   
    int 21h;   
    mov ax, 4c00h ;   
    int 21h ;   
ends;

end start ; 

  • cmp dx,00000000; 一句,立即数要注意写成8位。
  • 请勿照搬照抄哈。
  • 请勿照搬照抄哈。
  • 请勿照搬照抄哈。

你可能感兴趣的:(汇编语言从键盘上输入1个数,不大于5位,以回车键结束。判断其奇偶性。)