exe可执行文件和源代码文件asm

exe可执行文件

通过link可以获得最终的exe文件

系统要运行exe文件的话   需要分配给他一段内存

 

系统是怎么知道要分配多大的内存给这个程序的?  也就是这个exe文件

因为exe文件中  除了我们整个程序的代码还包括了一些信息(文件有多大   程序的入口在哪里)描述信息

系统就是通过这些描述信息对寄存器进行相关设置

 

start伪指令   是告诉翻译软件 start 伪指令  在exe文件的描述信息中扮演什么角色?

就是将我们设置的程序的入口地址在哪里   记录在exe文件的描述信息中 

然后系统通过这个描述文件中的内容去设置cs,ip  当然还有一些其他内存

 

exe可执行文件 不止包括了整个程序  还包括了描述信息

系统是根据这些描述信息  进行相关的设置

 

 源代码文件 asm

 汇编语言

  汇编指令      被编译器翻译成010101001机器指令  机器码  由CPU执行

  伪指令         由编译器执行

  符号体系      由编译器执行

data segment    告诉编译器  data段从这里开始

data ends          告诉编译器  data段到这里结束      分配内存

段的名字可以随意取       方便我们阅读

 

实现了程序返回的功能

mov  ax,4c00H

int 21H

系统在加载程序的时候要分配内存 设置寄存器

内存和寄存器都还给系统

不能永远占用内存  内存是有限的

 

  

    

 

posted @ 2020-10-19 18:00  Arthur_hsp  阅读(575)  评论(0编辑  收藏  举报