汇编程序求sum=1+2+3+.>100,并求出累加的最后一个自然数的值code segmentmain proc farassume cs:codestart:mov bl,1mov al,0begin:add al,blinc blcmp al,100jle beginadd bl,30hmov dl,blmov ah,02hint 21hmov ah,4chint 21hretmain endpcode end
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 19:46:13
![汇编程序求sum=1+2+3+.>100,并求出累加的最后一个自然数的值code segmentmain proc farassume cs:codestart:mov bl,1mov al,0begin:add al,blinc blcmp al,100jle beginadd bl,30hmov dl,blmov ah,02hint 21hmov ah,4chint 21hretmain endpcode end](/uploads/image/z/2477642-50-2.jpg?t=%E6%B1%87%E7%BC%96%E7%A8%8B%E5%BA%8F%E6%B1%82sum%3D1%2B2%2B3%2B.%3E100%2C%E5%B9%B6%E6%B1%82%E5%87%BA%E7%B4%AF%E5%8A%A0%E7%9A%84%E6%9C%80%E5%90%8E%E4%B8%80%E4%B8%AA%E8%87%AA%E7%84%B6%E6%95%B0%E7%9A%84%E5%80%BCcode+segmentmain+proc+farassume+cs%3Acodestart%3Amov+bl%2C1mov+al%2C0begin%3Aadd+al%2Cblinc+blcmp+al%2C100jle+beginadd+bl%2C30hmov+dl%2Cblmov+ah%2C02hint+21hmov+ah%2C4chint+21hretmain+endpcode+end)
汇编程序求sum=1+2+3+.>100,并求出累加的最后一个自然数的值code segmentmain proc farassume cs:codestart:mov bl,1mov al,0begin:add al,blinc blcmp al,100jle beginadd bl,30hmov dl,blmov ah,02hint 21hmov ah,4chint 21hretmain endpcode end
汇编程序求sum=1+2+3+.>100,并求出累加的最后一个自然数的值
code segment
main proc far
assume cs:code
start:mov bl,1
mov al,0
begin:add al,bl
inc bl
cmp al,100
jle begin
add bl,30h
mov dl,bl
mov ah,02h
int 21h
mov ah,4ch
int 21h
ret
main endp
code ends
end start
为什么我的这个程序运行是错的
汇编程序求sum=1+2+3+.>100,并求出累加的最后一个自然数的值code segmentmain proc farassume cs:codestart:mov bl,1mov al,0begin:add al,blinc blcmp al,100jle beginadd bl,30hmov dl,blmov ah,02hint 21hmov ah,4chint 21hretmain endpcode end
add al,bl
这句就错了,al是8位的寄存器,只能存储0-255之间的数字,你的结果超过了啊.应该用ax