WEB开发网
开发学院软件开发汇编语言 详解驻留exe文件 阅读

详解驻留exe文件

 2008-12-27 09:35:59 来源:WEB开发网   
核心提示:(10) 析栈初始 ML611,汇编map含00000H , 00000H _TEXTCODE00000H , 00019H _DATADATA00020H , 00020H STACKSTACK00040H , 00033H TAIL Origin Group0000:0 DGROUPentry point at 0

(10) 析栈初始

ML611,汇编map含
00000H , 00000H _TEXT         CODE
00000H , 00019H _DATA         DATA
00020H , 00020H STACK         STACK
00040H , 00033H TAIL        
Origin  Group
0000:0  DGROUP
entry point at 0004:0000
的t.asm
.model small  ;仅数据段,代码段
.data  ;随psp
assume cs:@data
cry   dw  '$!'
i72:  push ax
      push dx
      push ds
      mov ah,9
     mov dx,cs
      mov ds,dx
     lea dx,cry
     int 21h
      pop ds
      pop dx
      pop ax
     iret
i27  dw  0,@data
.stack  32
tail  segment
.startup
     mov ax,2572h
      lea dx,i72
     int 21h
      mov dx,256+i27  ;计psp的驻容
      mov byte ptr es:[1],27h  ;es矢psp
      sub i27[2],16  ;矢psp
      call dword ptr i27  ;转psp:0
tail  ends
     end
lst含
0015 0000 ---- R   i27  dw  0,@data
0000      tail  segment
     .startup
0017  mov ax,2572h
002F  call dword ptr i27

exe文件头

0100 4D 5A 73 00 02 00 02 00-20 00 00 00 FF FF 02 00
0110 20 00 00 00 00 00 04 00-1E 00 00 00 01 00 17 00
0120 00 00 01 00 04 00

重定位表,第1项,矢i27的@data,第2项,矢17字节长的.startup第1字节

00 BA0000    MOV  DX,0000  ;运行时,字节1,2,加mcb所占节号及11h,制DS
03 8EDA     MOV  DS,DX
05 8CD3     MOV  BX,SS  ;外壳,已加好mcb所占节号及13h到SS
07 2BDA     SUB  BX,DX  ;13h-11h,差值2节,合20h字节
09 D1E3     SHL  BX,1
0B D1E3     SHL  BX,1              
0D D1E3     SHL  BX,1              
0F D1E3     SHL  BX,1              
11 FA      CLI   ;防来中断                12 8ED2     MOV  SS,DX  ;              
14 03E3     ADD  SP,BX  ;本模式,移栈段环境到数据段高端
16 FB      STI
                  

(10.1) DEBUG t.exe实例

栈初始前,DS矢psp,SS已加好,SP=exe头偏移10,11字节值20h:

AX=0000 BX=0000 CX=0073 DX=0000 SP=0020 BP=0000 SI=0000 DI=0000
DS=188B ES=188B SS=189D CS=189F IP=0000

初始后,DS,SS矢@data,SP多加栈容20h字节:

AX=0000 BX=0020 CX=0073 DX=189B SP=0040 BP=0000 SI=0000 DI=0000
DS=189B ES=188B SS=189B CS=189F IP=0017

上一页  1 2 3 4 5 6 

Tags:详解 驻留 exe

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接