能力值:
( LV2,RANK:10 )
|
-
-
2 楼
AL是AX最低位
BL也是BX最低位
1AH+26H等于多少 LZ还是拿计算器算算吧
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
add ah,bl 之后 ax=2640H
add bh ,al 之后 bx=4026H
这时bl=26h ah=0
所以ah=ah+bl
也就是ah=26h ;ax的高位是26,低位是40,合起来就是2640H了。不知道这样解释对不对?
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
回下楼上的朋友
add ah,bl 2640H 0026H
add bh,al 2640H 4026H
上面的是我直接从书本上打上去的,,是书本的内容。。。
在add ah,bl 之前,,ax 的值还是0040H bx的值是0026H啊- -!~
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
ax的16位是直接用ah和al拼接出来的,比如(ah)=23H,(al)=45H,那么(ax)=2345H
add ah,bl 之前:
(ax)=0040H 也就是说 (ah)=00H (al)=40H
(bx)=0026H 也就是说 (bh)=00H (bl)=26H
add ah,bl 后:
(ah)和(bl)相加的结果保存载ah中,也就是说00H(ah)+26H(bl) -> 26H(ah)
(al)没变,还是40H
(ax)=(ah al) = 2640H
下面的和这个一样,理解了么?
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
是要注意到地位吗
|
能力值:
( LV4,RANK:50 )
|
-
-
7 楼
楼主是不是理解错了寄存器或者add指令?
|
能力值:
( LV3,RANK:20 )
|
-
-
8 楼
楼上的几位说清楚了。
ax分为ah al ,二个都是8位。ax是16位。
修改ah的话其实就是修改ax的高8位,al同理。。所以。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
AX 的前8位是AH 后8位是AL
同理BX
这样ADD AH BL就是把BX后两位加到AX前两位
同理下面的
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
挣分
ADD 参数1,参数2
参数1,参数2位数要相同。如:AH,AL。
值放到参数1里面,进位不反应在参数1里面。
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
不凑热闹了,^_^,就是注意高低位吧
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
mov ax,001a
AX=001A BX=4026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=0103 NV UP EI NG NZ NA PE NC
138F:0103 BB2600 MOV BX,0026
-t
AX=001A BX=0026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=0106 NV UP EI NG NZ NA PE NC
138F:0106 00D8 ADD AL,BL
-t
AX=0040 BX=0026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=0108 NV UP EI PL NZ AC PO NC
138F:0108 00DC ADD AH,BL
-t
AX=2640 BX=0026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=010A NV UP EI PL NZ NA PO NC
138F:010A 00C7 ADD BH,AL
-t
AX=2640 BX=4026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=010C NV UP EI PL NZ NA PO NC
138F:010C B400 MOV AH,00
-t
AX=0040 BX=4026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=010E NV UP EI PL NZ NA PO NC
138F:010E 0485 ADD AL,85
-t
AX=00C5 BX=4026 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000
DS=138F ES=138F SS=138F CS=138F IP=0110 NV UP EI NG NZ NA PE NC
我想现在应该很清楚了吧,结果是没有错的,楼主可以根据这些自己去体会吧!
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
寄存器高低位,注意数据存储的高低地址顺序
|
能力值:
( LV8,RANK:120 )
|
-
-
14 楼
- -
这本来就是对的好不好0 0
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
注意高低位就可以了啊,其实原理很简单的啊
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
add ah,bl,ah是ax的高八位,同理bl为bx低八位,所以相加,就是ah和al组合出来的数吧
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
高地位的问题。。我承认我还是比楼主强一点。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
18 楼
看到这么多人这么热心真是好啊
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
对了,按照论坛规则,楼主在解决问题之后应该出来道个谢嘛,也不枉大家一片好心
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
学习了很多东西
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
|
能力值:
( LV2,RANK:10 )
|
-
-
22 楼
在仔细看看书 很好理解的 别求速度 只到看懂为止
|
能力值:
( LV2,RANK:10 )
|
-
-
23 楼
注意高低位就可以了,楼主稍微再仔细想一下就明白了。
|
能力值:
( LV2,RANK:10 )
|
-
-
24 楼
搞清是给ah加,还是给al给,就明白了,也就是操作后结果回送给那个寄存器
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
ax(16bit)由ah(高8bit),和al(低8bit构成)
add al,bl是说al+bl的结果在放到al中,bl的值是不变的
|
|
|