C语言符号指令表Word文档格式.docx

上传人:b****2 文档编号:166952 上传时间:2023-04-28 格式:DOCX 页数:13 大小:18.66KB
下载 相关 举报
C语言符号指令表Word文档格式.docx_第1页
第1页 / 共13页
C语言符号指令表Word文档格式.docx_第2页
第2页 / 共13页
C语言符号指令表Word文档格式.docx_第3页
第3页 / 共13页
C语言符号指令表Word文档格式.docx_第4页
第4页 / 共13页
C语言符号指令表Word文档格式.docx_第5页
第5页 / 共13页
C语言符号指令表Word文档格式.docx_第6页
第6页 / 共13页
C语言符号指令表Word文档格式.docx_第7页
第7页 / 共13页
C语言符号指令表Word文档格式.docx_第8页
第8页 / 共13页
C语言符号指令表Word文档格式.docx_第9页
第9页 / 共13页
C语言符号指令表Word文档格式.docx_第10页
第10页 / 共13页
C语言符号指令表Word文档格式.docx_第11页
第11页 / 共13页
C语言符号指令表Word文档格式.docx_第12页
第12页 / 共13页
C语言符号指令表Word文档格式.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言符号指令表Word文档格式.docx

《C语言符号指令表Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言符号指令表Word文档格式.docx(13页珍藏版)》请在冰点文库上搜索。

C语言符号指令表Word文档格式.docx

longint

长整型

32

unsignedlongint

无符号长整型

5

signedlongint

有符号长整形

float

浮点数(实数)

0.175e-38~0.402e38

double

双精度浮点

void

没任何数据

用户自定义数据类型格式

typedefstruct{

数据类型变量序列1;

...

}自定义数据类型的名称;

保留字

_at_,alien,bdata,break,bit,case,char,code,compact,const,continue,data,

default,do,double,far,else,enum,extern,float,for,goto,if,funcused,idata,int,

inline,interrupt,large,long,pdata,_priority_,reentrant,return,sbit,sfr,sfr16,

short,sigend,sizeof,small,static,struct,switchc_task_,typedef,using,union,

unsigned,void,volatile,while,xdata

常量表示法

常数

规则

范例

十进制

一般十进制格式

二进制

开头加上0b

0b00001110

八进制

开头加上O

O0123

十六进制

开头加上0x

0xFF45

无符号整数常量

结尾加上U

30000U

长整数常量

结尾加上L

299L

无符号长整数常量

结尾加上UL

327800UL

浮点数的常量

结尾加上F

4.234F

字符常量

以单引号括起来

‘a’

字符串常量

以双引号括起来

“hello”

-----------------------------------------------------运算符-----------------------------------------------------

算术运算

运算符

执行结果

+

c=a+b;

c等于10

d=a—b;

d等于6

*

e=a*b;

e等于16

/

f=a/b;

f等于4

%

取余数

g=a%b;

g等于0

++

加1

c++;

相当于c=c+1;

c等于11

——

减1

d——;

相当于d=d—1;

d等于5

=

等于

a=8;

设置a等于8

+=

先相加在等于

e+=5;

相当于e=e+5;

e等于21

—=

先相减在等于

f—=5;

相当于f=f—5;

f等于—1

*=

先相乘在等于

b*=5;

相当于b=b*5;

b等于0

/=

先相除在等于

a/=5;

相当于a=a/5;

a等于1

%=

先取余数在等于

a%=5;

相当于a=a%5;

a等于3

※假设a等于8,b等于2

比较运算

==

a==5

F

不等于

a!

=5

T

<

小于

a<

>

大于

a>

小于等于

大于等于

※比较运算结果是个布尔值既TRUE(真值)或FALSE(假值)。

假设a等于8

逻辑运算

&

AND

(a>

5)&

(a<

10)

||

OR

5)||(a>

!

NOT

※逻辑运算结果是个布尔值既TRUE(真值)或FALSE(假值)。

位逻辑运算

a&

0x01

a等于1

|

a|0x80

a等于0x85

~

~a

a等于0xFA

^

XOR

a^0xFF

a等于0xFA(相同为0,不同为1)

左移

a等于0x0A

右移

※假设a等于5

----------------------------------------------------控制命令---------------------------------------------------

if语句

if(条件)语句1;

else语句2;

例:

if(d==4)d=0;

//如果d等于4就设置d等于0

elsed++;

//否则就将d加1

if(ticks==0){//如果ticks等于0

ticks=1000;

//ticks设置成1000

counter[0]++;

//counter[0]加1

}

嵌套if语句

if(counter[0]==10){

counter[1]++;

counter[0]=0;

if(counter[1]==10){

counter[2]++;

counter[1]=0;

}

switch语句

switch(变量){

case常量1:

语句1;

break;

case常量2:

语句2;

case常量3:

语句3;

......

default;

语句n;

for循环

for(初值,条件,变化值)语句;

for(i=0;

i<

10;

i++)x=x+i;

for(i=1;

10,i++)

for(j=1;

j<

10,j++)

printf(“%d%d”,i,j);

无穷循环:

for(;

;

);

while循环

while(条件)语句;

while(ch!

=!

’A’)ch=getche();

无穷循环:

while

(1);

do/while循环

do{

语句;

}while(条件);

ch=getche();

}while(ch!

=”A”);

goto语句

loop1:

x++;

if(x<

100)gotoloop1;

----------------------------------------------------指针和函数------------------------------------------------

指针的定义

数据类型*指针变量的名字;

char*p;

int*x;

指针与数组

charfilename[80];

char*p;

p=filename;

//指针p存放filename的开始地址

intx[5]={1,2,3,4,5};

int*p,sum,i;

p=x;

//指针p存放数组x的开始地址

5;

i++)

sum=sum+p[i];

//p[i]相当于x[i]

指针的运算

1.针变量前面加上*号就是取得指针所指向位置的内容。

int*p;

//指针p存放数组x的开始地址

*p=10;

//相当于设置x[0]等于10

2.变量前面加上&

符号,可以取得一个变量的位置。

intx,y;

int*p;

p=&

x;

//指针p存放x的地址,相当于p是指向x的指针

*p=1;

//相当于设置x等于1

3.&

符号也可以加在数组的前面

intx[5];

x[2];

//指针p存放x[2]的地址,相当于p是指向x[2]的指针

*p=50;

//相当于设置x[2]等于50

函数

函数类型函数名称(参数序列);

参数说明

{

函数的主体

voiddelay(void){//不返回任何数据的函数

unsignedchari,j;

//没有任何参数的函数

for(i=0,i<

255,i++)

for(j=0,j<

255,j++);

main()

...

delay();

//调用函数

unsignedcharsum(unsignedchata,unsignedchatb)

unsignedchatx;

check_GLCD_busyflag();

//函数中可以调用另一个函数

x=a+b;

returnx;

//return会返回x的数据

中断服务函数

void中断服务程序的名称(void)interrupt中断号码using寄存器组号码

中断服务子程序主体

中断号码

#defineIE0_VECTOR0//0x03

#defineTF0_VECTOR1//0x0B

#defineIE1_VECTOR2//0x13

#defineTF1_VECTOR3//0x1B

#defineSIO_VECTOR4//0x23

对于S51有定时器2

#defineTF2_VECTOR5//0x2B

staticvoidxint0_isr(void)interruptIE0_VECTOR(或0)using1

unsignedchari,j=0xFF;

16,i++)

{

j++;

P1=j;

//将数值输出到P1口

delay_4isr();

-----------------------------------------------------汇编语言--------------------------------------------------

在C中加入汇编语言

voiddelay100us()

#pragmaasm

movr7,#1

more:

movr3,#48

djnzr3,$

djnzr7,more

#pragmaendasm

----------------------------------------------------宏(macro)----------------------------------------------

宏的定义

%*define(macro名称)(macro的指令)

%*define(write_1)(

setbDI

serbSK

clrSK

#define宏的名称宏的指令

#defineucharunsignedchar

1级优先级左结合

  ()圆括号

  []下标运算符

  ->

指向结构体成员运算符

  .结构体成员运算符

2级优先级右结合

  !

逻辑非运算符

  ~按位取反运算符

  ++自增运算符

  --自减运算符

  -负号运算符

  (类型)类型转换运算符

  *指针运算符

  &

地址与运算符

  sizeof长度运算符

3级优先级左结合

  *乘法运算符

  /除法运算符

  %取余运算符

4级优先级左结合

  +加法运算符

  -减法运算符

5级优先级左结合

  <

左移运算符

  >

右移运算符

6级优先级左结合

、<

=、>

、>

=关系运算符

7级优先级左结合

  ==等于运算符

=不等于运算符

8级优先级左结合

按位与运算符

9级优先级左结合

  ^按位异或运算符

10级优先级左结合

  |按位或运算符

11级优先级左结合

逻辑与运算符

12级优先级左结合

  ||逻辑或运算符

13级优先级右结合

  ?

:

条件运算符

14级优先级右结合

  =+=-=*

  =/=%=

=<

<

=

=^=|=全为赋值运算符

15级优先级左结合

  ,逗号运算符

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2