1.采用C语言或汇编语言编写源文件(.c 或asm)。
2.经C编译器、汇编器生成COFF格式的目标文件( .obj)。
3.再用链接器进行链接,生成在C54x.上可执行的目标代码( .out)。
4.然后利用调试工具(软件仿真器simulator或硬件仿真器emulator)对可执行的目标代码进行仿真和调试。
5.当调试完成后,通过Hex代码转换工具,将调试后的可执行目标代码(.out) 转换成EPROM编程器能接受的代码(.hex), 将该代码固化到EPROM中或加载到用户的应用系统中,以便DSP目标系统脱离计算机单独运行。
C89: 1989年,美国国家标准协会(American National Standards Institute,简称 ANSI)推出C语言和C标准库的标准。该标准通常被称为ANSI C。由于该标准是1989年推出的,因此也被称为C89。
C90: 时隔一年,国际标准协会ISO参照ANSI标准,推出一模一样的C语言和C标准库标准,由于该标准是1990年提出的,因此被称为C90标准。ISO官方名称:ISO/IEC 9899: 1990, 9899 是C语言在 ISO 标准中的代号, 冒号后面的 1990 表示当前修订好的版本是在 1990 年发布的
C语言学习 day01****
1.1 C语言程序****
案例3.1 Hello world程序****
#include <stdio.h> /* 标准输入输出函数库 */
int main(void) /* 主函数 */
{ /* 主函数开始 */
printf("Hello World\n"); /* 输出指定内容 */
return 0; /* 主函数返回0 */
}
程序都是由函数和变量组成。函数(Function) 中包括一些程序要执行的指定操作,用语句(Statement) 表示;变量(Variable) 用于储存操作过程中使用的值。 printf 输出函数
函数结构****
函数有函数头和函数体组成。一般形式如下:
返回类型 函数名(参数列表)
{
声明部分
执行部分
}
返回类型为函数返回值的类型。
C程序开发步骤****
编译器(IDE)****
VC
GNU
1.2 程序的数据信息****
案例3.2 电子欢迎器****
scanf 输入函数
char 字符
变量后面加[]表示数组
include <stdio.h>
int main()
{
char student_name[20] , student_hometown[30]; /* 声明存放姓名和家乡的字符数组 没有变量时可以不用写 */
printf("Enter you name:"); /* 屏幕提示信息 */
scanf("%s",student_name); /* 输入student_name */
printf("Enter you hometown:"); /* 屏幕提示信息 */
scanf("%s",student_hometown); /* 输入student_hometown*/
printf("***********************\n"); /* 输出显示屏第一行 */
printf(" welcome\n"); /* 输出显示屏第二行 */
printf(" %s(%s)\n",student_name,student_hometown); /* 输出显示屏第三行 */
printf("***********************\n"); /* 输出显示屏最后一行 */
return 0;
}
%s表示占位符,代表输出的是字符串。字符串中不可以有空格
案例3.3 加法器****
自己写:
#include <stdio.h>
int main (void)
{
int a,b,sum;
printf("a=");
scanf("%d",&a);
printf("b=");
scanf("%d",&b);
sum = a + b;
printf("%d+%d=%d\n",a,b,sum);
}
教材:
#include <stdio.h>
int main(void)
{
int a,b,sum; /* 声明输入变量a、b和变量sum为整型 */
printf("Please enter two numbers:\n"); /* 提示文本 */
scanf("%d%d",&a,&b); /* 输入两个整数 */
sum=a+b; /* 计算两个输入变量之和并储存到变量sum之中 */
printf("%d+%d=%d",a,b,sum); /* 输出计算结果 */
return 0;
}
int 表示整型变量
&a,&b表示输入两个数值
%d 表示按十进制输入整数数据
1.3 C程序的控制结构****
C程序三种控制结构:顺序结构(Sequence)、选择结构()和循环结构。
顺序结构 案例3.4 三角形面积****
自己写:
#include <stdio.h>
#include <math.h>
int main ()
{
int a,b,c,s,area;
printf("Enter a,b,c:");
scanf("%d%d%d",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)(s-b)(s-c));
printf("area=%d",area);
return 0;
}
由于声明变量int为整型变量,area结果只能是整数。结果局限
教材:
#include <stdio.h>
#include <math.h> /* 平方根函数sqrt()包含在math.h中 */
int main()
{
float a,b,c,s,area; /* 声明变量a,b,c,area */
printf("Enter a,b,c:\n");
scanf("%f%f%f",&a,&b,&c); /* 输入三个边边长 */
s=(a+b+c)/2; /* 计算s */
area=sqrt(s*(s-a)(s-b)(s-c)); /* 计算面积 */
printf("area=%0.3f\n",area); /* 输出面积 */
return 0;
}
float 单精度实数,变量声明放在执行语句前面
%f 表示是给float型变量赋值
sqrt() 表示开平方
选择结构 案例3.5 BMI测试仪****
#include<stdio.h>
int main()
{ /* 判断BMI指标是否正常 */
float height,weight,index;
int flag; /* 正常与否标志 */
printf("Enter your height and weight:\n");
scanf("%f%f",&height,&weight);
index=weight/(heightheight); / BMI计算公式 */
if (index>=18.5&&index<=23.9) /* 判断BMI是否在正常范围内 */
flag=1; /* 正常flag为1 */
else
flag=0; /* 不正常flag为0 */
printf("%d\n",flag); /* 输出flag值 */
return 0;
}
if else 语句,表示如果条件成立执行if后面的语句,否则执行else后面的语句
&&逻辑运算符,表示同时满足两个条件
测试BMI状态
#include<stdio.h>
int main()
{ /* 判断BMI指标是否正常 */
float height,weight,index;
char status; /* BMI指标状态 */
printf("Enter your height and weight:\n");
scanf("%f%f",&height,&weight);
index=weight/(heightheight); / BMI计算公式 */
if (index > 23.9) /* 判断BMI是否过高 */
status='H'; /* BMI过高 */
else if(index >=18.5)
status='M'; /* BMI合适 */
else
status='L'; /* BMI过低 */
printf("Your BMI is :%c", status); /* 输出BMI状态 */
return 0;
}
char字符变量,C语言中字符数据要用单引号括起来
%s表示字符串
%c表示字符