w415533168 发表于 2012-8-29 11:52:40

课后题不懂 汇编

mov bx,826CH   BX=826CHmov cx,ax      CX=6246Hmov ax,bx      AX=826CHadd ax,bx      AX=04D8Hmov al,bh      AX=0482H
关于最后条    bh前八位我知道是82   al不是后八位 不是取04D8的D8吗怎么取04   不是D882吗

幻想 发表于 2012-8-29 11:52:41

mov al,bh 就是把bx的高位数据82,放到ax的低位数据d8中 ,但是ax的高位04不变
ax=0482

GeV20 发表于 2012-8-29 12:09:41

ah本来就是04,什么时候取其他值了

fengruili 发表于 2012-8-29 13:25:14

本帖最后由 fengruili 于 2012-8-29 13:33 编辑

bx=826ch    bh=82 bl=6c
ax = 04d8hah=04 al=d8         mov al,bhax的低8位 和 bx 的高8位 互换了你粗心了

Potato丶 发表于 2012-8-29 13:46:05

{:5_102:} 是把BX的高8位传送的AX的低8位中。。。BH是04.所有AL是04。。

黃花比我胖 发表于 2012-8-29 14:59:24

mov bx,826CH   BX=826CHbh=82h   bl=6ch

mov cx,ax      CX=6246H

mov ax,bx      AX=826CHax=bxah=82hal=6ch

add ax,bx      AX=04D8Hax=bx+ax=104d8h 因为ax是16位寄存器 故ax=04d8h
                      ah=04h    al=d8h (当然这里的“1”怎么回事呢,后面会学到的)

mov al,bh      AX=0482H 执行前ax=04d8hal=d8h   bh=82h   执行后al=bh=82h 覆盖原值d8h
                  而ah值未发生改变 所以ax=ah+al=0482h
不知道我解释清楚没?

w415533168 发表于 2012-9-6 12:14:52

从1看到4在重1看到4 在1看到4懂了-
页: [1]
查看完整版本: 课后题不懂 汇编