. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->标志寄存器
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  第5章检测题的疑惑,请各位赐教。  [已解决] 回复[ 3次 ]   点击[ 362次 ]  
huibian2009
[帖 主]   [ 发表时间:2009-08-26 14:35 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:2
注册日期:2009-07-06 17:12
已知21000h处字单元的内容为 BE00H,对于如下程序:  
     mov ax,2000h  
     mov ds,ax  
     mov bx,1000h  
     mov ax,[bx]:此时ax的值为00 be  
     inc bx:bx=1 
     inc bx :bx=2 
     mov [bx],ax :将AX的内容送入2号字单元中内存中的数据为: 
be 00 be 00 
     inc bx  
     inc bx 
 执行到此BX=4 
     mov [bx],ax :将AX中的内容再次复制到4号字单元中内存中的数据为:be 00 be 00 be 00 
     inc bx :此时BX=5 
     mov [bx],al :将AL也就是be送入5号字节单元中内存中的数据为:be 00 be 00 be be 

     inc bx:bx=6  
     mov [bx],al: 此时内存中的数据为: 
be 00 be 00 be be be 
     程序执行后,内存中字单元2000:1005中的内容为______。  
 1、  00  
 2、  BE  
 3、  00BE  
 4、  0000  
结果应该为bebe,怎么这里没有这个选项呢?
tinyparticle
[第1楼]   [ 回复时间:2009-08-26 18:40 ]   [引用]   [回复]   [ top ] 
荣誉值:188
信誉值:4
注册日期:2009-07-05 19:26
已知21000h处字单元的内容为 BE00H,对于如下程序执行后,内存中字单元2000:1005中的内容为0000 
以下数据均为16进制,为了看得清楚点,不加H了

mov ax,2000h 
mov ds,ax 
mov bx,1000h    ;ds:[bx]=2000:1000

mov ax,[bx]     ;2000:1000  00
                ;2000:1001  be 
                ;ax=ds:[bx]=be00,ah=be,al=00

inc bx          ;bx=1001
inc bx          ;bx=1002

mov [bx],ax     ;2000:1000  00
                ;2000:1001  be 
                ;2000:1002  00
                ;2000:1003  be

inc bx          ;bx=1003
inc bx          ;bx=1004

mov [bx],ax     ;2000:1000  00
                ;2000:1001  be 
                ;2000:1002  00
                ;2000:1003  be
                ;2000:1004  00
                ;2000:1005  be

inc bx          ;bx=1005

mov [bx],al     ;2000:1000  00
                ;2000:1001  be 
                ;2000:1002  00
                ;2000:1003  be
                ;2000:1004  00
                ;2000:1005  00

inc bx          ;bx=1006

mov [bx],al     ;2000:1000  00
                ;2000:1001  be 
                ;2000:1002  00
                ;2000:1003  be
                ;2000:1004  00
                ;2000:1005  00
                ;2000:1006  00

每一步操作后内存单元的内容的我都写了,LZ应该能看清楚了
你最初的ax值推算错误
huibian2009
[第2楼]   [ 回复时间:2009-08-27 09:03 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:2
注册日期:2009-07-06 17:12
呵呵,多谢解答,现在我明白了是由于粗心导致的错误。
huibian2009
[第3楼]   [ 回复时间:2009-08-27 09:04 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:2
注册日期:2009-07-06 17:12
此贴由 贴主 于 [ 2009-08-27 09:04 ] 结贴。 结贴原因:问题已解决
得分情况: 1楼(tinyparticle):4分  
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved