鱼C论坛

 找回密码
 立即注册
查看: 3969|回复: 12

对于汇编视频:25的疑问

[复制链接]
发表于 2011-6-28 22:17:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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

mov ax,[bx]

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

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-28 22:41:08 | 显示全部楼层
这个不是有个匹配机制么- -  
小的可以交给大的 大的不能交给小的
内存中的数据往寄存器转是 按寄存器大小截取  
假如al的数据位 000001 则ax中的为 000001000000 对不? 貌似是这样
由低位向高位
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-28 22:44:29 | 显示全部楼层

如果是送入AL,就是8bit的数据,如果送入AX,就会把16bit的数据送过去,这样的话肯定会影响最终结果吧?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-28 22:45:21 | 显示全部楼层
对  应该是 你自己可以试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-28 22:46:03 | 显示全部楼层
服气 发表于 2011-6-28 22:41
这个不是有个匹配机制么- -  
小的可以交给大的 大的不能交给小的
内存中的数据往寄存器转是 按寄存器大小 ...

请再从头看一次视频,你基本的东西没形成在大脑里面。AL是低位,你把它放到高位了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-28 22:49:58 | 显示全部楼层
幕府幽魂 发表于 2011-6-28 22:46
请再从头看一次视频,你基本的东西没形成在大脑里面。AL是低位,你把它放到高位了。

请问一下,我的想法是否有问题?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-28 22:50:00 | 显示全部楼层
张国祥 发表于 2011-6-28 22:44
如果是送入AL,就是8bit的数据,如果送入AX,就会把16bit的数据送过去,这样的话肯定会影响最终结果吧?
...

字,字节的定义一定要搞的很清晰才能学下面的课程,否则会有很多疑问
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-28 22:56:25 | 显示全部楼层
幕府幽魂 发表于 2011-6-28 22:50
字,字节的定义一定要搞的很清晰才能学下面的课程,否则会有很多疑问

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

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

                mov cx,3h
  s:    add dx,ax
                loop s
                
                mov ax,4c00h
                int 21h
2、
mov ax,0ffffh
                mov ds,ax
                mov bx,6h
                mov ax,[bx]
                mov dx,0h

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

希望能够给我指点迷津!谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-28 23:11:23 | 显示全部楼层
幕府幽魂 发表于 2011-6-28 22:50
字,字节的定义一定要搞的很清晰才能学下面的课程,否则会有很多疑问

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


QQ截图20110628230859.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-29 08:56:26 | 显示全部楼层
张国祥 发表于 2011-6-28 22:56
我理解字、字节等单位,唯一的问题就是

1、

当然不能通用,打个比方 十进位的 1234分12和34两个位,12是高位,34是低位。你计算的时候只34参加计算,与计算的时候1234参加计算得到的结果会一样吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-29 11:16:04 | 显示全部楼层
幕府幽魂 发表于 2011-6-29 08:56
当然不能通用,打个比方 十进位的 1234分12和34两个位,12是高位,34是低位。你计算的时候只34参加计算, ...

那么是不是可以理解为小甲鱼汇编视频:25有错误?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2011-6-29 11:37:26 | 显示全部楼层
张国祥 发表于 2011-6-29 11:16
那么是不是可以理解为小甲鱼汇编视频:25有错误?

没有错误,因为高位全是O的话,可以通过
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2011-6-29 12:36:30 | 显示全部楼层
幕府幽魂 发表于 2011-6-29 11:37
没有错误,因为高位全是O的话,可以通过

嗯,谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 06:05

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表