IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> c语言--第一章:初识c语言 -> 正文阅读

[嵌入式]c语言--第一章:初识c语言

初识c语言📖

1. cpu工作原理

cpu工作原理非常简单,从内存中获取一条指令并执行,然后再从内存中获取下一条指令并执行。简单来说,cpu是由运算器、控制器、寄存器组组成。运算器用来对二进制数据进行运算的部件,寄存器组用来临时存放参加运算的数据和运算得到的中间或最后的结果,而控制器则是cpu的指挥中心。在控制器里,它有一个寄存器名为指令计数器,一个指令计数器存储下一条指令的内存地址,cpu使用该地址获取和更新下一条指令。在获取指令后,cpu在另一个寄存器存储该指令,这个寄存器名为指令寄存器,并更新指令计数器里下一条指令的地址。cpu所能理解的全部指令称为指令集。

2. 语言标准

美国国家标准协会 ANSI 在1989年发布了第一个c标准,该标准 ANSI C 定义了c标准和c标准库。国际化标准组织 ISO 在1990年采用了这套标准,所以 ANSI CISO C 是完全相同的标准。ANSI CISO C 也分别简称为“c89”和“c90”。1994年,ANSIISO 联合委员会开始修订c标准,最终发布“c99”标准。虽然该标准已经发布了很长时间,但并不是所有的编译器都完全实现了该标准里所有改动,而且供应商并未像支持“c90”一样支持“c99”,那么后来“c11”标准里则把“c99”标准里的一些特性变成了可选项。

3. c语言使用步骤

第一步:定义程序目标

写程序前要有一个明确的目标,要在脑中有清晰的思路。

第二步:设计程序

如何用程序来解决问题。

第三步 :编写代码

设计好程序后编写代码去完成。

第四步:编译

编译器会将源代码翻译成可执行程序,可执行程序是由机器语言表示。c语言编译器则负责将源代码翻译成特定的机器语言。并且c编译器还将源代码和c库的代码合并成最终的程序。最后生成一个用户可执行文件,里面包含计算机能理解的指令。

第五步:运行程序

在windows上可用IDE来编辑和执行程序,在Linux上终端模式或者gcc或者IDE等来编辑和执行程序。

第六步:测试和调试程序

程序不是都能没有错误的执行,并且都不是能完全按照你所定义的程序的目标去执行和执行完成后你最终想要得到的结果。那么有时候程序中有一些错误,行话叫bug。查找并修复程序错误的过程加调试。

第七步:维护和修改代码

你发现程序有错或者扩展程序,这时就要维护和修改代码。

4.编程机制

用c语言编写程序时,编写的内容都存放在文本文件中,该文件称为源代码文件。通常都是以.c结尾的文件扩展名。

5.目标代码文件、可执行文件和库

c编程基本策略是把源文件转换为可执行文件。一般c实现是通过编译和链接两个步骤完成转换。中间文件,即把源代码转换为机器语言代码,将机器语言代码放入目标程序中,此时计算机还不能直接执行目标程序,应为现在目标程序还不是完整的程序。目标程序缺少库函数。如 printf() 函数只作为一条指令存储在目标程序中,真正的 printf() 函数则存储在另一个被称为库的文件里。链接器的作用则把目标代码、系统的标准启动代码和库代码合并成一个文件即可执行文件。对于库代码来言,链接器只会把程序中用到的库代码提取出来。

6.GNU编译器和LLVM项目

GNU是始于1987年,是一个开发大量自由unix软件的集合,GNU编译器集合也被称为GCC,其中包含 GCC C编译器,GUN编译器集合也是GNU项目的产品之一。GCC有各种适应不同平台和硬件的版本,包括unix,Linux,Windows。用gcc命令即可调用GCC C编译器,许多使用gcc的系统都用cc1作为gcc的别名。
LLVM则是替代cc的一个项目。他的clang编译器处理c代码,可以通过clang调用。同样也是有各种不同的版本供不同的平台使用。
GCC和LLVM都可以用cc -v命令查看使用的版本。

7. Linux和Windows

linux上使用gcc前要看看是否安装gcc,没有安装则要安装。同样可以用cc命令来代替gcc命令,你可以认为他们是一样的。
Windows上可以下载Cygwin和minGW,这样可以在windows的命令行里使用gcc编译器。Borland的c++编译器5.5也可以免费下载,支持c90。
在Windows下,许多供应商都提供了集成开发环境,或称为IDE。



  1. 在unix系统中,unix c编译器要调用语言定义的cc命令,现在已经退出了历史舞台。但unix系统提供的c编译器通常来自一些其他源,然后用cc命令作为编译器的别名。另外,虽然在不同的系统中会调用不同的c编译器,但用户任然可以使用相同的命令。 ??

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-10-24 15:04:06  更:2021-10-24 15:05:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:55:32-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码