汇编语言:org 07c00h的问题

我在看《自己动手写操作系统》的时候,代码1.1boot.asm程序是这样的:
1 org 07c00h ; 告诉编译器程序加载到7c00处
2 mov ax, cs
3 mov ds, ax
4 mov es, ax
5 call DispStr ;调用显示字符串例程
...
rom-bios不是直接跳转到07c00处执行了吗,为什么还要org 07c00h这一句语句呢?

http://blog.sina.com.cn/s/blog_861912cd010117ez.html

你的程序,不知道自己定位在哪里,除非加上 org 07c00h ;
没有这句话的话,默认值为0或者动态加载,那样你的程序中使用的标号和变量都会地址错误

ROM-BIOS加电完成基本硬件检测和初始化之后,将引导扇区装入内存偏移7c00h处。如果不加这条伪指令,编译器会看做动态装载,那你实际运行过程中就不一定装入指定的内存位置。引导过程无法实现。