开头的部分讲到了集成电路,I/O、内存、CPU如何配合,对于理解计算机如何输入数据有些形象的画面帮助。
1.计算机是执行输入、运算、输出的机器
2.程序是指令和数据的集合
3.计算机的处理方式有时与人们的思维习惯不同
程序中的数据分为两类,一类是作为指令执行对象的输入数据,一类是从指令的执行结果得到的输出数据。在编程时程序员会为数据赋予名字,称其为“变量”。
所谓计算机的协同工作指的是,输入到一台计算机中的数据,可以通过互联网传送到与这台计算机相连的其他计算机上执行运算,运算所输出的结果再返回给这台计算机。
算法的几个要点
算法中解决问题的步骤是明确且有限的
计算机不靠直觉而是机械地解决问题
了解并应用典型算法
利用计算机的处理速度
使用编程技巧提升程序执行速度
数据库 DBMS
适合存储大规模数据的是关系型数据库(Relational Database)。在关系型数据库中,数据被拆分整理到多张表中,同时表与表之间的关系也可以被记录下来。
数据库的实质虽然是某种数据文件,但是诸位编写的应用程序并不是直接去读写这些数据文件,而是以DBMS作为中介间接地读写。
数据库系统的构成要素包括“数据文件”“DBMS”“应用程序”三部分。在小型系统中,把三个要素全部部署在一台计算机上,称作“独立型系统”。
记录有时也被称为行或元组(Tuple),字段有时也被称为列或属性(Attribute)。
为了在表间建立关系,就必须加入能够反映表与表之间关系的字段,为此所添加的新字段就被称为键(Key)。首先要在各个表中添加一个名为主键(Primary Key)的字段,该字段的值能够唯一地标识表中的一条记录。
当出现多对多关系时,可以在这两张表之间再加入一张表,把多对多关系分解成两个一对多关系。加入的这张表被称作连接表(Link Table)。
当查询数据时,DBMS先在索引表中进行数据的检索和排序,然后再根据位置信息从原来的数据表中把完整的记录取出来。
crud,插入(CREATE)、获取(REFER)、更新(UPDATE)、删除(DELETE)
TCP/IP 网络
“集线器”(Hub)是负责把各台计算机的网线相互连接在一起的集线设备。“路由器”(Router)是负责把公司内的网络和互联网连接起来的设备。
1.安装到每台计算机上的网卡(NIC, Network Interface Card);
2.插到网卡上的网线;
3.把网线汇集起来连接到一处的集线器;
4.用于接入到互联网的路由器。需要注意的是这些硬件的规格只有相互匹配了才能连接在一起。
路由器虽然看起来就是个小盒子,可实际上是一台神奇的计算机。
因为路由器的工作原理就是查看附加到数据上的IP地址中的网络地址部分,只要发现这个数据不是发送给LAN内计算机的,就把它发送到LAN外,即互联网的世界中。
在一台路由器的路由表中,只会记录通往与之相邻的路由器的路径,而并不会记录世界范围内的所有传输路径。
加密
对比由文件整体计算出的信息摘要,可以证明文件的内容有没有被篡改。加密处理过的信息摘要就是数字签名。
每个字符都被分配了一个数字,我们称之为“字符编码”。定义了应该把哪个编码分配给哪个字符的字符编码体系叫作字符集。
合理的密钥应该满足如下条件:长短适中、可以反复使用、可以通过某种通信手段交给接收者,并且通信双方以外的其他人难以用它来解密。