坐等回答!!!!用汇编语言编写一程序,要求如下,输入一个数字,是偶数屏幕输出为0,奇数则输出为1.
1个回答
展开全部
调试通过!
DATAS SEGMENT
STR db 'Input:$'
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
lea dx,STR ;输出提示
mov ah,9
int 21h
s1:
mov ah,7 ;输入不回显
int 21h
cmp al,0dh ;判断字符 回车退出 非0-9重新输入
jz s3 ;如果在0-9之间 就判断奇偶
cmp al,30h
jb s1
cmp al,39h
ja s1
xor ah,ah ;字符减30H除以2 余数为0是偶数
sub al,30h ;否则是奇数
mov bl,2
div bl
mov dl,30h
cmp ah,0
jz s2
mov dl,31h
s2:
mov ah,2
int 21h
jmp s1
s3:
mov ah,0 ;等待输入
int 16h
MOV AH,4CH
INT 21H
CODES ENDS
END START
DATAS SEGMENT
STR db 'Input:$'
DATAS ENDS
CODES SEGMENT
ASSUME CS:CODES,DS:DATAS
START:
MOV AX,DATAS
MOV DS,AX
lea dx,STR ;输出提示
mov ah,9
int 21h
s1:
mov ah,7 ;输入不回显
int 21h
cmp al,0dh ;判断字符 回车退出 非0-9重新输入
jz s3 ;如果在0-9之间 就判断奇偶
cmp al,30h
jb s1
cmp al,39h
ja s1
xor ah,ah ;字符减30H除以2 余数为0是偶数
sub al,30h ;否则是奇数
mov bl,2
div bl
mov dl,30h
cmp ah,0
jz s2
mov dl,31h
s2:
mov ah,2
int 21h
jmp s1
s3:
mov ah,0 ;等待输入
int 16h
MOV AH,4CH
INT 21H
CODES ENDS
END START
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询