int main()
{
unsigned int StkTest[5] = {1,2,3,4,5};
unsigned int *ptr = &StkTest[0];
*ptr = 10;
ptr++;
*ptr = 20;
ptr++;
*ptr = 30;
ptr++;
*ptr = 40;
return 0;
}
#1-0
enter 000e, 00
lea ax, [ bp - 0a]
push ss
push ax
push ds
push 0090
mov cx, 000a
call far f_scopy@
#1-1
push bp
mov bp,sp
push si
push di
push ds ;以上语句均为进入子程序的一般操作
lds si, [ bp + 06 ]
les di, [ bp + 0a ]
cld
shr cx, 1
rep movsw
adc cx, cx
rep movsb
pop ds ;以下为子程序返回时进行堆栈的释放
pop di
pop si
pop bp
retf 0008
lea ax, [ bp - 0a]
mov [ bp - 0c ], ss
mov [ bp - 0e ], ax
欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) | Powered by Discuz! X3.2 |