联盟 发表于 2013-7-9 02:21:58

想了很久都没有明白的问题

assume cs:code
code segment
    assd:mov bx,0
mov cx,12
s:mov ax,0ffffh
    mov ds,ax
mov dl,   问题就在这段,前面的【bx]里面都没有值为什么调试到这段的时候就dl的值变成00ea了郁闷了好久
mov ax,0020h
mov ds,ax
mov ,dl
inc bx
loop s
mov ax,4c00H
int 21H
code ends
end assd

Dardy 发表于 2013-7-9 02:21:59

mov dl,这不是把寄存器BX的值传送到dl,显然也不能,它俩的长度都不一样。
而是把DS:处的一个字节传送到dl.
DS: 最开始的就是 FFFF:0
在debug里用D命令显示这处内存里的值,你可以对比一下。

联盟 发表于 2013-7-10 02:58:44

哥们很感谢你,我还是没有明白,不过我想是我前面的没有学扎实,还在倒回去在学

联盟 发表于 2013-7-10 03:07:09

Dardy 发表于 2013-7-9 02:21 static/image/common/back.gif
mov dl,这不是把寄存器BX的值传送到dl,显然也不能,它俩的长度都不一样。
而是把DS:处的一个字节传送到d ...

哥们很感谢你,我还是没有明白,不过我想是我前面的没有学扎实,还在倒回去在学。。。刚才下载了个0基础学制作操作系统,还聚精会神的看了2个钟头,现在一想觉得自己很搞笑,汇编才学到甲鱼哥汇编视频30集这里C语言才会写个hello wold哎还是实际点踏踏实实学完汇编和C

Dardy 发表于 2013-7-10 03:11:19

联盟 发表于 2013-7-10 03:07 static/image/common/back.gif
哥们很感谢你,我还是没有明白,不过我想是我前面的没有学扎实,还在倒回去在学。。。刚才下载了个0基础学 ...

我也菜,但汇编真心不难,只是要记的东东多,主要弄清楚寻址方式。加油
页: [1]
查看完整版本: 想了很久都没有明白的问题