. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->第一个程序
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  实验3的疑问,关于PSP中内容的问题  [待解决] 回复[ 6次 ]   点击[ 1107次 ]  
891204dh
[帖 主]   [ 发表时间:2009-07-29 16:46 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:0
注册日期:2009-04-08 06:33
书上写道,
PSP的头两个字节是CD20,我用debug 加载了t1.exe,然后去查看PSP中的内容,发现头两个字节还真是CD20,在程序执行的过程中,我把各个寄存器的值都记录下来了,没找到哪个寄存器的值曾经或现在是CD20,然后猜想会不会是哪条汇编指令,于是我用u ds:0 f命令查看了CD20相对应的汇编代码,发现是INT 20,这句代码,不知psp中头两个字节为何就是CD20?是否有什么意义?请大哥大姐们为小弟解答解答~
891204dh
[第1楼]   [ 回复时间:2009-07-29 16:53 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:0
注册日期:2009-04-08 06:33
在线等答案...很想知道为什么会这样
891204dh
[第2楼]   [ 回复时间:2009-07-30 12:28 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:0
注册日期:2009-04-08 06:33
怎么没人回答??等得好幸苦呀
tsembrace
[第3楼]   [ 回复时间:2009-07-31 16:21 ]   [引用]   [回复]   [ top ] 
荣誉值:31
信誉值:3
注册日期:2009-06-15 19:20
看得有些头晕。。。为什么会去寄存器里查找psp头两个字节?书里有提过这两字节在加载程序时候需要保存在寄存器么?
书里说过PSP是加载程序时候作为与外部建立通信连接的用途。也就是说psp区存储的实际是一段通讯程序。
至于您提的为什么psp开头为cd20,那就需要你先撇开这个问题,继续往下学习,直到你可以完全看懂psp内的程序含义,我想你也就能理解为什么开头是cd20,即int 20.因为这个代码不能孤立的看,它只是通讯程序的第一个指令而已。
我现在也完全看不懂,呵呵。
891204dh
[第4楼]   [ 回复时间:2009-08-01 01:51 ]   [引用]   [回复]   [ top ] 
荣誉值:2
信誉值:0
注册日期:2009-04-08 06:33
哈哈 谢谢L上的回答啦
nkiang
[第5楼]   [ 回复时间:2009-10-25 12:15 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2009-01-06 11:16
请问 psp是什么东西
dq051524
[第6楼]   [ 回复时间:2009-12-28 10:48 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2008-01-14 11:55
PSP就是程序段前缀 在第2版书p92图4.20有说明的
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved