硬盘上有个程序,运行时要装进内存,但程序代码被装入内存的什么位置,是由什么决定的?
还有,8086汇编的数据/代码段有啥用,能建立多少个,能否通俗的概述一下。学了半天汇编,到头来来怎么一回事都不懂。。。。。。
51单片机到明白,程序放在rom里,cpu从rom里读取,执行,也没啥段的概念。80x86内存到底分配使用,是在迷糊。。。。
基本咋回事不条理,具体也不大会问,就请高手看着给我概述一下吧。满意的话再加100分。
谢拉!!!!
参考答案:问题没那么复杂,楼主是希望得到原理层次上的回答吧。
1、硬盘程序装入内存,其位置由操作系统决定,也就是写操作系统程序的人,来决定。
2、8086数据段存数据,代码段存代码,以示类型的分别。
比如,同样***********,计算机怎么知道是数据11H,还是汇编指令的机器码呢?
3、“51单片机到明白,程序放在rom里,cpu从rom里读取,执行”。这只是程序代码的情况,其实里面也分数据段、代码段。
4、“有了操作系统,还要汇编中的数据段、代码段,CS、DS干什么?”
因为汇编是转成机器码以后直接执行的,这些是让你直接指挥机器干活的工具啊。
5、你用C/C++等语言的话,则是由编译器来把它们转换成汇编程序。