robin921225 发表于 2015-8-11 15:53:51

实验4跪求大神帮助

实验4的第一题,(1) 编程,向内存0:200~0:23f依次传递数据0~63(3fh)。可能对于大神来说这题很简单,但我想了很久。请大神看看。

assume cs:code#这一行都知道什么意思

code segment # 这一行也知道
      mov ax, 20h #这一行是把20h转到通用寄存器,因为ds很害羞
      mov ds, ax # 把20h转到是ds中
      mov bx, 0 # 会用通用寄存器bx作为所传输的数据,所以先设为0
      mov cx, 64 #设置循环64次,因为一共有64个数字
s:      mov, bx #循环开始,把bx的数传输到ds×16+al的内存单元中
      inc bx # 增加bx的数值,
      inc al #增加al的数值,否则会永远覆盖的ds×16+al的同一个内存单元
      loop s      
      
      mov ax, 4c00h
      int 21h
      
      code ends
      end

在这里我想问问大神我的思路错了吗,为什么在会弹出errorA2031的错误。
另外关于增加al的数值的必要性,我看了很多人的答案都没有增加al。
谢谢各位帮助我的高手们。我是小甲鱼的新学生,希望各位关照{:5_92:}




无影飞飞雪 发表于 2015-8-11 16:26:20

s:      mov, bx    此时al是两位数,而偏移地址不应该是4位数吗
可以试试这样:
s:   mov , bx
   inc bx
   loop s
页: [1]
查看完整版本: 实验4跪求大神帮助