喜爱编程 发表于 2014-6-10 12:16:00

几条汇编指令 下面有个疑惑 不知我是哪里理解错误了

就是王爽老师的汇编语言 的第二章 2.3几条汇编指令

程序段中的指令            指令执行后AX中的数据             指令执行后BX中的数据
mov ax,4E20H                     4E20H                                          0000H
add ax,1406H                      6226H                                          0000H
mov bx,2000h                     6226H                                          2000H
add ax,bx                            8226H                                          2000H

mov bx,ax                            8226H                                          8226H   这里BX为什么是8226呢?上面一道程序BX不是2000吗?ax赋值给bx的话难道不应该是 8226+2000的出来这个数吗?    

add ax,bx                            044CH                                           8226h

xiaosawanjava 发表于 2014-6-10 12:16:01

这到程序关键是最后一个指令,而你说的那个为什么上面mov bx,2000h 已经给bx赋值了,为什么还要mov bx,ax,纠结这个其实完全没有意义,王爽老师主要是想通过最后一个指令要问我们,结果为什么不对?

枫叶情 发表于 2014-6-10 12:37:50

占个沙发,飘过。。{:7_169:}

喜爱编程 发表于 2014-6-10 12:39:58

突然想明白了mov 不是增加的意思    可以这道程序上面不是已经有了一个BX的数据了吗?为什么下面会又定义出来个bx的数据给它赋值呢?程序上下不矛盾吗?    我是自学的没有导师求个大神 可以带我走上正轨

text1259 发表于 2014-6-10 15:59:07

{:1_1:}表示不会中.............

青玄 发表于 2014-6-11 12:45:48

支持楼上的回答!

风之残月 发表于 2014-6-11 15:09:52

mov bx,ax 是将 ax寄存器里的值放入 bx寄存器中,而当前ax寄存器中的值为8226H,所以bx值是8226H,相当于 bx = ax

大弟子 发表于 2014-6-13 12:50:40

这个程序有啥问题?不是很普通吗
页: [1]
查看完整版本: 几条汇编指令 下面有个疑惑 不知我是哪里理解错误了