当前位置:编程学习 > 汇编语言 >>

编程计算1+2+……+99=? 要求:1、汇编语言; 2、采用子程序调用的形式。

答案:TITLE 1+2+3+4+5+...99=? data segment sum dw 0 data ends stack segment para stack db 100 dup(?) stack ends code segment assume cs:code,ds:data,es:data,ss:stack sub1 proc far start: push ds mov ax,0 push ax mov ax,data mov ds,ax mov es,ax mov cx,99 mov ax,1 next: add sum,ax inc ax loop next mov ax,sum mov al,ah call sub3 mov ax,sum call sub3 mov dl,"H" mov ah,2 int 21h ret SUB1 ENDP SUB3 PROC mov bl,al shr al,1 shr al,1 shr al,1 shr al,1 CALL SUB2 mov al,bl and al,0fh CALL SUB2 ret SUB3 ENDP SUB2 PROC cmp al,9 ja g1 add al,"0" jmp g2 g1: add al,37h g2: mov dl,al mov ah,2 int 21h RET SUB2 ENDP code ends end start

上一个:C语言夹带的汇编语言出错operand size conflict
下一个:请各位好友推荐几本关于学习单片机的汇编语言教材 谢谢了 急求

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,