首页 > 其他分享 >嵌入式学习录2

嵌入式学习录2

时间:2025-01-14 20:31:08浏览次数:3  
标签:字符 存储 0000 常量 嵌入式 学习 整型 类型

数据类型 运算符 和 表达式

一、什么是编程

用编程语言把人类的思想告诉计算机,让计算机解决人类的问题。是人类与计算机“交流”的途径。

编程语言有很多种类:C语言 python java......等,本文章主要学习C语言。

1、学习目标

(1)语法 //格式

(2)编程思维  //思路

(3)编程习惯

二、常量与变量

常量   在"程序运行过程"中,其值不能被改变的量称为 常量
变量   在"程序运行过程"中,其值能被改变的量称为 变量

三、C语言提供的数据类型

1、基本类型

(1)整型     //整数 

整型常量形式 
进制:

进位的制度(满几进一)

123   //十进制的常量形式 
0123  //八进制的常量形式 
0x123 //十六进制的常量形式 

计算机最终存储的是二进制形式 

进制的转化:
十进制 <=> n进制 

方法:除n取余法

n进制 <=> 十进制

方法:加权求和

十六/八进制 <=> 二进制

方法:一位十六 / 八进制数 对应 四 / 三位二进制数

eg:八进制: 1 7 3 <======>二进制:  001(1)   111(7)     011(3)

       十六进制:7 B <======>二进制:0111(7)   1011(B)

2.整型变量定义 
定义变量方法:

语法: 数据类型+变量名

数据类型关键字 :

int        //整型 
short      //短整型 
long       //长整型
long long  //长长整型 

变量名(标识符)命名规则:

1. 数字,字母,下划线 
2. 不能是数字开头 
3. 字母区分大小写 
4. 不能与 关键字 重名 
5. 不要和 库函数 重名 
6. 不要和 预处理命令等二级关键字 重名   

3.数据类型大小(占用内存空间的字节数)

sizeof(int) = 4              4字节
sizeof(short) = 2          2字节
sizeof(long) = 8           8字节
sizeof(long long) = 8   8字节

 4.整型数据存储 

8bits=1bytes

存储的两种方式:

小端(pc端默认为小端):高高低低(高位数据存储在高地址处,低位数据存储在低地址处)

大端 

两种int类型存储方法(存储的均为补码):
 
unsigned int (无符号类型) 


0000 0000 0000 0000 0000 0000 0000 0000 (数值位)   

取值范围:【0, 2^32 -1 =  4,294,967,295】


signed int (有符号类型)  


0/1(符号位:0正1负)| 000 0000 0000 0000 0000 0000 0000 0000 (数值位) 

取值范围:【-2^31 = -2,147,483,648,2^31-1=2,147,483,648】

补码计算方法:

无符号类型及有符号类型正数补码与原码相同

有符号类型复数补码计算方法:1.求原码的反码(0变1、1变0)

                                                   2.求得反码后加1则为补码

(2)浮点型     //小数类型 --- 数值类型 

1.浮点型 常量形式 

浮点型常量默认为double类型
 1.234
 1.23e4  //科学计数法形式 
 1.23E4  //1.23 * 10 ^4 
 1.23E-4 //1.23 * 10^-4


2.浮点型 变量 


 float    //单精度浮点类型 
 double   //双精度浮点类型 


3.浮点类型的大小 

 float 4字节 
 double 8字节 


4.浮点数给值 


  float f = 1.234;
  float f = 1.23e4;
 

5.浮点数的存储 

将十进制形式的小数 转换为 二进制形式的小数 进行存储

整数部分:除2取余法 
小数部分:乘2取整法 
           

(3)字符型     //现实生活中的一些符号 --- 英语中出现符号

1.字符型常量 


  'a' //表示一个字符常量 a 

2.字符型变量 


  字符类型 关键字 
  char  
  
  char ch; 


3.字符型类型大小 


  一个字节 

4.字符数据存储方法


 'a' ---编码值(数值)----存到计算机     
 字符数据 实际是 存的是 编码值


        
5. ASCII编码 


   0~32  控制字符(不可见字符)
   33之后 可见字符 
   48~57  '0'~'9'   //数字字符 与 数值 之间转化 
               '0' - 48  //数值 
                0 + 48  //字符 
   65 ~ 90 'A' ~ 'Z'
          +32
   97 ~ 122 'a' ~ 'z' 

char 类型 从本质上看 实际上也是一种整型(tiny int) 

6. char类型取值范围 

 unsigned char [0,255]
 signed char   [-128,127]


2、构造类型 
3、指针类型 
4、空类型 

标签:字符,存储,0000,常量,嵌入式,学习,整型,类型
From: https://blog.csdn.net/2401_85559844/article/details/145121675

相关文章

  • 嵌入式学习录3
    书接上回数据类型运算符和表达式(2)一、转义字符及字符常量转义字符是由反斜杠\将后面的字符转换成其他的意义以下为转义字符及其作用:二、算术运算符+  加法-  减法*  乘法/  除法   注:1.如果是两个整型数相除效果相当于是整除    ......
  • ROCKETMQ学习
    1.RocketMQ介绍RocketMQ是一款由阿里巴巴开源的分布式消息中间件。它具有低延迟、高吞吐量、高可用性和高可靠性等特点,适用于构建具有海量消息堆积和异步解耦功能的应用系统。1.1.基本概念●生产者(Producer):也称为消息发布者,是RocketMQ中用来构建并传输消息到服务端的运行实体......
  • EPLAN P8 学习笔记 配图 20250114
    组织结构、细节会生疏。Pageproperties-Fullpagename、Pagetype、PagedescriptionFullpagename-StructureidentifiersMainProjecttree-IdentifierStructurePageTypeNameDescriptionPagesObject元素structure结构identifier.excalidrawProjectData-S......
  • 字典学习方法
    字典学习方法是机器学习中的一种技术,它旨在从数据中学习一个有效的字典,以便更好地表示或分类数据。以下是对字典学习方法的详细介绍:一、定义与原理字典学习方法通过从训练数据中学习一个过完备的字典矩阵,使得数据可以表示为字典中少量原子的线性组合。这些原子可以看作是数据的......
  • 计算机专业应如何进行学习?
    前言欢迎各位来到贵州大学shadow计算机协会创办的学习区。我们社团旨在通过同学之间的互相交流来相互促进,相互学习。对于刚刚升进大一的广大计算机类同学,你们往往都会在刚进校就会有一个问题:作为计算机类的我们应该怎样学习?我们的出路又是什么,考研是否有必要?对于这些......
  • 一种基于具身化、符号嵌入、因果学习和记忆原则的通用人工智能(AGI)框架
    GeneralistAI(AGI)frameworkbasedontheprinciplesofembodiment,grounding,causalityandmemory 图:通用AGI系统的功能框图。概念模型由以下部分组成:(1)核心框架、体现,提供与世界接口和交互的物理本质和必要机制;(2)记忆,由不同的记忆子系统组成——感觉记忆、工作记忆......
  • STM32H743 嵌入式开发笔记(一):开发板元器件选型
    2025开年,心血来潮想要开发STM32H743单片机。上网搜寻了半天没找到自己喜欢的开发板,于是乎,我做了一个大胆的决定:作为一名硬件工程师,为何不做一块儿属于自己的开发板?废话不多说,直接开干!1. 电源部分1.1 供电接口供电接口当然采用USBType-C(MicroUSB早该被扔进历史的......
  • 【实战指南】零基础到精通AI大模型:附带详细学习路线与实践技巧,助你快速入门并精通!
    作为零基础小白学习AI大模型,可以遵循以下步骤:基础知识学习:数学基础:学习线性代数、概率论、统计学、微积分等,这些是理解AI模型的数学原理的基础。编程基础:至少掌握一门编程语言,如Python,这是实现AI算法的工具。了解AI基本概念:学习机器学习、深度学习的基本概念,了解不同的......
  • 基于深度学习的手写文本识别系统
    文章目录前言一、准备二、(0-9)数字识别模型代码1.引入库2.读入数据3.模型训练4.模型测试5.模型权重保存(不用重复训练)6.交互式界面三、结果展示四、jupyter代码下载前言用chatgpt"实现基于深度学习的手写文本识别系统|Python,PyTorch":设计并实现了基于卷积神......
  • 教育行业的智能化:AI如何改变我国的学习方式
    人工智能(AI)正在全球范围内深刻改变教育行业。对于我国这样一个人口众多、教育需求旺盛的大国,AI的应用尤为重要。中国的教育现状包括优质教育资源分布不均、应试教育主导、学生个性化需求得不到充分满足等问题,而AI的兴起正在为这些问题提供全新的解决方案。1.中国教育现状与......