在代码段中使用数据

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
	
	

运行;

猜你喜欢

转载自blog.csdn.net/huanhuan59/article/details/83895953
今日推荐