摘要: exe可执行文件 通过link可以获得最终的exe文件 系统要运行exe文件的话 需要分配给他一段内存 系统是怎么知道要分配多大的内存给这个程序的? 也就是这个exe文件 因为exe文件中 除了我们整个程序的代码还包括了一些信息(文件有多大 程序的入口在哪里)描述信息 系统就是通过这些描述信息对寄存 阅读全文
posted @ 2020-10-19 18:00 Arthur_hsp 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 编译和链接 编译masm:将asm文件变成obj 文件 链接link:obj变成exe 问什么要经过两次才变成exe 假设有100w行代码 编译器是翻译软件 需要编译一段时间 100w行要翻译5min 代码是会有错误的 去修改几行代码 不合适 100w行代码拆分开 t1.asm ->obj t2.a 阅读全文
posted @ 2020-10-19 17:36 Arthur_hsp 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 承上启下 我们可以在一段内存中存放数据 数据段 存放了我们自己定义的数据 我们还可以在一段内存中存放指令 指令段(代码段) 存放了我们自己定义的指令 我们可以将一段内存定义成栈空间 因为我们处理数据的时候需要临时性存放 栈段 我们如何让CPU按照我们的安排去访问这些内存段呢? 对于数据段来说,段地址 阅读全文
posted @ 2020-10-19 16:58 Arthur_hsp 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-10-19 11:41 Arthur_hsp 阅读(162) 评论(0) 推荐(0) 编辑
摘要: call 指令 将 IP(000B) 保存到哪里去了(内存的哪里 ) ret 可以拿回(存在栈中 注意 sp 的变化) 栈的作用: 1、临时性保存数据 mov ax,1000H mov bx,2000H push ax push bx ;注意入栈顺序 mov ax,0 mov bx,0 pop bx 阅读全文
posted @ 2020-10-19 11:20 Arthur_hsp 阅读(394) 评论(0) 推荐(0) 编辑