可执行文件中的程序执行过程
1. 由其他的程序(debug、command或者其他的程序)将可执行文件加载入内存
2.设置CS:IP 指向程序的第一条要执行的指令(第一条指令就是程序的入口),
使程序得意运行 !!就是这里出了问题! 怎样设置 CS:IP 的指向
3.程序运行结束后,返回到加载者 就是 返回到 debug 或是 command 程序
记得可执行文件是由 两个部分组成的,
一个当然就是主体部分 就是 程序
另一个就是 可执行文件的描述信息 部分
描述信息主要是,
文件由编译程序、连接程序对源程序的中相关伪指令进行处理所得到的信息
上面这句话感觉是废话!!
伪指令 END 描述了 程序的结束 和 程序的入口 就是 汇编程序最后交代的
“END 标号” 这个组合体 由“END 标号”指明了程序的入口,被转化为一个入口地址
就是说通过 "END 标号" 这个组合体 可以确定 CS:IP 对应的值 也就是讲 确定了程序的入口
就是确定了CPU 第一条执行的指令
怎么说呢? 程序 .exe文件 就是指 可执行文件 被加载到内存中, 加载者(比如debug ,或者command)从这个程序的的可执行文件(就是加载的这个文件)的描述信息部分,读到程序的入口, 从而设置 CS:IP
就是说 是加载者 找到程序的入口
关于CPU 的使用权限 因为这是 单任务系统 DOS 所以 CPU 的使用权限 要知道怎样传递
就一个简单的运行一个汇编程序, 刚开始 CPU的 使用权限是 由 加载者掌控的
当 加载者确定了 CS:IP, 就是程序的入口 ,CPU 的使用权限就 交由载入内存的程序了
1. 由其他的程序(debug、command或者其他的程序)将可执行文件加载入内存
2.设置CS:IP 指向程序的第一条要执行的指令(第一条指令就是程序的入口),
使程序得意运行 !!就是这里出了问题! 怎样设置 CS:IP 的指向
3.程序运行结束后,返回到加载者 就是 返回到 debug 或是 command 程序
记得可执行文件是由 两个部分组成的,
一个当然就是主体部分 就是 程序
另一个就是 可执行文件的描述信息 部分
描述信息主要是,
文件由编译程序、连接程序对源程序的中相关伪指令进行处理所得到的信息
上面这句话感觉是废话!!
伪指令 END 描述了 程序的结束 和 程序的入口 就是 汇编程序最后交代的
“END 标号” 这个组合体 由“END 标号”指明了程序的入口,被转化为一个入口地址
就是说通过 "END 标号" 这个组合体 可以确定 CS:IP 对应的值 也就是讲 确定了程序的入口
就是确定了CPU 第一条执行的指令
怎么说呢? 程序 .exe文件 就是指 可执行文件 被加载到内存中, 加载者(比如debug ,或者command)从这个程序的的可执行文件(就是加载的这个文件)的描述信息部分,读到程序的入口, 从而设置 CS:IP
就是说 是加载者 找到程序的入口
关于CPU 的使用权限 因为这是 单任务系统 DOS 所以 CPU 的使用权限 要知道怎样传递
就一个简单的运行一个汇编程序, 刚开始 CPU的 使用权限是 由 加载者掌控的
当 加载者确定了 CS:IP, 就是程序的入口 ,CPU 的使用权限就 交由载入内存的程序了