汇编语言(五) 汇编代码在内存中的结构( 8086 + masm 编译器)

这篇博客探讨了8086汇编语言程序在内存中的组织结构,特别是数据段、程序段和栈段的存放方式。当EXE文件加载后,DS寄存器指向程序段前缀(PSP)地址,而CS:IP指示代码段起始位置。数据段长度为6*16字节,紧随其后的是代码段。内存布局遵循源代码中段的顺序,如果内存不足16的倍数,会留出空闲地址。王爽的《汇编语言》4.8节对此有详细阐述。
摘要由CSDN通过智能技术生成

汇编代码 在编译,链接后,加载到 内存中  数据段,程序段,栈段 是如何 存放的呢?


例如这个 代码:

assume cs:codesg,ds:data
;每个单词的头一个字母改为大写
data segment
	db '1. file         '
	db '2. edit         '
	db '3. search       '
	db '4. view         '
	db '5. options      '
	db '6. help         '
data ends

codesg segment
start:	mov ax,data
		mov ds,ax
		mov cx,6
		mov bx,0
	s:	mov al,[bx+4]
		and al,11011111B
		mov [bx+4],al
		add bx,16
		loop s
	mov ax,4c00H
	int 21H
codesg ends

end start


编译,链接成 convert.exe 后,   debug  convert.exe

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值