. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  从内存中的数据写入寄存器后,程序发生错误  [待解决] 回复[ 2次 ]   点击[ 281次 ]  
dripel
[帖 主]   [ 发表时间:2010-03-05 21:46 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-03-05 21:33
mov bx,1000
mov ds,bx
mov al,[0]

当我用debug的a命令写第3条语句后,回车,程序发生错误,自动退出。
请问 这是怎么回事?
versaariel
[第1楼]   [ 回复时间:2010-03-06 09:45 ]   [引用]   [回复]   [ top ] 
荣誉值:62
信誉值:0
注册日期:2009-12-03 13:14
只要用D命令查看al的值,就可以了,后面出错是栈的问题,现在不用考虑
C:\DOCUME~1\ADMINI~1>debug
-a
0B71:0100 mov bx,1000
0B71:0103 mov ds,bx
0B71:0105 mov al,ff
0B71:0107 mov al,[0]
0B71:010A
-t

AX=0000  BX=1000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=0B71  ES=0B71  SS=0B71  CS=0B71  IP=0103   NV UP EI PL NZ NA PO NC
0B71:0103 8EDB          MOV     DS,BX
-t

AX=0000  BX=1000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=1000  ES=0B71  SS=0B71  CS=0B71  IP=0105   NV UP EI PL NZ NA PO NC
0B71:0105 B0FF          MOV     AL,FF
-t

AX=00FF  BX=1000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=1000  ES=0B71  SS=0B71  CS=0B71  IP=0107   NV UP EI PL NZ NA PO NC
0B71:0107 A00000        MOV     AL,[0000]                          DS:0000=00
-t

AX=0000  BX=1000  CX=0000  DX=0000  SP=FFEE  BP=0000  SI=0000  DI=0000
DS=1000  ES=0B71  SS=0B71  CS=0B71  IP=010A   NV UP EI PL NZ NA PO NC
dripel
[第2楼]   [ 回复时间:2010-03-06 10:58 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2010-03-05 21:33
谢谢了
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved