第一章: 计算机的三大原则
- 计算机是执行输入、运算、输出的机器。(硬件基础)
- 程序时指令和数据的集合。(软件)
- 计算机的处理方式有时和人们的思维不同。
第三章:手工汇编
- 1:机器语言是由二进制数字构成的程序, CPU 可以直接对其解释、执行。
- 不仅是汇编语言、C语言、Java 等编程语言,也都需要先转换成机器语言才能被执行,
- 机器语言又称为 “原生代码“(Native Code)
- 2: 通常把标识内存 或 I/O 中存储单元的数字称为是: 地址 (Address)
- 内存中有多个数据存储单元。
- 计算机中从零 开始的编号标识每个存储单元,这些编号就是地址(Address)
- I/O 中的寄存器也可以用地址来进行标识。
- 哪个寄存器对一个哪个地址, 取决于 CPU 和 I/O 之间的布线方式。
- 3: CPU 中的标志寄存器(Flags Register)
- 一旦执行了 算术运算、逻辑运算、比较运算等指令之后,标志寄存器不会存放运算结果的值,而是把运算后的某些状态存储起来。
- 4: CPU (处理器) 信息
- CPU 的种类
- 可以使用哪种机器语言取决于 CPU 的种类。
- 机器语言就是用 0 和 1 书写 的二进制语言。
- 时钟信号的频率
- 时钟信号是在 0 和 1 两个数之间反复变换的电信号。
- 时钟信号频率, 就是由是时钟发送给 CPU 的电信号的频率。
- 微型计算机使用 的是 : 2.5 MHZ 的时钟信号。
- CPU 的种类
- 5:内存信息
- 地址空间
- 每个地址空间都标识着一个内存中的数据存储单元,而这些地址所构成的范围就是内存的地址空间。
- 每个地址中可以存储的比特的信息
- 在内存中, 每个地址的功能都一样, 即可用存储指令又可用于存储数据。
- 地址空间
- 6: I/O 信息
- I/O 的种类
- 就是连接着计算机和周边设备的 I/O 的种类
- I/O 的种类
第六章:数据结构
-
1:算法:处理问题的步骤。
-
2:数据结构:作为处理对象的数据的排列方式。
-
3:集成电路:(Integrated Circuit)计算机所处理的数据都存储在被称为内存的IC
-
4: 在个人的计算机中, 内存内部被分割成了若干个数据存储单元, 每个单元可以存储 8 比特的数据(8 比特 = 1 字节)
-
5:数据是数组结构的基础, 之所以这么说是因为数组反映了内存的物理结构。
- 在内存中分布的空间是连续的。
-
for (int i = 0; i < 10; i++) 像这样的 i 变量记录循环次数的变量称为循环计数器(Loop Counter) 数组之所以方便是因为, 循环计数器中的数值可以和数组的索引对应起来。
-
常用的数据结构
- 栈(stack)
- LIFO : (last in first out ) 先进后出
- 栈的实现:使用数组、栈顶指针、入栈函数、出栈函数。
- 队列(queue)
- FIFO: (first in first out) 先进先出
- 队列 的实现:使用任意大小的数组、两个变量、两个函数
- 变量:一个在队首、一个在队尾的索引变量。
- 函数:一个插入对列的函数,一个移除队列的函数。
- 链表 (list)
- 在结构中添加一个指针变量:
- 在 C 语言中, 把存储着地址的变量称为 “指针”。
- 单向链表
- 双向链表
- 在结构中添加一个指针变量:
- 二叉树
- 主要用于实现查找数据的算法。
- 完全二叉树
- 红黑树
- 栈(stack)
第七章:数据库
- 1: 表(Table): 被整理成表格形式的数据。
- 2: DBMS: (Database Management System): 数据库管理系统。
- 3: 键:用于设定表和表之间的关系(Relationship)
- 每个值都能够唯一标识一条记录的ID(identification) 字段称为:主键(primary key )。
- 为了在表和表之间建立关系而在表中添加的、其他表的主键的字段称为 外键。
- 4: 索引:是用于提升数据检索速度的机制。
- 提升数据检索、和排序速度的内部机制。
- 索引表:是一种数据结构, 存储着字段的值以及字段对应的记录的位置。
- 一旦设置了索引表之后, 每次向表中插入数据是 , DBMS 都必须更新索引表。
- 因此,对那些频繁地进行检索和排序的字段,才需要设置索引。
- 一旦设置了索引表之后, 每次向表中插入数据是 , DBMS 都必须更新索引表。
- 5: SQL : (Structured Query Language) :结构化查询语言。
- 6:数据库 (database): 数据(data)的基地(base)
- 关系型数据库:适合存储大规模的数据。(Relational Database)
- 7:数据库系统主要包括三个部分:
- 数据文件
- DBMS
- 应用程序
- 在小型系统中,把三个要素部署到一台计算机中, 称为“独立型系统”。
- 把数据文件部署到一台计算机中,并且是数据文件被部署了 DBMS 和应用程序的多态计算机中, 这样称为“文件共享型系统”
- 8: 连接表(Link Table)
- 表中出现多对多的关系中,可以在两个表中再添加一张表。把表分解成两个一对多的关系。
- 9:数据库的设计:
- 只要通过拆表实现规范化、设置了主键和外键、确保没有多对多的关系。根据需要设置了参照完整性和索引。数据库的设计就告一段落。
- 下一个阶段就是,利用数据库中到的数据编写数据库的应用程序阶段。
- 数据库设计:优先设计数据库, 然后再设计,用户界面。
- 10:在 SQL 中的一个高级功能 — 事务
- 在结构化查询语句中的三个语句的应用
- begin transaction (开启事务)
- commit (提交事务)
- roll back (事务回滚): 如果执行的语句发生问题时, 把数据库中的数据会到最初的状态。
- 在结构化查询语句中的三个语句的应用
第九章: TCP / IP 网络
-
1: LAN: Local Area Network (局域网)
- 像这样部署在一间办公室内的网络称为 局域网
-
2: WAN : wide Area Network ( 广域网)
- 互联网 将企业和企业联结起来大规模的网络称为广域网。
-
3: TCP / IP : Transmission Control Protocol / internet Protocol (传输控制协议和网际协议)
- IP地址:是一个32位的比特的整数,每8个比特为一组, 组间用"."分割, 分成4段。
- 8比特位换成十进制之后的范围是 0-255
- 某公司中的IP 有两部分组成 : 网络地址 + 主机地址
- AAA.BBB.CCC.XXX
- AAA.BBB.CCC.YYY
- 子网掩码(subnet mask)
- 作用:表示出32比特位的IP 地址中,区分网络地址和主机地址。
- 子网掩码中 :二进制表示中,
- 值为1 的那些对应着 IP 地址中网路地址,
- 后面值为 0 那些为对应着主机地址。
-
4: DCHP (Dynamic Host Configuration Protocol): (动态主机设置协议)
- IP地址和子网掩码都是在软件上进行参数的设置。
- 在 LAN 的搭建中, 使用了一台装有 linux 的计算机充当 DCHP 服务器的角色。
- DCHP 服务器中记录着可以被分配到 LAN 内计算机的 IP 地址范围和 子网掩码。
-
5: MAC : (Media Access Control) 就是能够表示网卡的编号。
- 可以用来指定电信号的接受者。
- MAC 的 地址由制造厂商的编号和产品编号两部分组成。
- 可以 用 ipconfig /all 中命令进行查看
- MAC : 是十六进制数(每个数占 8 比特位)
- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-R9ySG9ii-1583038184866)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200214125207220.png)]
-
6: 集线器(HUB): 是负责把各台计算机的网线相互连接在一起的集线设备。
-
7: 路由器(Router): 是负责把公司内的网络互联网连接起来的设备。
- 路由器负责将 LAN 连接到 WAN 中
- 路由器的工作原理:
- 就是查看附加到数据上的 IP 地址中的网络地址部分, 只要发现数据不是发给 内网 LAN 内的计算机, 就把它发送到 LAN 外, 即是互联网世界中。
- 路由器看起来是个小盒子, 实际上是一个计算机。分布在世界各地的 LAN 中的路由器互相交换着信息,互联网正式由于这种信息的交换才得以联通。这种信心称为“路由表”
- 路由表有五部分组成:
- Network Destination : 发送到目的地
- Netmask : 子网掩码
- Gateway : 网关
- Interface : 接口
- metric :
- 这一列记录着 路径的权重, 这个值有某种算法决定, 比如数据传输过程中经过的路由器的数量。
- 如果遇到的多条候选路径都可以通往目的地的情况, 路由器就会选择 Metiric 值较小的那条路径。
- 如果发送数据的目的地就在 LAN 中, 则不需要接发数据而无需路由器进行转发。
- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4utvNxfb-1583038184868)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20200214132219101.png)]
-
8: 组建公司内网时, 用到的元件
- 安装到每台计算机中的网卡(NIC : Network Interface Card)
- 插到网卡上的网线
- 把网线汇集到一起的连接一处的集线器
- 用于连接到互联网的路由器
- 网卡一旦确定, 就以为这网线、集线器、路由器的规格确定了。
-
9: 以太网使用的是一种略显粗糙的 LAN内的计算机。
- 在以太网中的计算机都需要确定一件事,在网线中有没有其他的计算机正在传输信号,确保网线中没有没有人在占用着网络, 谁抢到网线的使用权,谁就先发送。
-
10: 万一遇到多台计算机同时都想发送电信号的 情况, 只需要让这些计算机等待一段长度随机时间后再重新发送相同的电信号即可。这套机制叫做 CSMA/CD (Carrier Sense Multiple Access with Carrier Detection) : 带冲突监测的载波监听多路访问。
- 载波监听:是指这套加测机制会监听(Sense)表示网络中是否正在使用的电信号(Carrier).
- 多路复用:(multiple Access)指的是多个设备可以同时访问传输介质 。
- 带冲突监测( Collision Detection) : 则表示这套机制会去监测(Detection)因同一时刻的传输而导致电信号冲突 (Collision)
-
11: DNS (Domain Name System ) : 域名系统
- 可以将主机名解析成 IP地址。
-
12: FQDN (Fully Qualified Domain Name) : 完整限定域名
- 每个主机都有一个主机名, 每一个 LAN 都有一个 域名
- 使用 hostname: 命令查看:主机名
- 通常这种有主机名和域名组合起来的名字称作 FQDN
-
13: ARP (Address Resolution Protocol) : 地址解析协议
-
在互联网 中到处传输都是附带了 IP 地址的数据。
-
能够标识作为数据最终接受者的网卡的, 还是 MAC 地址。
-
于是计算机中就加入了一种程序, 用于实现 由 IP 地址到 MAC 地址的转换, 这种功能就称为 : ARP
-
ARP :
- 广播(Broadcast): 通常由 ARP 同时向 LAN 中所有的计算机发送数据的过程。
- 如果有要查询的 MAC 就会进行回复. ARP 的工做流程就会自动进行。
- ARP 缓存表:
- 为了查询 MAC 每次都要进行广播,那么查询的效率就会降低。
- ARP 提供了缓存功能, 经过一轮的查询之后, 就会把得到的 MAC 地址和 ip地址对应关系缓存起来(临时保存在内存中)
- 使用
arp -a
的命令就可以进行查看 MAC 和 IP 对应的缓存关系。
-
-
14: 硬件上发生数据是: 网卡(Net Card)
第十章: 加密数据
- 1: 文本数据可以由各种各样的字符构成。其中每个字符都被分配了一个数字, 我们称之为 “字符编码”。
- 定义了应该吧哪个编码分配给哪个字符的字符编码体系叫做:字符集
- 字符集 分为: ASCII 字符集, GBK 字符集, Unicode 字符集。
第十一章: XML
-
1: XML (Extensible Markup Language) : 可扩展标记语言。
- XML : 称为是元语言。
- 通过定义新的标签种类可以确定一门新的标记语言。
- 使用于定义任意标记语言的元语言。
- XML : 称为是元语言。
-
2: HTML : (hypertext Markup Language) : 是用于编写网页的语言,
- 通常把通过添加标签的数据赋予意义的行为成为 “ 标记 ”。
- 这种给数据赋予意义 的行为定义规则的语言就是 “标记语言”
-
3: DOM (Document Object Model ) : 文档对象模型。
-
4: W3C (world wide web consortium) : 万维联盟。
- 该组织制定了一系列的标准。
- 有定义了新的网页标记语言
- XHTML : (Extensible Hypertext Markup Language) : 可扩展的超文本标记语言。
-
5: CSV (Comma separated Value) : 逗号分隔符
- 作为通用的数据交换格式沿用至今。
- 在 CSV 中只记录了信息本身, 并没有为各个信息赋予意义。
-
6: 有效的 XML 文档(valid XML document)
-
所谓的有效的 XML 文档是指在 XML 文档中写有 DTD (Document Type Definition , 文件描述类型 )的信息。
-
其实完整的 XML 包括三部分
- XML 声明: 就是写在 XML 文档开头的。
- XML 实例: 是文档中通过标签被标记过的部分。
- DTD : 定义了 XML 实例的结构。
- 通过 DTD 就可以严格地检查 XML 实例的内容是否有效。
声明 <?xml version = "1.0" encoding = "shift_JIS"?> 实例结构 <!DOCUMENT mydata[ <!ELEMENT mydata (company+)> <!ElEMENT company (name, adress, employee)> <!ELEMENT name (#PCDATA)> <!ELEMENT address (#PCDATA)> <!ELEMENT employee(#PCDATA)> ]> 实例 <mydata> <company> <name>wang </name> <address> wangjing</address> <employee> 100</employee> </company> </mydata>
-
-
第十二章: SE 负责监管计算机系统的构建
- 1: SE (System Engineer) :系统工程师
- 指的是在进行业务的信息化时, 负责调查、分析业务内容, 确定计算机系统的基础设计及其详细规格的技术人员。
- 同时 SE 也负责系统开发的项目管理和软件的开发管理、维护管理工作。
- 由于主要的工作时基础设计, 所以不同的编写程序的程序员, SE 需要具备从硬件结构、软件的构建方法乃至横跨整个业务的广泛知识以及项目管理的经验。
- 2: IT (information Technology) : 信息技术
SE
主要的工作内容:
调查、分析客户的业务内容
计算机系统的基本设计
确定计算机系统的规格
估算开发费用和开发周期
项目管理
软件开发管理
计算机系统的维护管理
所需要的技能:
倾听需求
书写策划书的能力
硬件
软件
网络
数据库
管理能力
-----------------------------------------------------------------------------------
程序员
工作内容:
制作软件(编程)
所需要的技能:
编程语言
算法和数据结构
关于开发工具和程序组件的知识
- 3:有关计算机系统开发过程的规范: “瀑布模型”
- 开始
- 需求分析
- 系统策划文档, 系统功能需求规格文档
- 外部设计
- 外部设计文档
- 从用户角度看到的东西
- 内部设计
- 内部设计文档
- 从开发者的角度看到的东西
- 程序设计
- 程序设计文档
- 编码实现
- 模块设计文档、测试计划文档
- 测试
- 测试报告
- 部署、维护
- 部署手册、维护手册
- 部署:
- 指的是将计算机系统引进(安装)到客户的环境中,让客户使用。
- 维护
- 指的是定期的检查计算机是否能正常工作,根据需要进行文件备份户根据应用场景的变化对系进行部分改造。
- 需求分析
- 目标
- 每一个阶段都要写:文档(报告)并进行审核。
- 开始
总结
- 专家也好普通人也好, 只有对社会做出了贡献才能有成就感, 才会觉得工作有意义。
- 我们让计算机技术服务于社会。如果有这样的决心,就应该能作为一生的事业和计算机愉快的相处。