AJMP,LJMP,SJMP这三个指令之间能不能通用呢?

我再学习单片机汇编语言时经常用到这三个指令,看了很多遍却依然不知道他们的区别到底在哪?请高手指点一下如何使用这三条指令,以及什么时候它们能互相换用!!1谢谢
可是我现在要做毕业设计,必须得学会使用那些指令
啊!!

第1个回答  2006-04-05
其实初学的时候没有什么大的区别。可以先不管它本回答被提问者采纳

LJMP、AJMP、SJMP指令的区别是什么?使用AJMP和SJMP指令有什么注意事项...
【答案】:一是转移范围不一样:LJMP转移范围是64KB;AJMP转移范围是与当前PC值同一2KB;SJMP转移范围是当前PC-128B~+127B。二是指令字节不一样:LJMP是3字节指令;AJMP、SJMP是2字节指令。使用AJMP和SJMP指令应注意转移目标地址是否在转移范围内,若超出范围,程序将出错。转移目标地址一般用转移目标的...

单片机汇编语言的几个疑问
1、如果程序代码空间不紧张的话,建议你全部使用LJMP,或者如果跳转的目标段程序相隔很近,也可以使用SJMP。个人认为AJMP最麻烦:其机器码所标注的地址位从A10到A0,计11位,000H~7FFH,也就是说跳转到的地址与当前地址的A10到A0必须一样,比如:原来AJMP地址为:07F8H,目标地址:07F0H,如果调试软...

单片机中的AJMP LJMP SJMP JMP有什么区别?
1、字节不同 SJMP 如果跳转到的标号地址距离当前PC所指的地址小于256字节,用SJMP。AJMP 如果跳转到的标号地址距离当前PC所指的地址小于2K字节,用AJMP。LJMP 如果跳转到的标号地址距离当前PC所指的地址小于64K字节,用LJMP。ACALL是调用的子程序入口地址距离当前PC所指地址需介于0~2K,LCALL是0~64K。2、...

单片机中JMP与LJMP,SJMP,AJMP有什么区别
SJMP 如果跳转到的标号地址距离当前PC所指的地址小于256字节,用SJMP AJMP 如果跳转到的标号地址距离当前PC所指的地址小于2K字节,用AJMP LJMP 如果跳转到的标号地址距离当前PC所指的地址小于64K字节,用LJMP ACALL是你调用的子程序入口地址距离当前PC所指地址需介于0~2K,LCALL是0~64K。

ljmp和ajmp区别?
AJMP是无条件跳转指令之一,叫做绝对跳转。而LJMP则是长转移指令。如果一个程序代码在2KB以内(是指编译后的BIN代码),可以用AJMP指令。如果一个程序代码超过了2KB,就要用LJMP指令了。2、范围不同。AJMP 跳转的范围是2KB之内的,就是AJMP指令和跳转的目的地址在ROM中的同一个2KB范围内。LJMP 跳转的...

单片机指令中长转移LJMP,短转移SJMP和绝对转移AJMP还有JMP到底有什么...
跳的距离不一样,SJMP,AJMP,LJMP就像立定跳、跑跳和三步跳,其实写程序时,只要写JMP就可以了,keil编译时让它自己做,我们不必理会它是具体哪一个。

单片机问题
如果是用汇编的话,目标文件不会变 因为 ORG 0000H LJMP START ORG 1000H START:...END 一般的汇编程序都是这样写的,如过把ORG 1000H(也可能是其他地址)改变,目标文件就变了 另外,程序中START换成MAIN,在LJMP MAIN语句中的作用是一样的,都是跳到主程序,只是一个标号问题。

AJMP相关指令
在51单片机中,有一种指令用于实现长距离的程序跳转,即LJMP指令。这种指令支持长跳转,可以在芯片的最大可编程内存区域,即ROM的64KB范围内进行操作,为程序员提供了更大的空间来设计复杂的程序流程。相比之下,SJMP指令则执行短距离的跳转,其范围限定在-128到+127个ROM单元之间。这意味着它适用于那些...

单片机中sjmp和ljmp是啥意思啊
长转移指令为三字节,双周期指令。上机试试吧!很直观的! For Example: LJMP F886H 注意:在下载的这个8051DEBUG软件中,不支持标号,且程序状态字PSW(Program State Word)中的D0位,即奇偶标志位P,与正确的正好相反,这一点是错误的,用的时候留意一下。只要记好:累加器ACC中1的个数为奇数...

汇编语言长转移LJMP和SJMP短转移什么意思,分别什么时候怎么用呢 LJMP...
“loop”,“start”等等。不同的地方就是跳转的长度,LJMP 是16位的,最大可以到64K,SJMP是8位的(确切说是7位的,因为还有1位是符号位),最大百来个字节。但是SJMP是双字节指令,执行速度会比LJMP快一些。所以一般小的循环或分支程序用SJMP,在不清楚跳转距离时可用LJMP。学习心得供参考。

相似回答