shansongh 发表于 2013-1-26 22:19:06

为何段寄存器可以直接加载数据,如ds等

本帖最后由 shansongh 于 2013-1-26 23:35 编辑

我的是win7
debug模式下,测试可以直接用
mov ds 1111
指令将段寄存器的值改为1111

shansongh 发表于 2013-1-26 22:20:05

内容求解释,不是说,必须经通用寄存器才能放进去吗?

shansongh 发表于 2013-1-26 23:33:55

高手来呀……

NGtailang 发表于 2013-1-27 09:30:13

无图无真相

shansongh 发表于 2013-1-27 09:34:34

NGtailang 发表于 2013-1-27 09:30 static/image/common/back.gif
无图无真相

笔记本没联网
回去我用手机发图上来

shansongh 发表于 2013-1-27 13:46:04

今天似乎又不行了,哎,难道我打错了?

568890662 发表于 2013-1-27 19:38:23

我是新手,不过我觉得只有CS才不能赋值,DS,ES应该是可以的。

aa7769640 发表于 2013-1-28 09:13:30

这个帖子不错,大家快来顶起来!

shansongh 发表于 2013-1-29 09:14:37

shansongh 发表于 2013-1-29 10:09:46

shansongh 发表于 2013-1-29 10:11:00

情况是这样的,我是在debug下,用r指令直接可以对段寄存器操作,结果后面我搞混了,认为可以直接对段寄存器操作,其实这是错的,因为r指令只是debug指令,不是汇编指令,可能是debug用汇编指令实现的一种间话指令,所以表现为可以直接对段寄存器进行修改

n2zee 发表于 2013-1-30 13:59:17

16位的才有段寄存器这个概念,32位的系统没有段寄存器的概念

稀饭放姜 发表于 2013-2-3 12:38:47

568890662 发表于 2013-1-27 19:38 static/image/common/back.gif
我是新手,不过我觉得只有CS才不能赋值,DS,ES应该是可以的。

无图无真相。。。。发图看看。呵呵
页: [1]
查看完整版本: 为何段寄存器可以直接加载数据,如ds等