86汇编与单片机汇编的具体指令区别

来源:百度知道 编辑:UC知道 时间:2024/05/17 06:39:02
我学了86的汇编但没学单片机的,看单片机的程序不太懂。
解释要详细地,对比着解释的那种。
翻书太费时间,我时间不够用了,望各位指点。

就体系来说,是很像的,毕竟都是Intel的产品,都是
操作码+目的操作数+源操作数
你去看TMS320C54x的就知道不同体系的汇编区别有多大了。

但是具体而言,两者完全不通用,毕竟两个系统的硬件结构都不一样,自然不可能有很大的相似性。
但是你先学了86再学单片机,应该会比较容易学的说……单片机的片外扩展比86容易多了,我想要说区别的话,这是其一:
单片机有比较齐全的对外扩展硬件的指令,比如
MOVX @DPTR,A
就是一条直接访问外部数据存储器的指令,而86没有相应的指令。

86使用的是冯诺伊曼体系,数据存储器与程序存储器不区分,但是单片机区分,再比如上面那条指令:
MOVX @DPTR,A
这是一条访问外部数据存储器的指令,而
MOVC @DPTR,A
是一条访问程序存储器的指令。

86主要的寄存器有AX,BX,CX,DX,DI,SI等等。作为寄存器,前四者功能基本通用,而每一种寄存器都有自己的特殊功能,就像它们的名字一样,而在单片机中,寄存器主要用A,B,Rn,DPTR,其中N=0~8,每种寄存器的功能不像86中的寄存器那么强大。

其实你只要随便找一本单片机的书看看硬件部分,对比86,很快就能理解了。
汇编是直接与硬件挂钩的,楼主不要偷懒不看啊。

不同点很多,8051的汇编使用起来有很多限制,特别是寄存器的使用上。我觉得你还是看看书吧,要是总结起来,每一条指令都有不同。要不就上网搜搜看有没有已经整理好的。