Ⅰ 单片机org 2000h是什么意思
H是十六进制的符号,数据后面跟H便是该数据时十六进制数据,ORG是编译时定位地址用的伪指令,表示该语句之后的指令从 ORG后面的地址开始执行。不同的单片机开始执行的地址是不一样的,单片机org 2000h表示单片机是从2000H开始的执行的。
单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能。
集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
地址寄存器AR
地址寄存器用于保存当前CPU所要访问的内存单元或I/O设备的地址。由于内存与CPU之间存在着速度上的差异,所以必须使用地址寄存器来保持地址信息,直到内存读/写操作完成为止。
显然,当CPU向存储器存数据、CPU从内存取数据和CPU从内存读出指令时,都要用到地址寄存器和数据寄存器。同样,如果把外围设备的地址作为内存地址单元来看的话,那么当CPU和外围设备交换信息时,也需要用到地址寄存器和数据寄存器。
以上内容参考网络-单片机
Ⅱ 51单片机和NASM中ORG指令是否不同
ORG只是一个宏指令,也就是说只在编译时起作用,用来定位尾随其后指定的起始地址。在51单片机中,普通的51单片机有5个中断,中断向量分别是:0003H,000BH,0013H,001BH,0023H,编程时一般尽量避开这个区域,所以主程序入口都定位0030H,如果不用中断的话,从000H开始也是可以的。
Ⅲ 为什么在用单片机汇编编程时,开头都要写上 ORG 0000H AJMP MAIN ORG 0030H这些呢请各位大侠多多指点!
原因:单片机中,0000H单元为系统启动地址,ORG 0000H AJMP MAIN 就是在该地址存放一条绝对跳转指令,转入主程序的入口地址。ORG 0030H 是为了把用户程序定位到用户RAM区(30H-7FH),0000H-0030H存储单元地址是有其他特殊功能的。
在汇编语言源程序的开始通常都用一条ORG伪指令来实现规定程序的起始地址。如果不用ORG规定则汇编得到的目标程序将从0000H开始。程序从ROM的0000开始存放程序,但是AJMP MAIN是一条无条件跳转指令,也就是说,单片机上电之后首先从0000处开始执行程序。
但是,AJMP直接将程序跳转到MAIN标号指向的存储区域开始取指令,并执行,而一般MAIN标号是放在语句ORG 0030之后的,也即,主程序是从0030这个地址开始存放的。
(3)单片机org指令扩展阅读:
单片机数据存储器的特殊区段:
1、工作寄存器区(00H-1FH)
在00H-1FH共32个单元,被均匀地分为四组工作寄存器堆:RB0、RB1、RB2、RB3,每组寄存器堆包含8个工作寄存器,均以R0-R7来命名,这些寄存器被称为通用寄存器。工作寄存器用于临时存放8位信息。在使用时,由程序状态字寄存器中的RS0、RS1来选择工作寄存器堆。
2、位寻址区(20H-2FH)
片内数据存储器的20H-2FH存储区为位寻址区,既可作为一般单元按字节寻址,也可按位进行寻址。位寻址区有16个字节,位地址为00H-7FH。
Ⅳ 汇编语言org指令怎么用
ORG是Origin的缩写:起始地址,源。在汇编语言源程序的开始通常都用一条ORG伪指令来实现规定程序的起始地址。如果不用ORG规定则汇编得到的目标程序将从0000H开始。
ORG的使用:
ORG2000H
START:MOVAX,#00H
(4)单片机org指令扩展阅读
51单片机最常用的伪指令如下:
(1)起始(Origin)伪指令
标号:ORGnn
功能:定义程序或数据块的起始地址。指示此语句后面的程序或数据块以nn为起始地址连续存放在程序存储器中。
例如:
ORG2000H
MOVA,20H
…
ORG伪指令规定了程序的起始地址从2000H开始,即该程序的第一条指令“MOVA,20H”从地址2000H开始存放。)
(2)字节定义(DefineByte)伪指令
标号:DB(字节常数或字符或表达式)
功能:指示在程序存储器中以标号为起始地址的单元里存放的数为字节数据(8位二进制数)。
例如:
OGR100H
TAB1:DB0FFH,'C',16,−1
从TAB1开始的地址单元依次存放0FFH、43H、10H、0FFH
Ⅳ 请问单片机中ORG是什么指令有什么作用
ORG指令用来改变汇编器的计数器,从而设定一个新的程序起始地址。
格式: ORG 表达式
表达式必须是绝对或简单再定位表达式。
ORG 0000H
AJMP MAIN
设定 MAIN 程序的起始地址为 0000H
也有说是偏移地址,格式为:ORG 偏移地址
Ⅵ 51单片机中ORG是什么意思有一段示例程序
ORG是个用于定位的伪指令。
简单的说就是把从这句话开始直到下一个ORG指令或者END指令前的程序语句都顺序放在它指定的地址里。比如说你的程序里ORG只管了一个语句(AJMP MAIN),则从0000h这个地址开始放语句。放多少,看下面有几条语句(直到org或end 指令为止)。
同样ORG 0030H是把它后面的所有到下一个ORG或END命令前的所有代码都顺序放到从0030H开始的程序单元。这应该是一个子程序。就像C语言里的子函数。
Ⅶ 51单片机ORG指令能随便写吗,如开头不写ORG 0000h,而写ORG 0010h,为什么会出错
因为51单片机复位后是从地址0000H开始执行,所以程序的开头肯定是0000H,也有些CPU复位后不是从0地址开始执行,这时候就需要把程序的开头定位在相应的复位点处
Ⅷ 单片机ORG 00H AJMP M3102 ORG 03H AJMP LP ORG 08H 的意思
00H是复位向量,从00H开始的指令是跳转到标号M3102,一般是系统初始化子程序。
03H是外部中断0向量,从03H开始的指令是跳转到标号LP,一般是外部中断0的中断服务程序。
Ⅸ 单片机指令中ORG是什么意思
单片机书里有的,ORG后面跟一个地址,是指该语句后的指令会放到这个地址里,一直顺序存放,直到END