0

嗨,我正在尝试学习汇编语言emu8086。并且目前正在尝试学习循环。我将发布的所有问题都是出于个人好奇心。首先我输入我想输入的值的数量。问题是我正在尝试使用循环输出来显示我使用输入循环存储在 bx 中的值。由于某种原因,我的输出循环不起作用。请帮忙。

                                                                                                      include 'emu8086.inc'
      .model small          
      .code
      start:
      mov ah,01h                                             
      int 21h
      sub al,'0'
      mov cl, al
      mov ch,0
      mov bx,0
      push cx
      input:
            mov ah,01h
            int 21h
            mov [2000+bx],al
            inc bx   
           loop input 

           pop cx
           output:    
            mov dx,[2000+bx]   


            mov ah,02h 

            int 21h  

            inc bx


 loop output

结束开始

4

1 回答 1

0

您的代码有两个问题:

  • 您需要bx在输出循环之前重置为零。

  • int 21h您应该使用with优雅地退出到 DOS 来结束您的程序ax = 4c00h

于 2013-07-29T08:12:32.193 回答