13977097047 发表于 2020-3-26 11:32:02

汇编语言王爽第二版监测点6.1的一个疑问,望大佬们解答一下

题目:下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据
代码如下:
assume cs:code
code segment

dw 0123h, 0456h, 0789h, 0abch, 0defh, 0fedh, 0cbah, 0987h
start: mov ax,0
       mov ds,ax
           mov bx,0          
           mov cx,8
s:   mov ax,          
       mov cs:,ax
           add bx,2
           loop s
          
mov ax,4c00h
int 21h

code ends
end start

我的cs是1ca5
我的debug显示 d0:0 f
是 d0 5aa2019e5ca2 01-96 5d a20108007000 这16个

但是程序运行完debug显示d1ca5 :0f
是 d0 5aa2019e5ca2 01-96 5d a2012c5d   a201这16个啊?

题目不是把0:0~0:15的内容写入1ca5:0~1ca5:15吗?为什么最后两个字单元内存不对啊?

等级低发不了图,望大佬们谅解!

yjcoke 发表于 2020-3-26 14:50:40

mov ax,cs:
mov ,ax
把你的替换一下

13977097047 发表于 2020-3-26 23:24:15

yjcoke 发表于 2020-3-26 14:50
mov ax,cs:
mov ,ax
把你的替换一下

啥意思啊??我题目没打错呀?{:5_107:}

405794672 发表于 2020-3-27 14:12:39

不明白。看程序并没有问题。那可能是你内部问题了。看程序你应该循环七次。最后只搞了六次。还是再想想吧

13977097047 发表于 2020-4-4 18:23:40

405794672 发表于 2020-3-27 14:12
不明白。看程序并没有问题。那可能是你内部问题了。看程序你应该循环七次。最后只搞了六次。还是再想想吧

好吧,主要是我感觉自己程序也没错啊,为啥就最后一步错了
页: [1]
查看完整版本: 汇编语言王爽第二版监测点6.1的一个疑问,望大佬们解答一下