单片机中org 这程序指定的是什么的起始,可否举几个应用的例子

如果说是跟后面的程序的地址,程序存贮器的地址不是64K的32位地址吗?
如果是指内部RAM的地址,那跟所编写的程序又如何联系呢?

是下一段程序的存储起始地址;比如在51中断中我们就常使用这样一段程序:
ORG 0000H
SJMP START
ORG 0003H
LJMP X0_INT ;转到X0中断入口
ORG 0013H
LJMP X1_INT ;转到X1中断入口
org 0030h
START:
程序从00h开始运行。跳转到start开始执行,然后当中断0来到的时候,会跳转到x0_int这里.start真正开始存储的位置是从0030h开始的。
你说的64k的32位地址,是不是指32位的cpu,程序存储器大小是64k?如果是这样的话,那么你应该要找到你的cpu的程序存储器的地址空间,只要在那个范围内的都可以使用org。
值得注意的是,org是条伪指令,它不会生出机器码,只是人们有时需确定程序存储的位置,才会用到的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-12-30
是ROM的地址。
就是ORG XXXXH,就是指定下一条的指令的地址
比如:
ORG 0000H
AJMP MAIN ;本条指令地址从0000H开始
ORG 0030H
MAIN: ..... ;标号为MAIN的程序,从0030H开始
第2个回答  2010-12-30
就是开辟程序的开始地址
比如 org 00h 说明下面你要写的程序在内存里是从00h处开始写的。
一般中断程序跳转 LJMP INT0
OGR 10000H
INT0: ***
这里就是说你的INT0是从10000h处开始写的,org的作用就好像是贴门牌号码。
相似回答