嵌入式培训W1D2

C语言基本知识

计算机基本组成
输入设备 输出设备 CPU 内存 硬盘

输入设备:键盘鼠标等
输出设备:显示屏等
CPU:中央处理器,一块超大规模的集成电路,是一台计算机的运算核心和控制核心,主要功能是解释计算机指令以及处理计算机软件中的数据
内存:也称内存储器,用于暂时存放CPU中的数据,以及与硬盘等外部存储器交换的数据。主存-辅存层次主要解决存储系统的容量问题,缓存-主存层次主要解决CPU和主存速度不匹配问题。内存又包括随机存储器RAM和只读存储器ROM以及高速缓存CACHE。其中RAM是最重要的。
在这里插入图片描述

硬盘:属于存储器的一种,能够永久存储数据。现在的硬盘主要分为固态硬盘SSD和机械硬盘

计算机硬件与程序执行
在这里插入图片描述
程序是保存在硬盘中的,要载入内存才能运行,CPU也被设计为只能从内存中读取数据和指令

编译系统
又称为第二类编程环境。开发者根据语言的规定编写源程序,然后进行编译、连接,生成可执行文件
流程
C语言代码编译流程
具体流程 预处理–编译–汇编–链接
预处理:对头文件和宏定义进行处理,把xx.c编译为xx.i
编译:把xx.i编译为汇编文件xx.s
汇编:把xx.s编译成二进制文件xx.o,此时只缺少某些库
链接:链接C语言底层提供的库文件,生成可执行文件
操作 -E -S -C -O
对应生成文件 xx.i xx.s xx.o 可执行文件

计算机编码规则
任何数据在内存中存储都是以二进制的形式进行存储
不同进制之间可相互转换,八进制与十六进制可通过二进制便捷转换

十进制转换其它进制
(1)整数部分的转换
除基取余法:用我们的十进制数去除以我们目标的基数,第一次相除所得余数为目的数的最低位,将所得商再除以基数,反复执行上述过程,直到商为“0”,所得余数为目的数的最高位
(2)小数部分的转换
乘基取整法:用小数乘以目标数值的基数,第一次相乘结果的整数部分为目的数的最高位,
将其小数部分再乘基数依次记下整数部分,反复进行下去,直到小数部分
为“0”,或满足要求的精度为止。

C语言常量变量
常量就是使用过的数据,值不能更改,在内存中有一块专门的区域进行存储
整形常量:整数
浮点型常量:小数,指数 (3.14e8表示3.14*10^8)
字符型常量:使用单引号引起来的一个字符,字符对应一个ASCII码
字符串常量:使用双引号引起来的一串字符,以‘\0’结尾
标识常量:宏定义,用来代替某些书记,提高代码可读性。主要是原样完全替代。
在这里插入图片描述

数据可以改变的量,我们叫变量。在计算机中,变量关联内存空间,方便对其访问。
内存以字节为单位,一个字节占八个二进制位。
使用sizeof关键字可求数据大小。

在这里插入图片描述

不同系统的大小
64位:
64
32位:
32

定义一个变量
数据类型 变量名=值;(int b=10;)

变量命名规则
可以由字符,数字,下划线组成。不能以数字开头。注意“见名知意”,绝对避免使用拼音。可以使用驼峰命名法,下划线。

计算机内运算本质是机器码运算
计算机要使用一定的编码方式进行存储,原码,反码,补码是机器存储一个具体数字的编码方式。数据在内存中是以补码的形式存储,%d输出的是数据的原码形式。

无符号数所有位都是数据位,原反补码是它自身

有符号数最高位是符号位,其它位是数据位。最高位是1代表负数,0代表正数。

在这里插入图片描述

数据类型转换
隐式转换(自动转换):小范围自动转化位大范围
显示转换(强制转换):使用数据类型强转();等号两边要求类型匹配,计算机不会四舍五入。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值