- 論壇徽章:
- 0
|
QQ截圖20130930113432.png (78.75 KB, 下載次數(shù): 60)
下載附件
2013-09-30 11:34 上傳
我剛加載了這個(gè)匯編程序,然后開始跟蹤,發(fā)現(xiàn)我還沒有執(zhí)行第一條語句mov ax,stack
mov ss,ax 這條語句不是吧定義段的地址復(fù)制給堆棧段寄存器嘛,為什么還沒有執(zhí)行堆棧段寄存器中就已近有值了, 。。。。。 書上說
assume cs:code,ds:data,ss:stack //關(guān)聯(lián)特定的斷與寄存器
data segment 5
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h //定義數(shù)據(jù)
data ends
stack segment 2
dw 2,2,2,2,2,2,2,2
stack ends
code segment
start:mov ax,stack //程序入口 1
mov ss,ax 3
mov sp,16 4
mov ax,data
mov ds,ax 6
push ds:[0] 7
push ds:[2] 8
pop ds:[2] 9
pop ds:[0] 10
mov ax,4c00h
int 21h
code ends
end start
這樣的執(zhí)行順序沒得錯(cuò)吧? 求講解 ,方便的話加本人463503788 |
|