问题

从键盘输入一个十进制个位数,在屏幕上显示相应数量的该数。
例如,输入3,屏幕上将显示“333”。

代码

data segment
  hitinput db 'please input a number:$';输入提示语句
  hitoutput db 'it is ouput:$';输出提示语句
  crlf db 0ah,0dh,'$';回车换行
data ends
code segment
assume cs:code,ds:data
main proc far
start:
  mov ax,data
  mov ds,ax
  lea dx,hitinput;输入十进制数的提示语
  mov ah,09h
  int 21h
  lea dx,crlf;回车换行
  mov ah,09h
  int 21h
  mov ah,01h  ;把a保存在cl中
  int 21h
  sub al,30h;先减去30h,保存dl的十进制数
  mov cl,al
  lea dx,crlf;回车换行
  mov ah,09h
  int 21h
  
  lea dx,hitoutput;输出和的提示语
  mov ah,09h
  int 21h
  lea dx,crlf;回车换行
  mov ah,09h
  int 21h
  mov ch,0
  mov dl,cl
  add dl,30h;加上30h,输出ascill值
L1:             ;循环输出dl
  mov ah,02h
  int 21h
  loop L1
  mov ax,4c00h
  int 21h
main endp
code ends
end start

运行结果