区分单片机指令的长度有什么意义?单片机指令长度什么概念?详细的介绍一下单片机长度的计算方法。

单字节指令 双字节指令 三字节指令的区分 我用的是8051 谢谢了

用汇编时,计算地址时要用到。长度就是你说的几个字节,至于长度,不用计算,可以查指令表。当然也有一定规律可循。至于C语言,就不用考虑这长度了。
举个一个延时10MS子程序的例子:
D10MS: ;晶振12MHZ
MOV R7,#250
MOV R6,#20 ;双字节指令
DJNZ R6,$ ;双字节指令
DJNZ R7,$-4 ;R7不为0,从本条指令往前跳4 个字节处执行。这样就是跳到MOV R6,#20
RET
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-08
实际运用中,多数情况下,没什么意义;
之所以要了解,主要是对实时性要求很严格的程序工程来说,这类工程,需要的执行周期很短,程序很好,所以,你要明白每条指令运行多长时间,通过对指令的优化,使得程序一个周期达到最小,这类程序多数用汇编语言编写;
而实际运用中,很少有对实时性要求非常非常严格的情况,且一般运用中,工程量较大,多数用C语言,靠编译器自动优化,所以,你明白指令长度和执行周期,对51来说,没什么意义。
相似回答