1. 程式人生 > >在程式碼段中使用資料

在程式碼段中使用資料

1.彙編源程式程式碼

assume cs :code
code segment
	dw 0123H,0456H,0789H,0ABCH,0DEFH,0FEDH,0CBAH,0987H
	mov ax,0
	mov bx,0
	mov cx,8
s:	add ax,cs:[bx]
	add bx,2
	loop s
	mov ax,4c00H
	int 21H
code ends
end
	

2.我們直接用debug 命令-u檢視

在0756:0000往後查到 的也是程式中的內容,只不過不是源程式中彙編指令對應的機器碼,是dw定義的,第十六個位元組

第十六個位元組往後才是程式中要執行的機器指令

也就是說記憶體中前16個單元存放源程式的dw 定義的資料,後面是元程式彙編指令對應的機器指令。

用Debug命令執行過程中,程式入口不是我們所希望執行的指令,那麼如何編譯??

新增程式碼:

assume cs :code
code segment
	dw 0123H,0456H,0789H,0ABCH,0DEFH,0FEDH,0CBAH,0987H
start:	mov ax,0
	mov bx,0
	mov cx,8
s:	add ax,cs:[bx]
	add bx,2
	loop s
	mov ax,4c00H
	int 21H
code ends
end  start
	
	

執行;