张国祥 发表于 2011-6-28 22:17:12

对于汇编视频:25的疑问

本帖最后由 张国祥 于 2011-6-29 12:36 编辑

mov ax,

这条指令不就意味着将DS:   “字单元”中的数据移入AX吗?问题就在这里,如果是mov al,,是不是就是将 DS:   “字节单元”中的数据移入AL 。
如果用 mov ax,代替mov al,貌似会出错吧? 我单步跟踪了一下,最终结果不一样!

服气 发表于 2011-6-28 22:41:08

这个不是有个匹配机制么- -
小的可以交给大的 大的不能交给小的
内存中的数据往寄存器转是 按寄存器大小截取
假如al的数据位 000001 则ax中的为 000001000000 对不? 貌似是这样
由低位向高位

张国祥 发表于 2011-6-28 22:44:29

服气 发表于 2011-6-28 22:41 static/image/common/back.gif
这个不是有个匹配机制么- -
小的可以交给大的 大的不能交给小的
内存中的数据往寄存器转是 按寄存器大小 ...

如果是送入AL,就是8bit的数据,如果送入AX,就会把16bit的数据送过去,这样的话肯定会影响最终结果吧?

服气 发表于 2011-6-28 22:45:21

对应该是 你自己可以试试

幕府幽魂 发表于 2011-6-28 22:46:03

服气 发表于 2011-6-28 22:41 static/image/common/back.gif
这个不是有个匹配机制么- -
小的可以交给大的 大的不能交给小的
内存中的数据往寄存器转是 按寄存器大小 ...

请再从头看一次视频,你基本的东西没形成在大脑里面。AL是低位,你把它放到高位了。

张国祥 发表于 2011-6-28 22:49:58

幕府幽魂 发表于 2011-6-28 22:46 static/image/common/back.gif
请再从头看一次视频,你基本的东西没形成在大脑里面。AL是低位,你把它放到高位了。

请问一下,我的想法是否有问题?

幕府幽魂 发表于 2011-6-28 22:50:00

张国祥 发表于 2011-6-28 22:44 static/image/common/back.gif
如果是送入AL,就是8bit的数据,如果送入AX,就会把16bit的数据送过去,这样的话肯定会影响最终结果吧?
...

字,字节的定义一定要搞的很清晰才能学下面的课程,否则会有很多疑问

张国祥 发表于 2011-6-28 22:56:25

幕府幽魂 发表于 2011-6-28 22:50 static/image/common/back.gif
字,字节的定义一定要搞的很清晰才能学下面的课程,否则会有很多疑问

我理解字、字节等单位,唯一的问题就是

1、
mov ax,0ffffh
                mov ds,ax
                mov bx,6h
                mov al,
                mov ah,0h
                mov dx,0h

                mov cx,3h
s:    add dx,ax
                loop s
               
                mov ax,4c00h
                int 21h2、

mov ax,0ffffh
                mov ds,ax
                mov bx,6h
                mov ax,
                mov dx,0h

                mov cx,3h
s:    add dx,ax
                loop s
               
                mov ax,4c00h
                int 21h能否通用?

希望能够给我指点迷津!谢谢

张国祥 发表于 2011-6-28 23:11:23

幕府幽魂 发表于 2011-6-28 22:50 static/image/common/back.gif
字,字节的定义一定要搞的很清晰才能学下面的课程,否则会有很多疑问

我又做了个实验,验证了我的说法:不能互换!


幕府幽魂 发表于 2011-6-29 08:56:26

张国祥 发表于 2011-6-28 22:56 static/image/common/back.gif
我理解字、字节等单位,唯一的问题就是

1、


当然不能通用,打个比方 十进位的 1234分12和34两个位,12是高位,34是低位。你计算的时候只34参加计算,与计算的时候1234参加计算得到的结果会一样吗?

张国祥 发表于 2011-6-29 11:16:04

幕府幽魂 发表于 2011-6-29 08:56 static/image/common/back.gif
当然不能通用,打个比方 十进位的 1234分12和34两个位,12是高位,34是低位。你计算的时候只34参加计算, ...

那么是不是可以理解为小甲鱼汇编视频:25有错误?

幕府幽魂 发表于 2011-6-29 11:37:26

张国祥 发表于 2011-6-29 11:16 static/image/common/back.gif
那么是不是可以理解为小甲鱼汇编视频:25有错误?

没有错误,因为高位全是O的话,可以通过

张国祥 发表于 2011-6-29 12:36:30

幕府幽魂 发表于 2011-6-29 11:37 static/image/common/back.gif
没有错误,因为高位全是O的话,可以通过

嗯,谢谢!
页: [1]
查看完整版本: 对于汇编视频:25的疑问