8086汇编程序设计:对输入的十进制5位数求和输出

这篇博客详细介绍了如何使用8086汇编语言设计一个程序,该程序能接收用户输入的5位十进制数,并计算其各位数字之和。程序在emu8086模拟环境中能够正确运行,实现了从键盘获取输入并显示求和结果的功能。
摘要由CSDN通过智能技术生成

要求用户从键盘输入一个5 位的整数,计算并输出该数的各位之和。要求:提示输入一十进制数;键盘输入

在emu8086环境下成功运行

DATAS SEGMENT
    STRING1 DB 0,0,'$';此处输入数据段代码  
DATAS ENDS


CODES SEGMENT
    ASSUME CS:CODES,DS:DATAS
START:
JUDGE:         ;FIRST
    CMP CX,10H
    JA COUNT
    
    MOV AH,1
    INT 21H
    
    CMP AL,30H
    JZ ERROR
    JB ERROR
    CMP AL,39H
    JA ERROR
    
    SUB AL,30H
    ADD BL,AL
    INC CX
KIN:          ;KEEP INPUT 4 NUMS
    
    
    MOV AH,1
    INT 21H
    
    CMP AL,30H
    JB ERROR
    CMP AL,39H
    JA ERROR
     
    SUB AL,30H
    ADD BL,AL
    INC CX
    
    CMP CX,5H
    JZ TRANS
    
    JMP KIN
ERROR:
    MOV AX,0
    MOV CX,0
    MOV BX,0
    
    MOV AH,2
    MOV DL,0DH
    INT 21H
    MOV AH,2
    MOV DL,0AH
    INT 21H  
    
    JMP START
COUNT:          ;INITIAL CX
    MOV CX,0H  
    JMP START
TRANS:          ;OUTPUT
    MOV AX,0H
    MOV AX,BX
    MOV DL,10
    DIV DL
    ADD AX,3030H
    MOV STRING1,AL
    MOV STRING1+1,AH
    
    MOV AH,2
    MOV DL,0DH
    INT 21H
    MOV AH,2
    MOV DL,0AH
    INT 21H
    
    MOV DX,OFFSET (STRING1)
    MOV AH,09
    INT 21H
    
    MOV AH,4CH
    INT 21H    
    
    
CODES ENDS
    END START

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值