. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  我发现 winxp 和dos7.0 里对t命令中断不一样.  [待解决] 回复[ 2次 ]   点击[ 461次 ]  
hino
[帖 主]   [ 发表时间:2008-08-09 16:02 ]   [引用]   [回复]   [ top ] 
荣誉值:4
信誉值:3
注册日期:2008-06-22 20:23
mov ax,1000
mov ss,ax
mov sp,f
mov bx,2000

书上说,当t命令执行时,在执行mov ss,ax后,下一条是bx,2000.原因是中断,执行mov ss,ax后,mov sp,f马上被跟着执行了.

我在winxp里试的时候,确实是这样的.

不过在dos7.0里就不是这样了.执行完mov ss,ax后,下一条是mov sp,f.并没有自动跟着执行.

不信可以看看这个.我是用vmware虚拟的dos.

http://cybernet.freehostia.com/picture/files/809_asm.png
http://cybernet.freehostia.com/picture/list.php?page=4  <-如果看不到,就打开这个.
problemqd
[第1楼]   [ 回复时间:2008-10-11 20:19 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-09-27 20:37
其实,我也尝试过。结果和你说的一样。不过我用的是vmware虚拟下的win98,运行command后执行debug,运行你上面所说的代码。当时,我还怀疑过,是不是书上说的不对呢。再用系统本身的cmd,运行debug就和书上一致了。也许,这个特点是虚拟机和真实机器的区别之一呢。
linfeng0928
[第2楼]   [ 回复时间:2011-01-26 22:15 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-01-01 18:29
哪里可以下载到DOS7.0
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved