ZhaoYuBetter 发表于 2014-3-10 22:21:18

第7章 问题7.2 程序执行完毕后,内存没有被修改

代码如下:不知道我程序哪里错误了。程序并没有复制。


;用寄存器SI和DI实现将字符串 ‘welcome to masm!’ 复制到它后面的数据区中;
assume cs:codesg,ds:datasg
datasg segment
        db 'welcome to masm!'
        db '..................ABC'
datasg ends
codesg segment
start:
        mov ax,datasg
        mov ds,ax
        mov si,0
        mov di,16        ;目标偏移地址
        mov cx,8
s:        mov ax,
        mov ,ax
        add si,2
        add di,2
        loop s
        mov ax,4c00h
        int 21h
codesg ends
end start


结果:


ZhaoYuBetter 发表于 2014-3-10 22:29:24

codesg segment
start:
        mov ax,datasg
        mov ds,ax
        mov si,0
        mov cx,8
s:        mov ax,0
        mov 16,ax
        add si,2
        loop s
        mov ax,4c00h
        int 21h
codesg ends

一样的结果,奇怪

枫界易城 发表于 2014-3-10 22:42:58

可以复制啊,我是用你的代码弄的!lz估计是没运行那个程序吧

ZhaoYuBetter 发表于 2014-3-10 23:13:42

-r 运行,-p 后,用 -d命令查看的内存

瓜瓜 发表于 2014-3-11 08:12:27

生成exe文件,用debug 1.exe,跟一下.

ZhaoYuBetter 发表于 2014-3-17 21:14:23

果然是没有执行。多谢啦
页: [1]
查看完整版本: 第7章 问题7.2 程序执行完毕后,内存没有被修改