汇编语言-两位数加法

DATAS SEGMENT

a1 dw ?

a2 dw ?

    ;此处输入数据段代码 

DATAS ENDS

STACKS SEGMENT

    ;此处输入堆栈段代码

STACKS ENDS

CODES SEGMENT

    ASSUME CS:CODES,DS:DATAS,SS:STACKS

START:

    MOV AX,DATAS

    MOV DS,AX

    ;此处输入代码段代码

 A:  mov ah,1

    int 21h

    mov bl,al

    sub bl,30h

   

    mov ah,1

    int 21h

    sub al,30h

    mov cl,al

   

    mov al,10

   

    mul bl;bl*al->ax

    mov ch,0

    add ax,cx


mov a1,ax

   

    mov ah,2

    mov dl,'+'

    int 21h

   

    mov ah,1

    int 21h

    mov bl,al

    sub bl,30h

   

    mov ah,1

    int 21h

    sub al,30h

    mov cl,al

   

    mov al,10

   

    mul bl

    mov ch,0

    add ax,cx

   

    mov a2,ax

   

    mov ax,a1

    add ax,a2

   

   

    mov cl,10

    div cl

    mov dl,al;商存dl

    mov bh,ah;余存bh,

    mov dh,0

    mov ax,dx

    div cl

    

    mov bl,0

    cmp bl,al

    JB T

mov bl,ah;十位

    add bx,3030h

    

    mov ah,2

    mov dl,'='

    int 21h

   

    mov ah,2

    mov dl,bl

    int 21h

    mov ah,2

    mov dl,bh

    int 21h

    JMP F

 T:mov cl,al

 add cl,30h;百位

 mov bl,ah;十位

    add bx,3030h

   

    mov ah,2

    mov dl,'='

    int 21h

   

   mov ah,2

    mov dl,cl

    int 21h

    mov ah,2

    mov dl,bl

    int 21h

    mov ah,2

    mov dl,bh

    int 21h

    

    ;换行

    mov ah,2

    mov dl,10

    int 21h

    mov ah,2

    mov dl,13

    int 21h

    JMP A

 F:mov ah,2

    mov dl,10

    int 21h

    mov ah,2

    mov dl,13

    int 21h

 JMP A

    MOV AH,4CH

    INT 21H

CODES ENDS

    END START

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值