用汇编语言编写源程序,判断X的值是否在5<X<24,若是则显示very good如不...

发布网友 发布时间:2024-12-24 04:40

我来回答

1个回答

热心网友 时间:5分钟前

这是我帮你调试好的程序,可以直接编译运行。在这里我假设了X的值,并放入了AX寄存器中,然后进行了判断,可以正确输出结果。希望能对你有帮助

data segment
correct byte 'very good!$' ;$这个符号是中断程序的字符串结束符
error byte 'ERROR!$'
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax ;ds中保存显示字符串的段地址

mov ax,30 ;假如30是X的值,可以先将X的值放入ax寄存器中
cmp ax,5
jbe er ;如果ax(即X的值小于或等于5)就跳转至er
cmp ax,24
ja er ;如果ax(即X的值大于或等于24)就跳转至er
jmp co ;如果ax(即X的值大于5并小于24)就跳转至co

er :mov dx,offset error ;dx中保存字符串的偏移地址
mov ah,9 ;9表示调用21号中断中的9号子程序,用于输出字符串
int 21h ;调用21号中断
jmp en
co :mov dx,offset correct
mov ah,9
int 21h

en :mov ax,4c00h ;ax,4c00即 ah=4c 表示调用4c号子程序(返回程序),al=0表示返回值是0
int 21h ;调用21h号中断程序
code ends
end start

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com