如何利用汇编语言编写一个程序来判断一个数的奇偶性
; 判断一个数的奇偶性程序,输入一个数字,输出0代表偶数,1代表奇数
.MODEL SMALL ; 指定模式为小模式
.STACK 100h ; 设置栈空间大小为256字节
.DATA ; 数据段
num DW 0 ; 存储用户输入的数字
res DB 0 ; 存储判断结果
prompt1 DB 'Please input a number:$' ; 申请一个变量保存由于用户输入的信息
prompt2 DB 0AH,0DH,'The result is: $' ; 申请一个变量保存显示判断结果的信息
.CODE ; 代码段开始标志
MAIN PROC ; main函数开始标志
MOV AX, @DATA ; 加载DS寄存器
MOV DS, AX ; 向DS寄存器加载地址
LEA DX, prompt1 ; 加载DX寄存器以便显示prompt1中的内容
MOV AH, 9 ; 读取键盘内容功能号9H
INT 21H ; DOS中断21H,读取键盘内容
SUB AL, 30H ; ASCII to DECIMAL
MOV num, AX ; 把得到的DECIMAL传递到num中
AND num, 0000001BH ; AND运算以便得到末位bit位(奇/偶)
CMP num , 0 ; 比较末位bit是否是0 (即是否是偶数)
JE EVEN ; 若末位bit为0 (即是否是偶数) ,则执行EVEN函数
JMP ODD ; 若末位bit不为0 (即不是偶数) ,则执行ODD函數
EVEN: ; EVEN函數開始标志
MOV res , 00h ̵ͬͬͬͬͬͬͬͬ
JMP DISPLAY
ODD: ̵
MOV res , 01h ̵
DISPLAY:
LEA DX , prompt2
MOV AH , 09h ̵
INT 21H MOV DL , res MOV AH , 02h INT 21H MOV AH , 4CH INT 21H MAIN ENDP END MAIN
创作工场
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!