Assembly 如何重新编写这个assemly lang.program,以便它可以将传递给它的任何数字加倍 ;双击此程序提示用户输入 ;数字

Assembly 如何重新编写这个assemly lang.program,以便它可以将传递给它的任何数字加倍 ;双击此程序提示用户输入 ;数字,assembly,x86,dos,Assembly,X86,Dos,输入多位数: 从0开始,然后将迄今为止得到的值乘以10,添加新数字,对输入的所有数字重复此操作 输出多位数: 从一个空字符串开始,重复将数字除以10;保持商。除法的剩余部分告诉输出字符串的前置数字。当值大于0时,对商重复此操作 使用其他基数: 用表示基数的数字替换上面的“十”。欢迎使用超级用户。尽管这是一个错误的站点,但它的格式太差,我们无法将其迁移到正确的站点。请花几分钟时间来解决这个问题,将其清理干净,正确设置格式,并包含正确的内容,以便我们知道您的问题。简单地将代码剪切和粘贴到问题块中是不

输入多位数: 从0开始,然后将迄今为止得到的值乘以10,添加新数字,对输入的所有数字重复此操作

输出多位数: 从一个空字符串开始,重复将数字除以10;保持商。除法的剩余部分告诉输出字符串的前置数字。当值大于0时,对商重复此操作

使用其他基数:
用表示基数的数字替换上面的“十”。

欢迎使用超级用户。尽管这是一个错误的站点,但它的格式太差,我们无法将其迁移到正确的站点。请花几分钟时间来解决这个问题,将其清理干净,正确设置格式,并包含正确的内容,以便我们知道您的问题。简单地将代码剪切和粘贴到问题块中是不可接受的。如果您需要帮助,请阅读。的准确副本。伙计们,家庭作业可以帮助你学习。。。 ;DOUBLE This program prompt the user to enter ;a number <5, ;doubles the number, and outputs the result name double .model small .stack .data prompt db 0ah,0dh,"Enter a number <5:$" msg db 0ah,0dh,"Double your number is :" result db ?,0ah,0dh,"$" .code start: mov ax,@data move ds,ax lea dx,prompt mov ah,9 ;dos fn to outputstring up to $ int 21h mov ab,1 ;dos fn to input byte into al int 21h sub al,30h ;Convert from ascii to single digit integer add al,al add al,30h ;Convert back to ascii mov result,al lea dx,msg mov ah,9 int 21h mov ax,4c00h ;4c in ah is dos exit int 21h end start