. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->包含多个段的程序
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  谁给讲讲【实验5】那道题  [已解决] 回复[ 4次 ]   点击[ 290次 ]  
regex
[帖 主]   [ 发表时间:2010-01-08 13:42 ]   [引用]   [回复]   [ top ] 
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51
1,CPU执行程序, 程序返回前?
这里的返回前, 是执行P命令前还是后?

2,第三小题,如下操作
D:\ASM>debug lab51.exe
-r
AX=0000  BX=0000  CX=0042  DX=0000  SP=0000  BP=0000  SI=0000  DI=0000
DS=14B4  ES=14B4  SS=14C4  CS=14C6  IP=0000   NV UP EI PL NZ NA PO NC
14C6:0000 B8C514        MOV     AX,14C5
-
这种状态时加载了程序。 code的地址为14C6,data段为14B4,SS段为14C4, 如题说code的段地址为X, 我理解这个X就是14C6. 那么data的地址跟code的段地址差12H字节, stack跟code差2字节, 
可我看了大家的议论, 正确答案跟我这出入又很大, 这是为什么呢?

希望高手给咱解疑释惑。 多谢。
regex
[第1楼]   [ 回复时间:2010-01-08 14:01 ]   [引用]   [回复]   [ top ] 
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51
晕, 还没跟踪呢!!!⊙﹏⊙b汗
acool
[第2楼]   [ 回复时间:2010-01-08 14:42 ]   [引用]   [回复]   [ top ] 
荣誉值:49
信誉值:0
注册日期:2008-10-15 16:15
1,CPU执行程序, 程序返回前? 
这里的返回前, 是执行P命令前还是后? 
------------
是在执行mov ax,4c00h int 21H,这两条程序返回功能前。执行到mov ax,4c00h就可以了。

第二题,debug加载后ds等值不是题目要求的(注意psp那章ds值的意义)。
要在执行mov ds,ax等语句后再查看段寄存器的值。
regex
[第3楼]   [ 回复时间:2010-01-08 15:13 ]   [引用]   [回复]   [ top ] 
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51
多谢2喽指点。 还得看书去。
regex
[第4楼]   [ 回复时间:2010-01-09 00:06 ]   [引用]   [回复]   [ top ] 
荣誉值:61
信誉值:0
注册日期:2009-12-19 01:51
此贴由 贴主 于 [ 2010-01-09 00:06 ] 结贴。 结贴原因:问题已解决
得分情况:
此问题已结贴!
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved