汇编网首页登录博客注册
cnhnyu的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  

[2009-01-19 17:16] 利用程序段前缀psp重定向输出

程序段前缀PSP格式如下:
偏移         字节数         说 明
0000         02          中断20H
0002         02          以节计算的内存大小(利用这个可看出是否感染引导型病毒)
0004         01          保留
0005         05          至DOS的长调用
000A         02          INT 22H 入口 IP
000C         02          INT 22H 入口 CS
000E         02          INT 23H 入口 IP
0010         02          INT 23H 入口 CS
0012         02          INT 24H 入口 IP
0014         02          INT 24H 入口 CS
0016         02          父进程的PSP段值(...
阅读全文 | 评论次数(1) | 浏览次数(589) | 所属类型(默认类型)

[2008-12-29 23:33] 关于段的大小以及偏移位数的问题

首先需要明白一个问题是,段是什么?

段是站在CPU的角度对内存的一种逻辑上的划分。由于8086的cpu无法直接表示20位的物理地址, 所以,只好采用2个16位的地址来表示一个20位的物理地址, 而这2个16位的地址一个称之为基地址,一个称之为偏移地址, 基地址也叫做段地址,而这个段的地址通常就存储在段寄存器中。段是cpu管理内存的一种手段和方式。


段的大小是多少?

段的偏移是从0000H到FFFFH, 这其中包括了0000和FFFF。段是逻辑上的划分, 所以段是可以重叠的, 一个段的开始地址、结束地址和另一个段的开始地址、结束地址,这四个地址完全可以一样, 所以最小值可以...
阅读全文 | 评论次数(2) | 浏览次数(1012) | 所属类型(默认类型)