. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->寄存器(内存访问)
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  ~~~~~~~本章最后一个实验任务,什么来着~~~~~~~  [已解决] 回复[ 2次 ]   点击[ 348次 ]  
stop1204
[帖 主]   [ 发表时间:2013-04-22 09:50 ]   [引用]   [回复]   [ top ] 
荣誉值:424
信誉值:0
注册日期:2013-04-08 10:06
(我也是初学的新手,刚学完第三章)
为什么2000:0~2000:f中的内容会发生改变?(我也不知道哈哈)  实验-.- :
初始内容
AX = 1234    BP = 5678 IP=9876 CS = 7654

执行T命令:(我不知道什么保护现场的,什么中断啊,也不理解, 个人认为是"执行一条指令后暂停"吧)
会出现 00 00 00 34 12 78 56 76 98 54 76 A3 01 00

[AX 值 , BP 值 , IP 值(显示下一条要执行指令的地址) , CS 值 ,-------- A3 01一个不知道的东西-.-听说是一个标志性的东西,好像是固定的,应该是每个人独有的一个值]

这些值应该是在执行T命令过程中的最后一步或者是执行完后 push cs\ip\bp\ax 
这个不会解释-.-,  可以实验下,,  
 mov ax,1    
执行T命令后 ax=1 
之后再push a
此时栈中的ax位数据才会变成01 00  
否者push a 的数据将变成 34 12

保护现场有什么作用没学到不清楚,, 

新建一个(2)栈,第一个字单元的数据都会固定A3 01 ,上一个被抛弃的(1)栈则变成另外一个数据(我的是86 4B)
如果再建一个(3)栈标志A3 01 ,  则 (2)栈的标志将会变成 86 43     

新建的栈标志位都会是固定的A3 01 , 旧栈的标志值会不停的减小,(减到00 00 我也不知道会发生什么, 可能又从FF FF开始吧)
stop1204
[第1楼]   [ 回复时间:2013-04-30 10:39 ]   [引用]   [回复]   [ top ] 
荣誉值:424
信誉值:0
注册日期:2013-04-08 10:06
1
stop1204
[第2楼]   [ 回复时间:2013-04-30 10:40 ]   [引用]   [回复]   [ top ] 
荣誉值:424
信誉值:0
注册日期:2013-04-08 10:06
此贴由 贴主 于 [ 2013-04-30 10:40 ] 结贴。 结贴原因:问题已解决
得分情况:
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved