×
单片机 > 单片机程序设计 > 详情

51单片机C和汇编指令对比

发布时间:2020-05-27 发布时间:
|
一、单一指令比较:

字节操作

 

加法指令

减法指令

乘法指令

除法指令

取模指令

位测试指令

_testbit_ (bit);

左移指令

Variable = Variable << 1;

右移指令

Variable = Variable >> 1;

位取反指令

与运算指令

或运算指令

异或运算指令

子程序调用

RESULT=BYTESUB(ARG1, ARG2);

CALL BYTESUB

判断指令

CJNE R1,#0F0H,LABEL1

DJNZ R1,LABEL1

查表指令

RESULT = NUM[index];

MOVC A,@A+DPTR

指针操作指令

POINT = & NUM;

RESULT = *POINT

 

二、伪指令

起始指令

 

中断入口向量

void timer0(void)interrupt 1 using 1

变量定义

寄存器定义

unsigned char code tab[]={0x01,0x02,0x03,0x04};

 

三、程序调用上的不同

Unsigned char BYTESUB(ARG1,ARG2)   //input ARG1,ARG2;output the result

{

}

……

RESULT=BYTESUB(ARG1,ARG2);

……

CALL BYTESUB

……

;INPUT: A,B

;OUTPUT: A

四、中断处理上的不同:

void timer0(void)interrupt 1 using 1     // 开启TC0中断,中断号1,使用寄存器组1.

{

}

                     ORG       0BH

                     LJMP      TC0ISR

TC0ISR:



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
8051单片机的函数发生器的设计