傲雪 发表于 2011-10-29 21:45:00

为什么不可以直接用这样的形势呢?

为什么不能直接用 mov ,11011111b   这样
而非要mov al,
         and al,11011111b
         mov ,al
请问一定要这样啊 请解释一下,我用mov ,11011111b试过,不行
这是为什么啊?

ever.g 发表于 2011-10-29 22:47:04

往内存写数据 要通过一个寄存器间接赋值,al就是写一个字节 ax等就是一个字
因为你mov ,11011111b 后面可以看成一个字节的十六进制数 DFh 也可以看成一个字的00dfh
而是指向DS:的内存地址,是写入一个字节 还是一个字呢?

可以mov byte ptr ,11011111b 这么写就不报错了(byte ptr 操作数为字节   word ptr 操作数为字dword ptr 操作数为双字   这个不知道你看到没~~)

还有你这问题还有个逻辑错误
mov ,al那里是把and al,11011111b的位运算的结果放入 偏移地址bx所指向的内存

你直接mov ,11011111b是要干嘛?

ever.g 发表于 2011-10-29 22:48:11

:loveliness:   我也才看到第10章学习中而已,有错误希望大牛指出。。

Mr.C 发表于 2011-10-29 22:54:50

mov al,
         and al,11011111b
         mov ,al
的意思是把bx地址的字母转换成大写。

mov ,11011111b
的意思是将11011111b赋值给

看你要实现什么目的了。
这两种表达,意思不一样。

yipwing 发表于 2011-10-29 22:59:22

我才看到第九章...
看来前面的知识要在去复习下...

090704020006 发表于 2011-10-31 20:39:26

看来LZ的问题是想说为什么不能and ,11011111b对吧
页: [1]
查看完整版本: 为什么不可以直接用这样的形势呢?