一、了解 SQL1、什么是数据库数据库是以某种组织的方式存储的数据集合。
数据库(database)保存有组织的数据的容器(一个文件或者一组文件)
更准确的来说,数据库软件称为数据库管理系统(DBMS)。通过 DBMS 创建和操作的容器
2、什么是表表 是一种结构化的文件,用来存储某种特定类型的数据。
3、什么是模式模式 关于数据库和表的布局以及特性的信息。
4、列和数据类型表是由列组成。列中存储这表中某种部分的信息。
列 表中的一个字段。所有表都是由一个或多个列组成的。
数据类型 所容许的数据的类型。每个字段都有相应的数据类型。
5、行表中的数据都是按行存储的,保存的记录存储在自己的行内。
行 表中的一个记录。
6、主键主键(又称键码、码) 一列(一组列),其值能够唯一区分表中的每个行。
满足条件:
任意两行都不具有相同的主键值。
每个行都必须具有一个主键值(主键列不允许 null 值)
二、了解 mysql一、客户机-服务器软件MySQL、Oracle 以及 Microsoft SQL Server 等数据库是基于客户机—服务器的数据库
DBMS(数据库管理系统)可以分为两类:
( ...
模块 B:物联网故障维修与运行维护1、Windows 系统维护
一、出于安全考虑,需要对服务器计算机配置规则:“禁止工作站计算机访问本机任何程序或者端口,暂不启用此规则”。
点击自定义
记得露出本地地址
二、在工作站电脑的命令行窗口中,使用命令查看网络连接以及每一个网络接口设备状态。netstat -an
扩展:(1)netstat -b 可以显示在创建网络连接和侦听端口时所涉及的可执行程序
(2)netstat -a 显示所有的有效连接信息列表,包括建立的连接(ESTABLISHED),也包括监听连接请求(LISTENLING)的那些连接
(3)netstat -e 可以显示关于以太网的统计数据,传送字节数、数据包、错误等信息,还可以和-s 结合使用
(4)netstat -f 显示外部地址的完全限定域名
(5)netstat -p 可以显示 proto 指定的协议连接情况
(6)netstat -r 显示路由表
一、芯片组成负责在 内核之外设计部件并生产整个芯片,这些内核之外的部件被称为核外外设或片上外设。如 GPIO、 USART(串口)、I2C、SPI 等都叫做片上外设
芯片内核和外设之间通过各种总线连接,其中主控总线有 8 条,被控总线有 7 条
二、存储器映射给存储器分配地址的过程就称为存储器映射,具体见图 。给存储器再分配一个地址就叫存储器重映射
三、寄存器以功能为名给这个
内存单元取一个别名,这个别名就是我们经常说的寄存器,这个给已经分配好地址的有特定功能的内存单元取别名的过程就叫寄存器映射
寄存器的说明
① 名称
(GPIOx_BSRR)(x=A…I)”是该寄存器名为“GPIOx_BSRR”其中的“x”可以为 A-I,也就是说这个寄存器说明适用于 GPIOA、GPIOB 至 GPIOI,这些 GPIO 端口都有这样的一个寄存器
② 偏移地址
偏移地址是指本寄存器相对于这个外设的基地址的偏移。查到 GPIOA 外设的基地址为 0x4002 0000 ,就可以算出 GPIOA 的这个 GPIOA_BSRR 寄存器的地址为:0x4002 0000+0x18
③ 寄存器位表 ...
野火STM32
未读一、芯片里面有什么1.片上外设
内核之外的部件叫核外外设或片上外设。GPIO,USART、I2C、SPI 都叫做片上外设。
芯片内核和外设之间,有总线连接,主控总线有 8 条,被控总线有 7 条。
2、寄存器映射
给存储器分配地址的过程称为存储器映射。如果是给吹气球再分配一个地址叫存储器重映射。
3、存储器区域功能划分
(1)BLock0 功能划分
(2)Block1 功能划分
(3)Block2 功能划分
二、寄存器以功能为名给这个内存单位取一个别名,这个别名就是我们经常说的寄存器,分配好地址的特定功能的内存单元取别名的过程叫做寄存器映射
如何理解寄存器
1、名称 (GPIOx_BSRR)(x=A…I)
该寄存器名为(GPIOx_BSRR)(x=A…I),其中 x 可以为 A-I,适用于 GPIOA、GPIOB 到 GPIOU
2、偏移地址,寄存器相对这个外设的基地址的编译
寄存器的编译地址是 0x18,可以查到 GPIOA 外设的基地址是 0x4002 0000,GPIOx_BSRR 寄存器地址为,0x4002 0000+0x18
3、寄存器位表
0 ...
一、指针的概念操作系统给每个存储单元分配了一个编号,从 0x00 00 00 00 00 ~0xff ff ff ff 称之为内存
指针变量:是变量也是指针变量,这个变量用来存放一个地址编号。在 32 位系统下,有 4 个字节
注:
1、无论声明类型的地址,都有存储单元的编号,在 32 位下都是 4 个总控二。所以 任何类型的指针变量都是 4 个字节
2、对应类型的指针变量,只能存放对应类型的变量地址
比如:整形的指针变量,就是存放整型变量的地址
扩展:
字符变量 char ch; ch 占一个字节,它有一个地址编号,这个地址编号就是 ch 的地址整型变量 int a; a 占四个字节,占有四个字节的存储单位,有四个地址编号
二、指针的定义方法1、简单指针
数据类型 * 指针变量名
12int * P;//定义一个指针变量P
2、指针的运算符
& 取地址 :获取一个变量的地址
*取值:标识作用
12345678910#include <stdio.h>int main(){ int a = 100; int * p;//指针变 ...
一、C 语言编译过程预处理、编译、汇编链接
gcc -E hello.c -o hello.i 1、预处理
gcc -S hello.i –o hello.s 2、编译
gcc -c hello.s -o hello.o 3、汇编
gcc hello.o -o hello_elf 4、链接
1、预编译
将.c 的头文件、宏展开
生成.i 文件
2、编译
将预处理的.i 文件生成 .s 汇编文件
3、汇编
将.s 汇编文件生成.o 目标文件
4、链接
.o 文件链接成目标文件
二、include#include<> 用尖括号包括头文件,在系统指定的路径找到头文件
#include”” 用双引号包括头文件,先在当前目录下找到头文件,找不到再系统指定的路径下找
三、define定义 宏用 define
1、不带参数的宏123#define PI 3.14//终止宏的定义 定义#undef PI
2、带参宏#define S(a,b) a*b
注意带参宏的形参 ab 没有类名
S(2,4)在预处理代替成字符串的形参 2 * 4
123456789#includ ...
一、函数的概念函数是 c 语言的功能单位,实现一个功能可以封装一个函数来实现。
定义函数的时候一切以功能为目的,根据功能去定函数的参数和返回值。
二、函数的分类1、定义角度分类1、库函数 2、自定义函数 3、系统调用
2、参数角度分类1、有参函数
函数有形参,可以是一个,也可以是多个,类型随便
例如:
123456int fun(int a.float b.double c){}int max(int x,int y){}
2、无参函数
函数没有参数,在形参列表的位置写 void 或者不写
123456int fun(void){}int fun(){}
3、返回值角度分类
(1)带返回值的函数
在定义函数的时候,必须带有返回值类型,在函数题,必须有 return,没有返回值类型,默认返回值整形
例如:
12345char fun() //定义一个返回字符数据的函数{ char b = 'a'; return b;}
123fun(){ retur ...
一、数组的概念数组是若干个相同类型的变量在内存中有序存储的集合。
概念理解:
数组用于存储一组数据
数组里面存储的数据类型必须是相同的
数组在内存中会开辟一块连续的空间
int a[10];//定义了一个整型的数组 a,a 是数组的名字,数组中有 10 个元素,每个元素的类型都是 int 类型,而且在内存中连续存储。
这十个元素分别是 a[0] a[1] …. a[9]
a[0]~a[9]在内存中连续的顺序存储
二、数组的分类1)字符数组
即若干个字符变量的集合,数组中的每个元素都是字符型的变量
char s[10]; s[0],s[1]….s[9];
2)短整型的数组
short int a[10]; a[0] ,a[9]; a[0]=4;a[9]=8;
3)整型的数组
int a[10]; a[0] a[9]; a[0]=3;a[0]=6;
4) 长整型的数组
lont int a[5];
5)浮点型的数组(单、双)
float a[6]; a[4]=3.14f;
double a[8]; a[7]=3 ...
千锋C语言
未读1.2 数据类型1.2.1 基本类型
char 、short int 、int、long int、float、double
1.2.2 构造类型
由若干个相同或不同类型数据构成的集合,这种数据类型被称为构造类型
1int a[10];
格式化输出字符:
%d 十进制有符号整数
%ld 十进制 long 有符号整数
%u 十进制无符号整数
%o 以八进制表示的整数
%x 以十六进制表示的整数
%f float 型浮点数
%lf double 型浮点数
%e 指数形式的浮点数
%c 单个字符
%s 字符串
%p 指针的值
特殊应用:
%3d 要求宽度为 3 位,如果不足 3 位,前面空格补齐;如果足够 3 位,此语句无效
%03d 要求宽度为 3 位,如果不足 3 位,前面 0 补齐;如果足够 3 位,此语句无效
%-3d 要求宽度为 3 位,如果不足 3 位,后面空格补齐;如果足够 3 位,此语句无效
%.2f 小数点后只保留 2 位
1.2.3 类型转换
自动转换:
遵循一定的规则,由编译系统自动完成.
强制类型转换:
把表达式的运算结果强制转换成所需的数据类型
自动转换的原则:
1 ...